Contents

ProductFeatures

Product features are the advertising capabilities for an ad account.

Declaration

string ProductFeatures

Possible Values

APPSTORE_APP_MANUAL

Authorizes App Store advertising.

BUSINESS_BRAND_MANUAL

Authorizes Apple Maps advertising.

Discussion

The productFeatures array on an AdAccount controls whether campaigns in that account run on App Store or Apple Maps. You set productFeatures when creating an ad account (it’s required on AdAccountCreate). It can’t be changed after the account is created. An account is authorized for App Store or Apple Maps, not both.

An account configured for App Store advertising can’t create Apple Maps campaigns. An account configured for Apple Maps advertising can’t create App Store campaigns. If your organization needs campaigns on both App Store and Apple Maps, create a dedicated ad account for each.

Enable App Store advertising

The APPSTORE_APP_MANUAL feature authorizes an ad account for App Store advertising. Campaigns in this account promote iOS apps across App Store placements. Every campaign must set promotedObjectType to APPSTORE_APP and identify the app by its adamId. The app must pass an eligibility check (see Check App Eligibility) before the campaign can serve.

Enable Apple Maps advertising

The BUSINESS_BRAND_MANUAL feature authorizes an ad account for Apple Maps advertising. Campaigns in this account promote brands on Apple Maps. Every campaign must set promotedObjectType to BUSINESS_BRAND.

Delegations link the appropriate advertiser resource to an ad account. For App Store accounts this will be a CONTENT_PROVIDER. For Apple Maps accounts this will be a BUSINESS_BRAND. This delegation, together with the matching productFeatures value, must be in place before campaigns can go live.

To promote an app with Apple Ads, you must link to an App Store Connect account. If you have multiple App Store Connect accounts, you can link each one to your Apple Ads account to promote the associated apps.

To link a resource, use Create Ad Accounts (POST /v1/ad-accounts) or Update Ad Accounts (PUT /v1/ad-accounts/{id}) with the delegations field. Set resourceType to one of the values defined in AdvertiserResourceType. The resourceId is the CPID or Brand ID value.

App Store: CONTENT_PROVIDER

{
  "resourceId": "12345678",
  "resourceType": "CONTENT_PROVIDER"
}

Apple Maps: BUSINESS_BRAND

{
  "resourceId": "9876543",
  "resourceType": "BUSINESS_BRAND"
}

Create: POST /v1/ad-accounts (Create Ad Accounts)

The delegations field is optional but when included, each entry requires resourceId and resourceType.

{
  "name": "AwayFinder Ad Account",
  "productFeatures": [
    "APPSTORE_APP_MANUAL"
  ],
  "delegations": [
    {
      "resourceId": "12345678",
      "resourceType": "CONTENT_PROVIDER"
    }
  ]
}

Update: PUT /v1/ad-accounts/{id} (Update Ad Accounts)

The delegations field is optional and nullable. Providing the array replaces all existing delegations in full. This endpoint doesn’t change productFeatures, which is fixed at creation.

{
  "delegations": [
    {
      "resourceId": "12345678",
      "resourceType": "CONTENT_PROVIDER"
    }
  ]
}

See DelegationCreate and DelegationUpdate for full field details.

See Also