POST /api/v2/buyer/campaigns/:id/execute
Executes any DRAFT media buys on the campaign, submitting them to ADCP. On a freshly-created campaign the call transitions DRAFT → ACTIVE. You can also call it on an ACTIVE or PAUSED campaign to execute newly-added media buys without affecting the rest of the campaign.
execute submits DRAFT media buys to ADCP. It does not resume a PAUSED campaign — reactivate is the only way to do that. They are different endpoints. COMPLETED and ARCHIVED campaigns cannot be executed.Request
Parameters
| Field | Type | Required | Notes |
|---|---|---|---|
id | string | Yes | Campaign ID (path parameter). Must be in DRAFT, ACTIVE, or PAUSED status. COMPLETED and ARCHIVED campaigns cannot be executed. |
debug | boolean | No | Defaults to false. When true, surfaces the raw ADCP request/response and A2A debug logs in each error entry. |
Response
success is false and errors[] carries one entry per failure:
previousStatus/newStatus— campaign status before and after the call.errors[]—{ mediaBuyId, salesAgentId, message }per failed submission. Withdebug: true, each entry also includes the full ADCP request/response payloads.
Errors
| Code | When |
|---|---|
VALIDATION_ERROR | Campaign is in COMPLETED or ARCHIVED status (non-executable), or has no selected products. |
NOT_FOUND | Campaign ID does not exist for the authenticated customer. |
Related
Pause campaign
Halt spend across all media buys
Reactivate campaign
Resume a PAUSED campaign back to ACTIVE
Media buy status
Poll live ADCP status after execute
Campaign overview
The campaign object and lifecycle