Skip to Content
FeaturesAPI Keys

API Keys

API keys give service-account access to the proxy — CI pipelines, Claude Desktop, and scripts that can’t run the interactive OAuth helper.

Format

ar_live_<base62_random_32chars> # production proxy ar_test_<base62_random_32chars> # dev proxy

The prefix makes leaked keys grep-able. Only the first 8 characters (prefix) are stored for lookup; the full value is stored as a bcrypt hash (cost 12).

Fields

FieldNotes
key_idSystem-generated UUID
prefixFirst 8 chars of the raw key (DynamoDB lookup key)
bcrypt_hashbcrypt of the full raw value
nameHuman label, e.g. “GitHub Actions prod”
scopesproxy:invoke in the MVP
allowed_modelsIf absent, inherits from the associated user’s grant
allowed_regionsIf absent, inherits from the grant or tenant default
monthly_budget_usdOptional per-key budget cap
expires_atIf set, the key is auto-rejected after this date
last_used_atUpdated on every authenticated use
statusactive / revoked

Lifecycle

The raw key value is returned once at creation and never stored in plain text or retrievable again. The console shows it in a copy-once modal with an “I’ve copied this key” confirmation.

  • Rotate: create a new key → update the caller’s config → revoke the old key. Both work during the transition window.
  • Revoke: takes effect on the next request — the lookup returns status=revoked and the proxy responds 401.
Last updated on