Update media buy
Partially update a single media buy, resolved top-level by mediaBuyId — the owning campaign is resolved server-side, consistent with GET /media-buys/. Rejected outright (not a warning) when it would violate a campaign invariant: currency (a product’s replacement pricing option settles in a different currency than this buy), budget headroom (the update would exceed the campaign’s remaining all-in budget), or mode compatibility (the campaign is directed and has no platform-managed update path). A flight date outside the campaign’s current window is not a failure — the campaign flight is widened to cover it and a warning is returned.
Authorizations
API key or access token
Path Parameters
Buyer media buy ID
1"mb_ETBn4gJ9Wu"
Body
Partial update for a single media buy, resolved top-level by mediaBuyId. Rejected outright (not warned) when it would violate a campaign invariant: currency (a product's replacement pricing option settles in a different currency), budget headroom (the update would exceed the campaign's remaining all-in budget), or mode compatibility (the campaign is directed — its mirrored media buy has no platform-managed update path).
Updated media buy name
1 - 255Per-package updates (for media buys with deployed packages)
Product updates — additive (existing products not listed are preserved).
"asap" or ISO 8601 date-time. A value earlier than the campaign's current flight start does not fail the request — it is applied and surfaced as a warning, and the campaign flight is widened to cover it.
ISO 8601 date-time. A value later than the campaign's current flight end does not fail the request — it is applied and surfaced as a warning, and the campaign flight is widened to cover it.
Replace media-buy-level optimization goals; applied to every package at execution time. Pass an empty array to clear all goals.
- Option 1
- Option 2
- Option 3
Explicit creative IDs to attach to this media buy. Pass an empty array to clear all creatives.
1Reason for the update (stored with the new version)
1000Response
Update media buy
The updated media buy (why-visibility fields included) plus any non-blocking warnings.
A single media buy with its why-visibility annotation (pendingReason, errorCode, forwardedAt, buyerReference). Use get_campaign for packages, products, and delivery.
Non-blocking notices about this update, e.g. a flight date fell outside the campaign window (the campaign window was widened to cover it, rather than failing the request).