GET /api/v2/buyer/campaigns
Returns campaigns in a compact summary shape — identity, mode, management
state, status, flight dates, flattened budget, and product count. Filter by
advertiser, status, mode, or management state. Use
Get campaign for the full resource.
The list defaults to the live working set: every non-terminal status
(ACTIVE, DRAFT, PAUSED) across both managed campaigns and tracked
mirrors from connected provider accounts — connect a provider account and your
live spend there is visible immediately. Completed, canceled, and archived
campaigns require an explicit status filter (or status=ALL). A subscribed account may mirror thousands of historical
campaigns — browse that scale through the
provider-account rollup, not the
ambient list.
This endpoint normally requires a Buyer Account. A Seller Account in
the Media Company V3 preview
may use it only with a positive advertiserId that has an active own-supply
binding to the Seller Account’s own Storefront, in either the sandbox or live
environment. A live-environment Advertiser additionally requires the Seller
Account to be enrolled in amc-campaign-management. The response removes any
Campaign that is not confined to that Storefront. Campaign detail, mutations,
and reporting remain unavailable to the Seller Account through Buyer REST.
Request
Parameters
Response
status filter (or status=ALL).
Each entry is a summary, not the full resource — mediaBuys, audiences, budget
allocation fields, and creativeFormats are omitted. directed is present only
for mode: "directed"; use its mirrorState and lastSyncedAt for metadata
freshness, not delivery freshness. performanceConfig is present when the
campaign has optimization goals, in the same shape as
Get campaign, so a list row shows each
goal and its target without a second read. total is the count across all
pages.
Results use offset pagination (take / skip); see
Pagination.
Campaigns the default status filter left out
When the request sends nostatus and the default filter leaves out
campaigns that match every other filter, the response adds
defaultStatusFilter. It says how many campaigns were left out, by status,
and how to include them:
defaultStatusFilter means no campaign was
left out because of its status. Archived campaigns are counted only when the
request also sets includeArchived=true, because status=ALL alone does not
return them. The field is never present when the request sends status.
The advertiser summary’s campaign count includes completed and canceled
campaigns, so it can be higher than the number of campaigns this list returns
by default. Use defaultStatusFilter to reconcile the two.
Errors
400 VALIDATION_ERROR— invalidstatusormodevalue.403 CUSTOMER_ROLE_DENIED— the account is neither a Buyer Account nor a Seller Account listing Campaigns for a bound own-supply Advertiser.403 OWN_SUPPLY_SCOPE_REQUIRED— the Seller compatibility request omittedadvertiserId, that Advertiser has no active own-Storefront binding, or the Advertiser is in the live environment and the Seller Account is not enrolled inamc-campaign-management.
Related
Get campaign
Full resource for one campaign
Create campaign
Open a new DRAFT campaign
Pagination
Offset-based list paging
Campaign overview
Fields, lifecycle, and concepts