Skip to main content
POST
/
v1
/
auth
/
verify
Verify SIWS signature and get JWT
curl --request POST \
  --url https://api.joyride.exchange/v1/auth/verify \
  --header 'Content-Type: application/json' \
  --data '
{
  "wallet": "GmQozSzrtMjXt5F1Bed8Vrt55zCbiga8vDZr47RX9wC8",
  "signature": "3xJ9...",
  "nonce": "a1b2c3d4e5f6"
}
'
{
  "token": "eyJhbGciOiJIUzI1NiJ9...",
  "wallet": "GmQozSzrtMjXt5F1Bed8Vrt55zCbiga8vDZr47RX9wC8"
}

Body

application/json
wallet
string
required

Solana wallet address (base58-encoded public key)

Example:

"GmQozSzrtMjXt5F1Bed8Vrt55zCbiga8vDZr47RX9wC8"

signature
string
required

Base58-encoded ed25519 signature of the SIWS message

Example:

"3xJ9..."

nonce
string
required

The nonce from GET /v1/auth/nonce

Example:

"a1b2c3d4e5f6"

Response

Authentication successful

token
string
required

JWT session token (HS256, 24h expiry by default)

Example:

"eyJhbGciOiJIUzI1NiJ9..."

wallet
string
required

Verified wallet address

Example:

"GmQozSzrtMjXt5F1Bed8Vrt55zCbiga8vDZr47RX9wC8"