Apple Ads Advanced Integration

Apple’s API setup involves generating your own key pair with openssl and creating a dedicated API user. It sounds complicated but it’s fairly straightforward if you follow the steps.

Prerequisites

  • An Apple Search Ads Advanced account with active campaigns
  • openssl available on your computer (pre-installed on macOS and Linux)
  • Owner access to your Apps Finboard project

Step 1: Generate a key pair

Apple Search Ads requires you to generate your own public/private key pair locally. Open a terminal and run:

# Generate the private key
openssl ecparam -genkey -name prime256v1 -noout -out private-key.pem

# Extract the public key
openssl ec -in private-key.pem -pubout -out public-key.pem

This creates two files:

  • private-key.pem - Your private key (keep this safe, you’ll need it later)
  • public-key.pem - Your public key (you’ll upload this to Apple)

Step 2: Create a dedicated API user and invite them to your account

Apple Search Ads API access works best with a separate Apple account dedicated to API usage. This keeps your main account secure and gives you fine-grained control over API permissions.

  1. Create a new Apple account for API access - use a descriptive name like [email protected] so it’s easy to identify
  2. In your main Apple Search Ads account, go to Settings > User Management
  3. Click Invite Users
  4. Enter the email of the new API account you just created
  5. For the role, select API Account Read Only
  6. Click Send Invite
  7. Log in to the new API account’s email and accept the invite
  8. Sign in to Apple Search Ads with the new API account - you should now see the campaigns from your main account

Step 3: Upload your public key to Apple Search Ads

  1. Sign in to Apple Search Ads with your API user account (created in Step 2)
  2. Go to Settings > API (under the account menu)
  3. Click Upload Public Key or Create API User
  4. Upload the public-key.pem file you generated in Step 1

Step 4: Note your credentials

After uploading the public key, Apple will show you:

  • Client ID - In the format SEARCHADS.xxxx-xxxx-xxxx-xxxx
  • Team ID - In the format SEARCHADS.xxxx-xxxx-xxxx-xxxx
  • Key ID - A short alphanumeric string

Note all three values.

Step 5: Find your Organization ID

  1. In new API account’s Apple Search Ads you can find this under the ACCOUNT ID.

Step 6: Add to Apps Finboard

  1. In your Apps Finboard dashboard, go to your project’s Data Sources page
  2. Click Add Data Source and select Apple Ads Advanced
  3. Fill in the required fields:
    • APPLE_ADS_CLIENT_ID - The Client ID from Step 4 (e.g., SEARCHADS.xxxx-xxxx-...)
    • APPLE_ADS_TEAM_ID - The Team ID from Step 4 (e.g., SEARCHADS.xxxx-xxxx-...)
    • APPLE_ADS_KEY_ID - The Key ID from Step 4
    • APPLE_ADS_PRIVATE_KEY - Upload the private-key.pem file from Step 1
    • APPLE_ADS_ORG_ID - The Organization ID from Step 5
  4. Click Save

The first sync will start automatically and pull in your available cost history.

What gets synced

Campaign reports from Apple Search Ads Advanced:

  • Daily spend per app across all your search ads campaigns

Data availability

  • Ad revenue data has approximately a 3-hour delay

Data accuracy

  • 99.8% match with bank payout
  • Recent data may fluctuate due to invalid traffic and tax adjustments from Apple Ads