Delete a Campaign
Soft-delete a campaign by its unique identifier, cascading to its ad groups, keywords, and ads.
URL
DELETE https://api.ads.apple.com/v1/campaigns/{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 | Response | |
| 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 deletes a campaign by its ID. The campaign is soft-deleted: it’s marked with deleted: true and excluded from query results by default, but the record and all its fields are preserved.
After deletion, the query API will no longer include the deleted campaign by default. To retrieve deleted campaigns via the query API, pass an explicit filter with deleted IN [true, false]. To confirm deletion, use GET /v1/campaigns/{id} (Get a Campaign) and verify that Campaign.deleted is true. You can also check that systemStatus is NOT_RUNNING and that systemStatusReasons contains DELETED_BY_USER.
Keep the following in mind when relying on this endpoint’s soft-delete behavior:
Constraint | Detail |
|---|---|
Soft delete only | The campaign is marked |
Deleted campaigns excluded from queries by default |
|
Active ad groups are also deleted | Deleting a campaign cascades to its associated ad groups, keywords, and ads. |