Media plans organize campaigns into strategic groups with shared budgets and timelines. Each plan defines a total budget, budget type (Custom, Impression-based, or Click-based), flight dates, and optimization goals (ROAS, CPA, eCPM) for coordinated media buying. Plans contain experience configurations that allocate budget portions to specific advertising channels — each experience config specifies its budget allocation, base bid, and auto-bid settings. Campaigns attach to media plans through experience configurations, with constraints enforced: campaign budget type must match the plan's type, and campaign flight dates must fall within the plan's date range (unless always-on). Only one experience config can be marked as primary for non-reservation experiences. Plans can optionally link to insertion orders for financial reconciliation.
Endpoints
| Method | Path | Description |
|---|---|---|
| GET | /v2/member_groups/{memberGroupId}/advertisers/{advertiserId}/media_plan | Returns all media plans for the specified member group and advertiser, with campaign_count and ad_group_count per experience |
| GET | /v2/member_groups/{memberGroupId}/advertisers/{advertiserId}/media_plan/{mediaPlanId} | Returns a single media plan including nested campaign_configs and ad_group_configs per experience |
| POST | /v1/member_groups/{memberGroupId}/advertisers/{advertiserId}/media_plan | Create a new media plan with specified configurations. |
| DEL | /v1/member_groups/{memberGroupId}/advertisers/{advertiserId}/media_plan/{mediaPlanId} | Delete a media plan |
| POST | /v1/member_groups/{memberGroupId}/advertisers/{advertiserId}/media_plan/{mediaPlanId}/assign_campaigns | Add an existing campaign to a media plan by creating a new experience configuration. |
| GET | /v1/member_groups/{memberGroupId}/advertisers/{advertiserId}/media_plan/{mediaPlanId}/budget_reallocations | Returns the history of automated budget reallocations between campaigns within a media plan, grouped by execution |
| GET | /v1/member_groups/{memberGroupId}/advertisers/{advertiserId}/media_plan/{mediaPlanId}/workflow_config | Returns the workflow configuration for the specified media plan after merging the configurations from all associated experiences |
| POST | /v1/member_groups/{memberGroupId}/advertisers/{advertiserId}/media_plan/{media_plan_id}/submit | Creates all child campaigns and ad groups for the media plan |
| PATCH | /v2/member_groups/{memberGroupId}/advertisers/{advertiserId}/media_plan/{mediaPlanId} | Update a media plan |
| GET | /v2/member_groups/{memberGroupId}/advertisers/{advertiserId}/media_plan/{mediaPlanId}/history | Returns audit history for a media plan, its experience configs, campaign configs, and ad group configs |

