Skip to main content
POST
Exchange a signed login challenge for a session

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Headers

device-id
string | null
x-api-key
string | null
user-agent
string | null

Body

application/json
challengeId
string<uuid>
required

Single-use challenge identifier returned by POST /dapi/v1/auth/challenge.

signature
string
required

Signature over the decoded payload returned for this challenge.

publicKey
string | null

Registered P-256 public key; omit when the signature uniquely identifies the key.

Response

Successful Response

accessToken
string
required

Short-lived bearer token used to authorize API requests.

refreshToken
string
required

Long-lived device-bound token used only at POST /dapi/v1/auth/refresh.

expiresIn
integer
required

Number of seconds until the access token expires.

userId
string
required

Account selected for the issued session.

Pattern: ^(?:cl_)?[A-Za-z0-9._:\-]{1,216}$
Example:

"cl_9f2c1ab84d7e4f1fa3c65b0e7d9a2c41"