<!--
{
  "availability" : [
    "Apple Ads Platform API: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Apple-Ads-Platform-API",
  "identifier" : "/documentation/Apple-Ads-Platform-API/DELETE-campaigns-_id_",
  "metadataVersion" : "0.1.0",
  "role" : "Web Service Endpoint",
  "symbol" : {
    "kind" : "Web Service Endpoint",
    "modules" : [
      "Apple Ads Platform API"
    ],
    "preciseIdentifier" : "rest:apple-ads-platform-api:delete:campaigns-{}"
  },
  "title" : "Delete a Campaign"
}
-->

# Delete a Campaign

Soft-delete a campaign by its unique identifier, cascading to its ad groups, keywords, and ads.

## 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`](/documentation/Apple-Ads-Platform-API/GET-campaigns-_id_)) 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: true` but not physically removed. The record is retained.                         |
|Deleted campaigns excluded from queries by default|`POST /v1/campaigns/query` results automatically exclude campaigns with `deleted: true` unless explicitly filtered.|
|Active ad groups are also deleted                 |Deleting a campaign cascades to its associated ad groups, keywords, and ads.                                       |

## Payload Examples

**Delete Campaign:**

### Request

Deletes a campaign by its unique identifier. A successful delete returns HTTP 200 with an empty result.

```
DELETE https://api.ads.apple.com/v1/campaigns/111222333
```

### Response

```json
{}
```

**Verify Deletion:**

### Request

After deletion, confirm the campaign is marked deleted by retrieving it directly by ID.

```
GET https://api.ads.apple.com/v1/campaigns/111222333
```

### Response

```json
{
 "result": {
   "id": 111222333,
   "deleted": true,
   "systemStatus": "NOT_RUNNING",
   "systemStatusReasons": [
     "DELETED_BY_USER"
   ],
   "displayStatus": "DELETED"
 }
}
```

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)