Verify a signed SIWS message and receive a session JWT. The JWT is used as a Bearer token for subsequent /v1/ai/chat requests.
/v1/ai/chat
cURL
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" }
Solana wallet address (base58-encoded public key)
"GmQozSzrtMjXt5F1Bed8Vrt55zCbiga8vDZr47RX9wC8"
Base58-encoded ed25519 signature of the SIWS message
"3xJ9..."
The nonce from GET /v1/auth/nonce
"a1b2c3d4e5f6"
Authentication successful
JWT session token (HS256, 24h expiry by default)
"eyJhbGciOiJIUzI1NiJ9..."
Verified wallet address