Authorization: Bearer .... They’re reached at https://api.atlasvpn.live. These are distinct from the CONNECT auth — which uses your proxy keyId:secret, not a JWT.
The same endpoints back the /developer dashboard, so everything the UI can do, you can automate.
POST /api/v1/proxy/keys
Mint a new proxy key. Secret is returned once in the response — never retrievable again.
Public key identifier, e.g.
avp_live_abc123.... Safe to log and paste in support tickets.64-char hex secret. Shown once. Store in your password manager or env var.
Pre-concatenated
keyId:secret pair for drop-in use in a proxy URL.GET /api/v1/proxy/keys
List all keys owned by the authenticated user. Returns summaries — never secrets.
POST /api/v1/proxy/keys/:id/rotate
Rotate the secret on an existing key. The keyId stays the same — so your developer config doesn’t need to change — but the secret is replaced. Old secret stops being accepted within 30 seconds.
POST /keys. See Rotating secrets for the full rotation runbook.
DELETE /api/v1/proxy/keys/:id
Soft-delete. The key stops accepting traffic immediately, but the DB row is preserved so historical usage events still link to a valid apiKeyId. Not reversible from the developer API — only admins can re-activate a deleted key (via POST /admin/proxy/keys/:id/reactivate).