Admin keys are powerful
Keys with the Admin role can do things like create and delete users, and team keys reach every app. Use the narrowest role and never put keys in repositories or client-side code. [2]
Guides · devtools · Verification-gated
Get programmatic access to App Store Connect (builds, TestFlight, metadata, users, provisioning, reports). The Account Holder requests API access once; Apple reviews it; then Admins create team keys (or users create individual keys) whose private .p8 half is downloadable only once and signs 20-minute JWTs.
Researched · not yet run liveLast researched 25 October 2026 · Apple · provider site
API access is switched on per App Store Connect team (one per developer membership) by the Account Holder. Team keys belong to the team, carry a role (e.g. Admin, App Manager, Developer) and see all apps; individual keys inherit one user's apps and permissions.
Team keys cannot be limited to particular apps; pick the narrowest role that works.
Individual keys cannot use Provisioning endpoints.
Steps marked “human step” are ones only you can do: verapli never signs in, submits, pays or accepts terms for you.
Sign in as the Account Holder (first time) or an Admin.
Where: https://appstoreconnect.apple.com/
In Users and Access > Integrations, click Request Access, tick the box to agree to the terms and submit.
Where: https://appstoreconnect.apple.com/
Apple reviews and approves requests case by case. Team Keys appear once approved.
Users and Access > Integrations > App Store Connect API > Team Keys > Generate API Key (+). Name it and choose the role. Name and role cannot be edited later; revoke and recreate to change them.
Where: https://appstoreconnect.apple.com/
Click Download API Key next to the new key and store the AuthKey_<KEY_ID>.p8 file in your secret store. The link disappears after one download.
verapli captures APP_STORE_CONNECT_API_PRIVATE_KEY here by plain code: encrypted in your browser, never shown to AI.
The Issuer ID is shown near the top of the Integrations page; the Key ID is listed under Active keys.
Where: https://appstoreconnect.apple.com/
From your user profile in App Store Connect, generate an Individual API Key (one active key per user); it carries your own permissions.
Sign an ES256 JWT with kid = Key ID and payload iss = Issuer ID, iat, exp (no more than 20 minutes ahead), aud = appstoreconnect-v1, optionally scope to limit requests. Send as a Bearer token.
Plain-English summary, not legal advice. Each card links its source.
Keys with the Admin role can do things like create and delete users, and team keys reach every app. Use the narrowest role and never put keys in repositories or client-side code. [2]
The licence agreement forbids sharing, selling or otherwise providing access to your developer account or its services to anyone who is not an Authorized Developer on your team. The Account Holder also accepts separate API terms when requesting access; read them for limits on third-party use. [to verify] wording of those terms. [5]
A revoked API key cannot be reinstated; revoked keys from the last 30 days are listed for reference only. [1]
| Env var | Secret | Format | What it is |
|---|---|---|---|
APP_STORE_CONNECT_ISSUER_ID | not secret | xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx | Issuer ID for team keys (UUID). |
APP_STORE_CONNECT_KEY_ID | not secret | ABC123DEFG | Key ID of the API key (JWT kid). |
APP_STORE_CONNECT_API_PRIVATE_KEY | secret | contents of AuthKey_<KEY_ID>.p8 | The .p8 private key that signs API tokens. Secret; Apple keeps no copy. |
The same entry as JSON: /api/v1/entries/apple/app-store-connect-api · requirements /api/v1/requirements/apple/app-store-connect-api · terms /api/v1/terms/apple/app-store-connect-api.
claude mcp add --transport http verapli https://verapli.com/mcp
> "What do I need for App Store Connect API key, and how long will it take?"
→ tools/call requirements { "provider_id": "apple/app-store-connect-api" }Provider rules change. This page is generated from verapli registry version 2026.1025.387; spotted something out of date? Tell us. Apple is not affiliated with verapli.