Connect App Store Connect
App Store Connect provides the app identity and Analytics Reports that SpendDaddy uses for organic install context, attribution, and acquisition ratio checks. It is required by the Add app flow.
What you need
Create a Team API key for the App Store Connect API with the Finance role and Analytics Reports access. You will enter three values in SpendDaddy:
| SpendDaddy field | Where to find it | What to provide |
|---|---|---|
| Issuer ID | Users and Access → Integrations → App Store Connect API | The issuer ID shown near the top of the page. |
| Key ID | Team Keys on the same page | The key ID for the Team key you generated. |
| Private key | The download from Apple | The .p8 file for that same key. |
Do not use an App Store Server API key, an individual API key, or an Apple Search Ads key. Individual keys cannot access the Sales and Finance roles that this integration needs. Apple only lets you download the private key once; if the file is lost, revoke that key and generate a replacement.
1. Request API access
If your team has not enabled the App Store Connect API yet, an Account Holder or Admin should open App Store Connect API and select Request Access. Apple must approve this before the key creation controls appear.
2. Generate the Team API key
- In App Store Connect, open Users and Access → Integrations → App Store Connect API.
- Under Team Keys, select Generate API Key.
- Give the key a recognizable name and choose Finance for access.
- Generate the key and download the
.p8private key immediately.
Apple's Creating API Keys for App Store Connect API guide covers the key-generation screens. The private key is shown only at download time, so keep it in a server-side secret store.
3. Add the key to SpendDaddy
Open Add app and enter the Issuer ID and Key ID for the same Team key.
Upload its .p8 private key in the Private key field, then select Store
credentials. SpendDaddy creates a short-lived JWT from these values, lists
your App Store Connect apps, and checks the Analytics Reports connection.
Apple explains where to find the IDs and how the JWT is formed in Generating Tokens for API Requests.
4. Make an Analytics Report available
This is the step most likely to be missed. SpendDaddy does not create an Analytics Report request during onboarding. Before validation can succeed, Apple must have an existing ONGOING report request for at least one app and the first report must be available to download.
If no report request exists:
- An Admin should open Apple's Analytics Reports API overview and request the needed report type.
- Keep the report request active/ongoing for the app.
- Wait for Apple to generate the first report. Apple says the first report can take approximately 24–48 hours.
- Return to SpendDaddy and run credential validation again.
Apple's Request Reports endpoint and Analytics Reports API documentation describe report requests, roles, and download availability.
What success looks like
- The App Store Connect card shows Valid in the Add app flow.
- SpendDaddy displays the app it discovered and can match it with Apple Search Ads and RevenueCat.
- Download and funnel metrics appear after the first report refresh. Apple report availability and downstream metric freshness can lag behind setup.
Troubleshooting
Invalid credentials or a 401: Check that the Issuer ID, Key ID, and .p8
file all belong to the same Team key. Do not paste the key ID into the Issuer ID
field, and do not use an App Store Server API key.
Forbidden or missing Analytics Reports: Confirm that the Team key has the Finance role and Analytics Reports access. If the report type was never requested, an Admin must request it first.
Reports are not available yet: Check that an Analytics Report request is still ONGOING, then wait for Apple's first report-generation window. Re-running the SpendDaddy validation cannot make a report appear sooner.
If App Store Connect remains unavailable, Apple Search Ads and RevenueCat can still be configured, but organic install and acquisition metrics will remain empty or show a warning until the report access problem is fixed.