This is a new major release, which diverges in behavior from the previous one.
**Please review these changes:**
- **New Daily Budget Limits**: We changed the logic around ads delivery which impacts the interpretation of the daily ad budget limits. Starting from v2.7, you may be charged up to **125%** of your daily budget. For example, if your daily budget is $10, you may be charged up to $12.50. However, your weekly spend will NOT exceed 7 times the daily amount, or $70 in this example. We will prorate this for partial weeks. More details [Ad Set Budget](/docs/marketing-api/adset/budget-limits/).
- **Lifetime Budgets and New Daily Budgets**: Also, starting with v2.7, you can no longer edit ad sets created with the new daily budget controls to use lifetime budgets. Similarly you can no longer edit lifetime budgets to use the new daily budget controls.
- **Ad Placements Update**: We have improvements to our design of `placement`, so that advertisers can more easily identify and select placement options that will serve them best. Instead of having platform as the only dimension, advertisers can select placements across different dimensions, such as device type including `desktop` or `mobile`, publisher such as `facebook`, `instagram`, or `audience_network`, and placements of each publisher. Only Facebook has multiple placements currently. The field `page_types` will still be included in read results, but cannot be used to create or update placements in v2.7. More details in [Targeting Spec](/docs/marketing-api/targeting-specs).
- **Insights Placement Updates**: As a related change, on the `/insights` endpoints, we’ll introduce two new breakdowns options: `publisher_platform` and `platform_position`. Along with the existing `impression_device` breakdown, you can get performance metrics with these placement dimensions. See [Insights Breakdowns](/docs/marketing-api/insights/breakdowns/) for more details.
- **Ad Creative Update**: With 2.7 `object_story_id` will be `null` for an ad creative created with an `object_story_spec`. The `effective_object_story_id` will always be the `object_story_id` regardless of `object_story_spec`. More details in [Ad Creative](/docs/marketing-api/reference/ad-creative).
- **Insights Integer Field**: For Insights API, integer values were too big and overflowed with int32. We changed all int32 field values into numeric strings to keep consistent with other Marketing API fields with currency values. For v2.7 onward, numeric values in int32 will be quoted in responses. For v2.5 for backwards compatibility, numeric values in int32 will be shown as a number. More details in [Ads Insights](/docs/marketing-api/reference/ads-insights).