Skip to main content
PATCH
/
v0
/
wallets
/
{wallet_id}
Update Wallet
curl --request PATCH \
  --url https://api.sumvin.com/v0/wallets/{wallet_id} \
  --header 'Content-Type: application/json' \
  --header 'x-sumvin-pat: <api-key>' \
  --data '
{
  "is_primary": true,
  "nickname": "Main Wallet"
}
'
{
  "_links": {
    "self": {
      "href": "/v0/wallets/wal-a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4"
    },
    "user": {
      "href": "/v0/user/me"
    }
  },
  "address": "0x742d35Cc6634C0532925a3b844Bc9e7595f2bD78",
  "chain_id": 1329,
  "created_at": 1704067200000,
  "id": "wal-a1b2c3d4e5f6a1b2c3d4e5f6a1b2c3d4",
  "is_eoa": true,
  "is_primary": true,
  "nickname": "Main Wallet"
}

Authorizations

x-sumvin-pat
string
header
required

Personal access token issued to the Sumvin CLI. Send it in the x-sumvin-pat header to authenticate as the owning user.

Headers

x-juno-orgid
string | null

Tenant org ID for multi-tenant auth

x-sumvin-token
string | null
x-sumvin-pat
string | null
x-juno-jwt
string | null
X-Timestamp-Format
string

Controls how timestamp fields are serialized in JSON response bodies.

Default (header omitted or any other value): epoch milliseconds as integers. iso8601: UTC ISO 8601 strings of the form YYYY-MM-DDTHH:MM:SSZ.

Example: with X-Timestamp-Format: iso8601, the field value 1704067200000 becomes "2024-01-01T00:00:00Z".

Affected fields (recursively, in dicts and arrays): any field whose name ends in _at, plus the literal field names timestamp, period_start, and period_end. All other fields are passed through unchanged.

Only iso8601 is recognized. Any other value (or omitting the header) yields the default epoch-ms representation; the server does not reject unknown values, so this is documented as an example rather than an enum to keep generated clients permissive.

Example:

"iso8601"

Path Parameters

wallet_id
string
required

Body

application/json

Request payload for updating wallet properties.

is_primary
boolean | null

Set to true to make this wallet the primary EOA. Only EOA wallets can be primary. May trigger async Safe creation (202 response).

nickname
string | null

Update the wallet's friendly name.

Maximum string length: 100
Example:

"Main Wallet"

Response

Wallet updated successfully (sync)

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. Must be 1329 (Sei mainnet).

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.