---
title: "Changes to Update ad groups"
method: PATCH
path: "/ad_accounts/{ad_account_id}/ad_groups"
---

# Changes to Update ad groups

`PATCH /ad_accounts/{ad_account_id}/ad_groups`

> Every recorded change to this endpoint, newest first.

## Timeline

Changed in 14 of 29 revisions.

- **2026-06-04** (v5) `b698c180678a` — 1 breaking, 1 warning, 44 info
- **2025-12-11** (v5) `537bde5a50b1` — 2 breaking
- **2025-12-10** (v5) `6768e3ca1ffa` — 4 info
- **2025-08-12** (v5) `8fb7ab040159` — 2 info
- **2025-07-16** (v5) `43134ca41f18` — 2 info
- **2025-04-04** (v5) `10f9eba4ad97` — 4 warning, 8 info
- **2024-04-23** (v5) `f9321315766f` — 1 breaking, 2 warning, 4 info
- **2024-02-08** (v5) `7529b464d5cb` — 4 warning, 4 info
- **2023-08-17** (v5) `0ff12596bafd` — 1 warning, 1 info
- **2023-05-12** (v5) `689b4b267639` — 5 breaking, 27 info
- **2023-02-14** (v5) `be19b77aa78a` — 6 breaking, 1 warning, 4 info
- **2022-11-14** (v5) `e041d7b0cef0` — 1 breaking
- **2022-09-07** (v5) `bd20b6eb152f` — 2 warning, 1 info
- **2022-07-11** (v5) `0d5998752011` — 1 info

## Changes

- **2026-06-04** (v5) `b698c180678a` — 1 breaking, 1 warning, 44 info
  - added the new required request property `items/id`
  - removed `#/components/schemas/AdGroupCommon, subschema #2` from the `items/` request property `allOf` list
  - added the new optional request property `items/auto_targeting_enabled`
  - added the new optional request property `items/bid_in_micro_currency`
  - added the new optional request property `items/bid_multiplier`
  - added the new optional request property `items/bid_strategy_type`
  - added the new optional request property `items/billable_event`
  - added the new optional request property `items/budget_in_micro_currency`
  - added the new optional request property `items/budget_type`
  - added the new optional request property `items/campaign_id`
  - added the new optional request property `items/customer_segment_id`
  - added the new optional request property `items/end_time`
  - added the new optional request property `items/ext_features`
  - added the new optional request property `items/feed_profile_id`
  - added the new optional request property `items/is_creative_optimization`
  - added the new optional request property `items/is_local_inventory`
  - added the new optional request property `items/lifetime_frequency_cap`
  - added the new optional request property `items/local_inventory_radius_in_miles`
  - added the new optional request property `items/name`
  - added the new optional request property `items/optimization_goal_metadata`
  - added the new optional request property `items/pacing_delivery_type`
  - added the new optional request property `items/performance_plus_campaign_settings`
  - added the new optional request property `items/placement_group`
  - added the new optional request property `items/placement_traffic_type`
  - added the new optional request property `items/promotion_application_level`
  - added the new optional request property `items/promotion_id`
  - added the new optional request property `items/promotion_ids`
  - added the new optional request property `items/start_time`
  - added the new optional request property `items/status`
  - added the new optional request property `items/targeting_spec`
  - added the new optional request property `items/targeting_spec_operations`
  - added the new optional request property `items/targeting_template_ids`
  - added the new optional request property `items/tracking_urls`
  - added the non-success response with the status `400`
  - added the non-success response with the status `401`
  - added the non-success response with the status `403`
  - added the non-success response with the status `404`
  - added the non-success response with the status `429`
  - added the optional property `items/items/data/auto_targeting_enabled` to the response with the `200` status
  - added the optional property `items/items/data/bid_multiplier` to the response with the `200` status
  - …6 more
- **2025-12-11** (v5) `537bde5a50b1` — 2 breaking
  - the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AUDIENCE_EXCLUDE/items/` response property's minItems was decreased from `100` to `0` for the response status `200`
  - the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AUDIENCE_INCLUDE/items/` response property's minItems was decreased from `100` to `0` for the response status `200`
- **2025-12-10** (v5) `6768e3ca1ffa` — 4 info
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/MAXIMUM_AGE`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/MINIMUM_AGE`
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/MAXIMUM_AGE` to the response with the `200` status
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/MINIMUM_AGE` to the response with the `200` status
- **2025-08-12** (v5) `8fb7ab040159` — 2 info
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/optimization_goal_metadata/allOf[#/components/schemas/OptimizationGoalMetadata]/conversion_tag_v3_goal_metadata/reporting_event`
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/optimization_goal_metadata/allOf[#/components/schemas/OptimizationGoalMetadata]/conversion_tag_v3_goal_metadata/reporting_event` to the response with the `200` status
- **2025-07-16** (v5) `43134ca41f18` — 2 info
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/promotion_application_level`
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/promotion_application_level` to the response with the `200` status
- **2025-04-04** (v5) `10f9eba4ad97` — 4 warning, 8 info
  - the `items/allOf[#/components/schemas/AdGroupCommon]/optimization_goal_metadata/allOf[#/components/schemas/OptimizationGoalMetadata]/frequency_goal_metadata/frequency` request property's max was set to `20.00`
  - the `items/allOf[#/components/schemas/AdGroupCommon]/optimization_goal_metadata/allOf[#/components/schemas/OptimizationGoalMetadata]/frequency_goal_metadata/frequency` request property's min was set to `2.00`
  - added the new `19+` enum value to the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AGE_BUCKET/items/` response property for the response status `200`
  - added the new `20+` enum value to the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AGE_BUCKET/items/` response property for the response status `200`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/is_creative_optimization`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/promotion_id`
  - added the new optional request property `items/allOf[subschema #2]/bid_multiplier`
  - added the new `19+` enum value to the request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AGE_BUCKET/items/`
  - added the new `20+` enum value to the request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AGE_BUCKET/items/`
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/is_creative_optimization` to the response with the `200` status
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/promotion_id` to the response with the `200` status
  - added the optional property `items/items/data/allOf[subschema #2]/bid_multiplier` to the response with the `200` status
- **2024-04-23** (v5) `f9321315766f` — 1 breaking, 2 warning, 4 info
  - the `items/` request property type changed from no type to `object`
  - removed the request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AUDIENCE_INCLUDE'`
  - removed the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AUDIENCE_INCLUDE'` from the response with the `200` status
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AUDIENCE_INCLUDE`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_template_ids`
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AUDIENCE_INCLUDE` to the response with the `200` status
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_template_ids` to the response with the `200` status
- **2024-02-08** (v5) `7529b464d5cb` — 4 warning, 4 info
  - added the new `DELETED_DRAFT` enum value to the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/status/allOf[#/components/schemas/EntityStatus]/` response property for the response status `200`
  - added the new `DELETED_DRAFT` enum value to the `items/items/data/allOf[subschema #2]/summary_status/allOf[#/components/schemas/AdGroupSummaryStatus]/` response property for the response status `200`
  - added the new `DRAFT` enum value to the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/status/allOf[#/components/schemas/EntityStatus]/` response property for the response status `200`
  - added the new `DRAFT` enum value to the `items/items/data/allOf[subschema #2]/summary_status/allOf[#/components/schemas/AdGroupSummaryStatus]/` response property for the response status `200`
  - the `` request property default value `ALL` was added
  - added the new `DELETED_DRAFT` enum value to the request property `items/allOf[#/components/schemas/AdGroupCommon]/status/allOf[#/components/schemas/EntityStatus]/`
  - added the new `DRAFT` enum value to the request property `items/allOf[#/components/schemas/AdGroupCommon]/status/allOf[#/components/schemas/EntityStatus]/`
  - the `` response's property default value `ALL` was added for the status `200`
- **2023-08-17** (v5) `0ff12596bafd` — 1 warning, 1 info
  - added the new `TWENTY_FOUR_HOUR` enum value to the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/optimization_goal_metadata/allOf[#/components/schemas/OptimizationGoalMetadata]/frequency_goal_metadata/timerange` response property for the response status `200`
  - added the new `TWENTY_FOUR_HOUR` enum value to the request property `items/allOf[#/components/schemas/AdGroupCommon]/optimization_goal_metadata/allOf[#/components/schemas/OptimizationGoalMetadata]/frequency_goal_metadata/timerange`
- **2023-05-12** (v5) `689b4b267639` — 5 breaking, 27 info
  - added `#/components/schemas/BudgetType` to the `items/allOf[#/components/schemas/AdGroupCommon]/budget_type` request property `allOf` list
  - removed the enum value `BILLABLE_ENGAGEMENT` of the request property `items/allOf[#/components/schemas/AdGroupCommon]/billable_event`
  - removed the enum value `CBO_ADGROUP` of the request property `items/allOf[#/components/schemas/AdGroupCommon]/budget_type`
  - removed the enum value `DAILY` of the request property `items/allOf[#/components/schemas/AdGroupCommon]/budget_type`
  - removed the enum value `LIFETIME` of the request property `items/allOf[#/components/schemas/AdGroupCommon]/budget_type`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AGE_BUCKET`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/APPTYPE`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AUDIENCE_EXCLUDE`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AUDIENCE_INCLUDE'`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/GENDER`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/GEO`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/INTEREST`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/LOCALE`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/LOCATION`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/SHOPPING_RETARGETING`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/TARGETING_STRATEGY`
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AGE_BUCKET` to the response with the `200` status
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/APPTYPE` to the response with the `200` status
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AUDIENCE_EXCLUDE` to the response with the `200` status
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/AUDIENCE_INCLUDE'` to the response with the `200` status
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/GENDER` to the response with the `200` status
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/GEO` to the response with the `200` status
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/INTEREST` to the response with the `200` status
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/LOCALE` to the response with the `200` status
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/LOCATION` to the response with the `200` status
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/SHOPPING_RETARGETING` to the response with the `200` status
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/targeting_spec/TARGETING_STRATEGY` to the response with the `200` status
  - added `#/components/schemas/BudgetType` to the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/budget_type` response property `allOf` list for the response status `200`
  - removed the `BILLABLE_ENGAGEMENT` enum value from the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/billable_event` response property for the response status `200`
  - removed the `CBO_ADGROUP` enum value from the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/budget_type` response property for the response status `200`
  - removed the `DAILY` enum value from the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/budget_type` response property for the response status `200`
  - removed the `LIFETIME` enum value from the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/budget_type` response property for the response status `200`
- **2023-02-14** (v5) `be19b77aa78a` — 6 breaking, 1 warning, 4 info
  - the response property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/bid_strategy_type` became nullable for the status `200`
  - the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/tracking_urls/allOf[#/components/schemas/TrackingUrls]/audience_verification/items/` response property's maxLength was unset from `2000` for the response status `200`
  - the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/tracking_urls/allOf[#/components/schemas/TrackingUrls]/buyable_button/items/` response property's maxLength was unset from `2000` for the response status `200`
  - the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/tracking_urls/allOf[#/components/schemas/TrackingUrls]/click/items/` response property's maxLength was unset from `2000` for the response status `200`
  - the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/tracking_urls/allOf[#/components/schemas/TrackingUrls]/engagement/items/` response property's maxLength was unset from `2000` for the response status `200`
  - the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/tracking_urls/allOf[#/components/schemas/TrackingUrls]/impression/items/` response property's maxLength was unset from `2000` for the response status `200`
  - added the new `undefined` enum value to the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/bid_strategy_type` response property for the response status `200`
  - added the new optional request property `items/allOf[#/components/schemas/AdGroupCommon]/optimization_goal_metadata`
  - the request property `items/allOf[#/components/schemas/AdGroupCommon]/bid_strategy_type` became nullable
  - added the new `undefined` enum value to the request property `items/allOf[#/components/schemas/AdGroupCommon]/bid_strategy_type`
  - added the optional property `items/items/data/allOf[#/components/schemas/AdGroupCommon]/optimization_goal_metadata` to the response with the `200` status
- **2022-11-14** (v5) `e041d7b0cef0` — 1 breaking
  - for the `path` request parameter `ad_account_id`, the maxLength was decreased from `19` to `18`
- **2022-09-07** (v5) `bd20b6eb152f` — 2 warning, 1 info
  - for the `path` request parameter `ad_account_id`, the maxLength was set to `19`
  - changed the pattern of the request property `items/allOf[#/components/schemas/AdGroupCommon]/campaign_id` from `^\d+$` to `^[C]?\d+$`
  - the `items/items/data/allOf[#/components/schemas/AdGroupCommon]/campaign_id` response's property pattern was changed from `^\d+$` to `^[C]?\d+$` for the status `200`
- **2022-07-11** (v5) `0d5998752011` — 1 info
  - endpoint added

---

[Operation](https://skmtc.dev/pinterest/apis/pinterest-rest-api/docs/ad_accounts/:ad_account_id/ad_groups/patch.md) · [API](https://skmtc.dev/pinterest/apis/pinterest-rest-api.md) · [Page](https://skmtc.dev/pinterest/apis/pinterest-rest-api/changes/ad_accounts/:ad_account_id/ad_groups/patch)
