App Store Connect · Individual API Key
How an agent gets a App Store Connect · Individual API Key key through KeyKeeper, what to choose on appstoreconnect.apple.com, and how KeyKeeper verifies it.
| Template id | app-store-connect-individual (also asc-individual) |
|---|---|
| Field | private-key → PRIVATE_KEY · credential file |
| Also | key-id → KEY_ID · plain, confirmed by you |
| Key looks like | shown once when created |
| Created at | appstoreconnect.apple.com |
| Verified by KeyKeeper | not verified |
| Template checked | 2026-09-15 |
What the agent does
keykeeper providers show app-store-connect-individual
keykeeper save --provider app-store-connect-individual --from-file /path/to/private-key.p8 --create --purpose "what this task does"
keykeeper run -c app-store-connect-individual -- <your command>--provider app-store-connect-individual 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
Choose Individual API Keys
Create the key
Download the .p8 file immediately
Copy the key, then approve the save in KeyKeeper's window.
What to choose
Individual keys use JWT subject user and no issuer ID. They cannot authenticate notarytool; use the team-key notary template for notarization.
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 · Individual 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 · Individual API Key offers no read-only endpoint KeyKeeper can use, so the first real call is the test.
Rotation and expiry
The key does not expire automatically; revoke it from App Store Connect. Rotate or revoke at appstoreconnect.apple.com.