Skip to main content

Authentication

  1. You sign a short assertion JWT with your Ed25519 private key
  2. Auth returns a short-lived access token (EdDSA, IMBA keys, typ=agent)
  3. You call retail /api/* with Authorization: Bearer <access_token>
Human Wallet HS256 tokens and Partner access tokens are not accepted on the agent money path.

Assertion → access token

Assertion claims

Access token

Never send client_id in the body to pick another wallet. The JWT is the identity.

Unavailable (503)

Rate limits (defaults)

429 when exceeded. Back off with jitter. Mint a new assertion when the access token is near expiry — there is no refresh token.