<!--
{
  "availability" : [
    "Apple Ads Platform API: 1.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "Apple-Ads-Platform-API",
  "identifier" : "/documentation/Apple-Ads-Platform-API/Campaign",
  "metadataVersion" : "0.1.0",
  "role" : "Object",
  "symbol" : {
    "kind" : "Object",
    "modules" : [
      "Apple Ads Platform API"
    ],
    "preciseIdentifier" : "data:apple-ads-platform-api:Campaign"
  },
  "title" : "Campaign"
}
-->

# Campaign

The top-level container that defines a campaign’s promoted object, billing, scheduling, and targeting.

```
object Campaign
```

## Discussion

A `Campaign` is the top-level advertising container that defines the promoted object, billing model, scheduling, and geographic targeting for a set of ad groups. Each campaign belongs to a single ad account and promotes either an App Store app (`APPSTORE_APP`) or a brand (`BUSINESS_BRAND`). The `billingEvent`, `promotedObjectType`, and `promotedObjectId` fields stay fixed after creation. To change any of them, create a new campaign.

The `status` field captures the advertiser’s intent for the campaign to serve. The `systemStatus` field reflects Apple’s system assessment of whether the campaign can deliver. When `systemStatus` isn’t `RUNNING`, inspect `systemStatusReasons` to identify blocking conditions and `systemStatusLimitingReasons` for delivery-reducing (but non-blocking) factors.

A required `dailyBudget` cap controls the campaign’s budget and limits daily spending. You can also assign a campaign to one or more shared budgets via `sharedBudgets`. The two budget controls function independently: `dailyBudget` enforces a daily cap. Each shared budget enforces a flight-period cap defined by its `startTime` and `endTime`.

Fields you can filter and sort on when querying campaigns are listed in [`Query Campaigns`](/documentation/Apple-Ads-Platform-API/POST-campaigns-query). For the complete list of required and optional fields at creation, see [`CampaignCreate`](/documentation/Apple-Ads-Platform-API/CampaignCreate). For the fields that you can change after creation, see [`CampaignUpdate`](/documentation/Apple-Ads-Platform-API/CampaignUpdate).

### Example

```json
{
  "id": 123456789,
  "adAccountId": 555666777,
  "name": "AwayFinder Fall Launch",
  "billingEvent": "TAPS",
  "paymentModel": "LOC",
  "startTime": "2025-01-10T08:00:00.000",
  "endTime": "2025-12-31T00:00:00.000",
  "promotedObjectType": "APPSTORE_APP",
  "promotedObjectId": "987654321",
  "status": "ENABLED",
  "systemStatus": "RUNNING",
  "systemStatusReasons": [],
  "systemStatusLimitingReasons": [],
  "displayStatus": "RUNNING",
  "dailyBudget": {
    "value": {
      "amount": "100.00",
      "currency": "USD"
    }
  },
  "sharedBudgets": [
    {
      "budgetId": 246813579
    }
  ],
  "targeting": {
    "supplySource": {
      "include": [
        "APPSTORE"
      ]
    },
    "supplyPlacement": {
      "include": [
        "APPSTORE_SEARCH_RESULTS"
      ]
    },
    "countryOrRegion": {
      "include": [
        "US",
        "CA"
      ]
    }
  },
  "bidStrategy": {
    "bidStrategyType": "MANUAL_CPT",
    "bidStrategyGoal": "TAP",
    "bid": {
      "amount": "2.50",
      "currency": "USD"
    }
  },
  "invoiceDetail": {
    "name": "AwayFinder Q3 Invoice",
    "orderNumber": "PO-2025-0456",
    "clientName": "AwayFinder Inc.",
    "primaryBuyerName": "Jordan Lee",
    "primaryBuyerEmail": "jordan.lee@awayfinder.com",
    "billingEmail": "billing@awayfinder.com"
  },
  "regulationResponses": [
    {
      "regulationType": "CAMPAIGN_SAPIN_LAW",
      "responseValue": "NOT_ANSWERED"
    }
  ],
  "creationTime": "2025-01-10T08:00:00.000",
  "modificationTime": "2025-01-10T08:00:00.000",
  "deleted": false
}
```

## Topics

### Dictionaries

[`object Campaign.BidStrategy`](/documentation/Apple-Ads-Platform-API/Campaign/BidStrategy-data.dictionary)

Defines how this campaign competes in auctions, including bid type, optimization goal, and bid amount.

[`object Campaign.DailyBudget`](/documentation/Apple-Ads-Platform-API/Campaign/DailyBudget-data.dictionary)

Daily budget cap for a campaign.

[`object Campaign.InvoiceDetail`](/documentation/Apple-Ads-Platform-API/Campaign/InvoiceDetail-data.dictionary)

Invoice details for the LOC payment model.

[`object Campaign.Targeting`](/documentation/Apple-Ads-Platform-API/Campaign/Targeting-data.dictionary)

Defines where a campaign is eligible to serve ads, including supply source, placement, and geographic markets.

### Type Aliases

[`string Campaign.BillingEvent`](/documentation/Apple-Ads-Platform-API/Campaign/BillingEvent-data.typealias)

The user interaction that triggers a charge for a campaign.

[`string Campaign.DisplayStatus`](/documentation/Apple-Ads-Platform-API/Campaign/DisplayStatus-data.typealias)

Rolled-up delivery state for a campaign, combining advertiser settings and system conditions into a single user-facing label.

[`string Campaign.PaymentModel`](/documentation/Apple-Ads-Platform-API/Campaign/PaymentModel-data.typealias)

The payment model that determines payment method and budget availability for the ad account running this campaign.

[`string Campaign.PromotedObjectType`](/documentation/Apple-Ads-Platform-API/Campaign/PromotedObjectType-data.typealias)

The category of entity being promoted by a campaign, determining which ad placements and creative workflows apply.

[`string Campaign.Status`](/documentation/Apple-Ads-Platform-API/Campaign/Status-data.typealias)

Advertiser-configurable run state for a campaign.

[`string Campaign.SystemStatus`](/documentation/Apple-Ads-Platform-API/Campaign/SystemStatus-data.typealias)

System-evaluated delivery state indicating whether a campaign is currently running.

[`string Campaign.SystemStatusLimitingReasons`](/documentation/Apple-Ads-Platform-API/Campaign/SystemStatusLimitingReasons-data.typealias)

A reason code indicating that a campaign is running but delivering at reduced capacity.

[`string Campaign.SystemStatusReasons`](/documentation/Apple-Ads-Platform-API/Campaign/SystemStatusReasons-data.typealias)

A reason code explaining why a campaign isn’t currently running.

---

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)