Credential Automation Registry

Single source of truth for which services Claude can manage keys/tokens autonomously and how.

Full rotation policy (triggers, SLAs, audit trail): credential-rotation-policy.md


Fully automated — API (no browser needed)

Claude can create, rotate, and delete keys entirely via API calls.

ServiceKey(s)Admin credentialLocationPlaybook
OpenAI admin keysOPENAI_ADMIN_KEYself (POST /organization/admin_api_keys)secrets/monitoring.env.sopsopenai-key-management.md §5
OpenAI project keys (sk-proj-…)WAP_OPENAI_KEY_MINI, OPENAI_API_KEYOPENAI_ADMIN_KEY via service account (POST /organization/projects/{id}/service_accounts)secrets/monitoring.env.sopsopenai-key-management.md §4
SupabaseSUPABASE_SERVICE_ROLE_KEY, SUPABASE_ANON_KEYROLE_SECRET_MANAGER_SUPABASE_ACCESS_TOKENsecrets/role-secret-manager.env.sops (moved from monitoring.env.sops 2026-07-05, 2620)supabase-service-key-rotation.md · supabase-access-token-rotation.md
Wasabi IAM (non-admin keys)P24_INFRA_WASABI_ACCESS_KEY, WASABI_ACCESS_KEYWASABI_ADMIN_ACCESS_KEY + WASABI_ADMIN_SECRET_KEY.env.localwasabi-key-rotation.md
Cloudflare zone tokensCF_EDIT_ALL_ZONES_API_TOKEN, CLOUDFLARE_TOKEN_ZINTEGROWANA, CF_WORKERS_API_TOKENCF_GLOBAL_API_KEYsecrets/monitoring.env.sopscloudflare-credential-rotation.md
Vercel env vars (set/delete)any VERCEL-consumed varVERCEL_TOKENsecrets/monitoring.env.sopsvercel-token-rotation.md
GitHub Secretsany GH_SECRETPAT with secrets scopesecrets/n8n-bms4.env.sopsgithub-pat-rotation.md
Resend APIRADEK_BRAND_RESEND_API_KEYResend API key (admin)secrets/monitoring.env.sopsresend-api-key-rotation.md
Traccar admin keyTRACCAR_ADMIN_KEY, TRACCAR_GW_ADMIN_KEYTraccar REST APIsecrets/monitoring.env.sopstraccar-admin-key-rotation.md
MailgunMAILGUN_API_KEYMailgun APIsecrets/monitoring.env.sopsmailgun-api-key-rotation.md
SentrySENTRY_AUTH_TOKENSentry org tokensecrets/monitoring.env.sopssentry-token-rotation.md

Playwright-automatable — browser UI (no human present needed)

Claude drives a browser via Playwright. Requires Google session alive in the Playwright profile (radieu@gmail.com). If expired: ~2 min Google login + 2FA push first.

ServiceKey(s)Browser entry pointPlaybook
Anthropic ConsoleANTHROPIC_API_KEY, WAP_ANTHROPIC_API_KEYconsole.anthropic.com/account/keysanthropic-api-key-rotation.md
OpenAI platformproject keys if Playwright preferred over APIplatform.openai.com/api-keysopenai-key-management.md §4
Discord Developer PortalDISCORD_BOT_TOKEN (existing bot)discord.com/developers/applicationsdiscord-bot-token-rotation.md
Discord provisioning (new bots/channels)DISCORD_<NAME>_BOT_TOKEN (new bots)discord.com/developers/applications · discord.com/channels/<guild>discord-provisioning.md · scripts/discord-provisioning.py
IONOS Developer PortalIONOS_HOSTING_TOKEN_PREFIX + _ENCRYPTIONdeveloper.hosting.ionos.deionos-api-token-rotation.md
Telegram BotFatherTELEGRAM_BOT_TOKEN, TELEGRAM_P24_CLAUDE_BOT_API_KEYweb.telegram.org/k/#@BotFathertelegram-bot-token-rotation.md
Claude OAuth (vps-i1 + bms-4 claude-runner)OAuth session tokenGoogle OAuth flowclaude-runner-oauth-rotation.md
n8n BMS-4 API keyBMS4_N8N_API_KEYn8n.bms-4.infra.zintegrowana.online/settings/api (REST API returns 404 in 2.26.x)n8n/n8n-bms4-api-key-rotation.md · scripts/rotate/n8n-bms4-api-key.js + .ps1
GitHub PATGH_TOKEN, GITHUB_PAT_ALL_WRITES, GITHUB_PAT_P24_INFRAgithub.com/settings/personal-access-tokens (+ TOTP via GITHUB_TOTP_SECRET) — bms-4 only, headless, no persistent profilegithub-pat-rotation.md · scripts/rotate/github-pat.js (#4069)
HeyGenHEYGEN_API_KEYapp.heygen.comheygen-api-key-rotation.md
ClickUpCLICKUP_API_KEYapp.clickup.comclickup-api-key-rotation.md

Manual only — human must act at provider dashboard

Claude cannot automate these. A GH issue (human-action label) is created automatically when rotation is due.

ServiceKey(s)ReasonPlaybook
Vercel Token (team-scoped)VERCEL_TOKENNo API to create new token with existing tokenvercel-token-rotation.md
Cloudflare Global KeyCF_GLOBAL_API_KEYNo rotation APIcloudflare-credential-rotation.md
Wasabi Admin KeyWASABI_ADMIN_ACCESS_KEYConsole UI only, no IAM self-rotationwasabi-key-rotation.md
Server root passwordsBMS root credspasswd requires interactive TTYmongodb-credential-rotation.md
AGE master keyAGE_KEY_GHARequires age-keygen + sops updatekeys + manual secret updatedocs/playbooks/master-keys-bootstrap.md
LinkedIn OAuthLINKEDIN_ACCESS_TOKENBrowser OAuth flow — monthlybrand-credential-rotation.md
OVH Consumer KeysOVH_CONSUMER_KEYOVH OAuth requires browser authorizationN/A — create new app

Template for new entries

When adding a new service credential to the ecosystem, add a row here under the correct section. Then create or link its individual rotation playbook.

| **Service Name** | `KEY_NAME` | admin credential or method | `secrets/file.env.sops` | [`playbook-name.md`](playbook-name.md) |