Skip to main content
POST /api/v2/buyer/campaigns/:id/reactivate Brings a PAUSED campaign back to ACTIVE. This is the only way to resume a paused campaign. The resume is sent to every media buy the campaign pause stopped; a media buy you paused on its own stays paused. Media buys return to ACTIVE (post-flight if their dates allow). If any of those media buys does not resume, the call returns an error and lists each buy’s outcome. The campaign shows ACTIVE as soon as any of its media buys is delivering again, and stays PAUSED when none resumed.
reactivate and execute are distinct endpoints. execute launches a DRAFT or COMPLETED campaign for the first time (or relaunches it). reactivate resumes a PAUSED campaign.

Request

No request body.

Parameters

Response

  • previousStatus / newStatus — campaign status before and after the call.
  • successCount / failureCount — how many media buys resumed, and how many did not. A 200 response always has failureCount: 0.
  • mediaBuyResults — per-media-buy outcome. Each entry includes mediaBuyId, name, previousStatus, and success.

When some media buys do not resume

If the seller of any media buy refuses, fails, or does not confirm the resume, or the storefront queues the resume for seller approval, the call returns 503 SERVICE_UNAVAILABLE:
  • The media buys that resumed are ACTIVE and delivering.
  • The media buys that did not resume are still PAUSED.
  • The campaign shows ACTIVE if at least one media buy resumed, because the campaign is delivering again, and stays PAUSED if none did.
  • Apostra’s operations team is alerted.
The error’s details carry the per-buy results and the campaign status:
reason is campaign_reactivate_partial when some buys resumed and campaign_reactivate_failed when none did. To finish resuming, use reactivate media buy on each buy that is still PAUSED. Calling reactivate on the campaign again works only while the campaign itself is still PAUSED.

When a seller is still applying the resume

Some sellers accept a resume and apply it later. Those buys stay PAUSED for now, so the call still returns 503, but they need no retry:
  • Their entries in mediaBuyResults have success: false and a resumeRequestedAt timestamp, and details.resumeRequestedCount counts them.
  • When they are the only buys outstanding, reason is campaign_reactivate_requested.
  • Each buy, and the campaign, becomes ACTIVE on its own once its seller reports it delivering.

Campaign status always follows delivery

A campaign shows PAUSED only when every one of its media buys is paused. If a campaign was stored as PAUSED while one of its media buys kept delivering, for example from a pause made before this rule, Apostra corrects the campaign to ACTIVE and alerts its operations team. This correction changes only what the campaign shows. It never pauses or resumes a media buy.

Errors

See Errors for the full error shape and recovery semantics.

Pause campaign

Halt spend across all media buys

Execute campaign

Launch a DRAFT or COMPLETED campaign

Media buy status

Poll live ADCP status

Campaign overview

The campaign object and lifecycle