Skip to main content
POST
https://api.0xarchive.io
/
v1
/
auth
/
web3
/
verify
Verify SIWE signature
curl --request POST \
  --url https://api.0xarchive.io/v1/auth/web3/verify \
  --header 'Content-Type: application/json' \
  --data '
{
  "message": "<string>",
  "signature": "0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"
}
'
{
  "success": true,
  "user": {
    "id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
    "email": "<string>",
    "tier": "free",
    "wallet_address": "0x742d35cc6634c0532925a3b844bc9e7595f2bd18"
  },
  "is_new_user": false
}

Body

application/json
message
string
required

SIWE message returned by /v1/auth/web3/challenge and signed by the wallet.

signature
string
required

65-byte hex ECDSA signature, with or without 0x prefix.

Example:

"0x0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"

Response

SIWE verification succeeded and session cookies were set.

Successful SIWE verification response. The route also sets auth cookies for browser/session flows.

success
boolean
required
Example:

true

user
object
required
is_new_user
boolean
required

Whether the wallet user was created by this verification.

Example:

false

Last modified on June 19, 2026