Update an Ad Group
Update an existing ad group’s name, status, bid strategy, targeting, or scheduling.
URL
PUT https://api.ads.apple.com/v1/adgroups/{id}Path Parameters
| Name | Type | Description |
|---|---|---|
id Required | string |
Header Parameters
| Name | Type | Description |
|---|---|---|
X-Ap-Context Required | string |
Response Codes
| Status | Reason | Type | Description |
|---|---|---|---|
| 200 | OK Content-Type: application/json | AdGroupResponse | |
| 400 | Bad Request Content-Type: application/json | ErrorResponse | |
| 401 | Unauthorized Content-Type: application/json | ErrorResponse | |
| 403 | Forbidden Content-Type: application/json | ErrorResponse | |
| 404 | Not Found Content-Type: application/json | ErrorResponse | |
| 429 | Too Many Requests Content-Type: application/json | ErrorResponse | |
| 500 | Internal Server Error Content-Type: application/json | ErrorResponse |
Discussion
This endpoint updates an existing ad group. Only include the fields you want to modify. See the Determine Which Fields You Can Update section below to confirm which fields you can change.
For ad groups under an auto-bidding campaign, see AdGroupUpdate.BidStrategy for how to echo the campaign’s bid strategy so the API doesn’t reject a GET-then-PUT round trip.
Determine Which Fields You Can Update
To change any field marked Yes below, use this endpoint. Fields marked No are either only settable at creation via Create an Ad Group or are system-computed. Sending them in an update request has no effect. See the Notes column for which applies to a given field. The cpaCap field is marked Deprecated: the API still accepts it on update for backward compatibility, but new integrations should use bidStrategy instead.
Field | Mutable | Notes |
|---|---|---|
| Yes | Ad group display name. |
| Yes |
|
| Yes | Ad group schedule start time. |
| Yes | Ad group schedule end time. |
| Yes | Toggle Search Match automated keyword targeting. |
| No | Set at creation. Whether automated keyword generation is required for this ad group. Immutable afterward. |
| Yes | You can update |
| Yes | Supports partial updates. The request modifies only the targeting dimensions it includes. Omitted dimensions remain unchanged. |
| Deprecated | Still accepted on update for backward compatibility, but deprecated in favor of |
| No | Set at creation. Identifies the parent campaign. Immutable afterward. |
| No | Set at creation. Must match the parent campaign’s |
| No | Inherited from the campaign. You cannot reassign it. Read-only. |
| No | System-assigned identifier. Read-only. |
| No | System-computed delivery eligibility. Read-only. |
| No | System-applied reasons contributing to |
| No | System-applied reasons limiting delivery below maximum potential. Read-only. |
| No | Computed, rolled-up delivery state combining |
| No | Set when the ad group is created. Read-only. |
| No | Updated automatically on every change. Read-only. |
| No | Managed via Delete Adgroups _id_, not via update. Read-only. |