App Store Connect · Team API Key

How an agent gets a App Store Connect · Team API Key key through KeyKeeper, what to choose on appstoreconnect.apple.com, and how KeyKeeper verifies it.

Template idapp-store-connect (also asc, appstoreconnect, apple-api)
Fieldprivate-key → PRIVATE_KEY · credential file
Alsokey-id → KEY_ID · plain, confirmed by you
Alsoissuer-id → ISSUER_ID · plain, confirmed by you
Key looks likeshown once when created
Created atappstoreconnect.apple.com
Verified by KeyKeepernot verified
Template checked2026-09-15

What the agent does

keykeeper providers show app-store-connect
keykeeper save --provider app-store-connect --from-file /path/to/private-key.p8 --create --purpose "what this task does"
keykeeper run -c app-store-connect -- <your command>

--provider app-store-connect fills in the credential id and the fields. The environment variables are the ones App Store Connect's own tools read, so nothing has to be mapped.

What only you can do

Sign in to App Store Connect
An Account Holder or Admin chooses Team Keys and creates the key
Choose the least privileged role the task needs
Download the .p8 file immediately; it is shown once
Copy the key, then approve the save in KeyKeeper's window.

What to choose

Prefer a team key with the narrowest App Store Connect role that can perform the task. Use an individual key only for app and user endpoints; Apple does not allow individual keys for notarytool.

The agent is told the same thing. It opens the page for you and says what to pick; it never logs in, passes 2FA or pays on your behalf.

What KeyKeeper checks

  • Before writing: the value must look like a App Store Connect · Team API Key key (shown once when created). A wrong paste is refused before anything is stored, and the agent is told why — without the value.
  • After saving: App Store Connect · Team API Key offers no read-only endpoint KeyKeeper can use, so the first real call is the test.

Rotation and expiry

Keys do not expire automatically; revoke them on the Integrations page. Rotate or revoke at appstoreconnect.apple.com.