Skip to main content
POST
/
v0
/
auth
/
siwe
/
verify
Verify And Create Wallet
curl --request POST \
  --url https://api.sumvin.com/v0/auth/siwe/verify \
  --header 'Content-Type: application/json' \
  --data '
{
  "message": "<string>",
  "signature": "<string>",
  "chain_id": 123,
  "nickname": "<string>"
}
'
{
  "_links": {
    "self": {
      "href": "/v0/wallets/wal-a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4"
    },
    "user": {
      "href": "/v0/user/me"
    }
  },
  "address": "0x742d35Cc6634C0532925a3b844Bc9e7595f2bD78",
  "chain_id": 8453,
  "created_at": 1704067200000,
  "id": "wal-a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4",
  "is_eoa": true,
  "is_primary": true,
  "nickname": "Main Wallet"
}

Headers

x-juno-orgid
string | null

Tenant org ID for multi-tenant auth

x-sumvin-token
string | null
x-juno-jwt
string | null

Body

application/json
message
string
required

EIP-4361 formatted SIWE message string

signature
string
required

0x-prefixed hex signature from wallet

chain_id
integer
required

Chain ID for the wallet being verified

nickname
string | null

Optional wallet nickname

Maximum string length: 100

Response

Wallet verified and created

HAL-style hypermedia links for navigation.

id
string
required

Public wallet identifier.

address
string
required

Wallet address (EOA or Safe).

chain_id
integer
required

Blockchain chain ID where this wallet exists.

is_primary
boolean
required

True if this is the user's primary wallet for this type.

is_eoa
boolean
required

True for EOA (Externally Owned Account), false for Safe smart wallet.

created_at
integer
required

Wallet creation timestamp (epoch milliseconds).

nickname
string | null

User-defined friendly name for the wallet.

logo_uri
string | null

URI to the blockchain's logo image.

deleted_at
integer | null

Soft deletion timestamp (epoch milliseconds).

safe_creation_event_id
string | null

Event ID for tracking Safe creation. Only present in 202 Accepted responses when Safe creation is triggered.

cards
CardData · object[] | null

Linked payment cards. Only included when expand=cards is specified.