List sessions (master key)
List an account’s session keys for a master-key holder.
This is the recovery path when a user has lost their session keys / cleared local storage and can no longer mint a session to log in.
Endpoint
POST /api/v1/auth/sessions/list
Authentication
A master-key (Secp256k1 or Passkey) signed ListSessions body. This is a read: the
signature is verified and the sessions are returned directly. An admin master key sees
every session on the account; a scoped master key sees only the sessions it created.
Body
Signed write request from a master key. The JSON body is a Base64SignedPayload (Secp256k1) or a PasskeySignedPayload (passkey — adds WebAuthn authenticator_data, client_data_json, and credential_id, with public_key optional); the wire signature_type selects which. The base64 payload is identical in both and decodes to the binary layout [Header(8) || RequestId(16) || Body || Auth] — see spec/signing.md. The decoded Body is:
ListSessionswhenHeader.request_type=list_sessions(47).
- Option 1
- Option 2
JSON envelope for a signed request: the base64-encoded canonical payload plus the base64
signature and public_key of the signing credential. Session-key (Ed25519) endpoints accept
exactly these fields; master-key (Secp256k1 / Passkey) endpoints sign the same payload and may
carry additional signature material. Endpoints also accept the equivalent
application/octet-stream binary frame.
Base64-encoded bytes of the canonical request payload.
"AQABAAAAAAB4m2tQz9KvX1Yk2mN3oQ4rS5tU6vW7xZ8aB9cD0eF1gH2iJ3kL5mN7oP9qR1sT3uV5wX7yZ9a="
Base64-encoded public key of the signing credential.
"AAECAwQFBgcICQoLDA0ODxAREhMUFRYXGBkaGxwdHh8="
Base64-encoded signature over the payload.
"AAcOFRwjKjE4P0ZNVFtiaXB3foWMk5qhqK+2vcTL0tng5+71/AMKERgfJi00O0JJUFdeZWxzeoGIj5adpKuyuQ=="
Response
Session keys visible to the signing master key
"2026-06-23T15:00:00.000Z"
"0190b6c2-7e4a-7c3b-9f21-2b6a1c4e5d8f"
Base64-encoded Ed25519 session public key.
"k8Jq3xQp"
FULL_ACCESS, TRADING_ONLY Base64-encoded parent master public key. None on legacy rows predating the backfill.
"k8Jq3xQp"
The session's subaccount pin, if any (None = inherits the parent's reach).
x >= 0"2026-06-23T16:00:00.000Z"