POST /api/v2/buyer/advertisers
Creates an advertiser — the top-level account that owns campaigns, creatives, audiences, and linked partner accounts. Confirm the account-level operator in Buyer Setup first. Provide a name and brand domain; Apostra resolves brand identity from /.well-known/brand.json, the AdCP registry, or Brandfetch enrichment. Media partner connections are managed separately in Media Partners.
To classify an advertiser with buyer-owned labels, use the V3 MCP
save_advertiser tool after this REST create. Labels are not a REST field; see
Dimensions and labels.
To change an advertiser after you create it, open Advertiser settings from
Settings on its row on the
Advertisers Page. See
Update advertiser.
Request
Idempotency-Key (16–255 letters, numbers, underscores, periods, colons, or hyphens) when a create may be retried. Repeating the same validated request and key within 24 hours returns the original advertiser with 201 and Idempotency-Replayed: true; it does not create a duplicate. Reusing the key with a different request returns 409 CONFLICT. Keys are isolated to your customer account.
Parameters
Response
utmConfig echoes the parameters the request set. A request without
utmConfig returns an advertiser with no click-URL parameters.
Returns 201 with the full advertiser resource. id is the stable identifier you pass to every sub-resource operation. If the brand resolves through enrichment rather than an official registry entry, the response carries a brandWarning. If no registry or enrichment data is found, the first create returns 400; after confirming the advertiser name and brand domain, retry with saveBrand: true to register that brand identity.
Errors
400 VALIDATION_ERROR— missingnameorbrand, or an unsupportedprimaryCurrency. The same code, on fieldbrandCountries, means another active advertiser in your account already holds this brand in an overlapping country. The message names that advertiser and suggests countries outside the overlap; an advertiser with no countries overlaps every country, and currency does not separate the two. See One brand, one market.409 CONFLICT— theIdempotency-Keywas already used with a different request, is outside its replay window, or the original request is still in flight.
Related
Advertiser tasks
All advertiser operations
Advertiser overview
Fields, lifecycle, and concepts
List available accounts
Find accounts to link
Update advertiser
Change defaults later