For the complete documentation index, see llms.txt. This page is also available as Markdown.

Deposit Addresses

Create or query custody deposit addresses for a SoDEX user. The user path parameter must be a valid EVM address.

Address creation rate limit

Each single-address or all-address creation request consumes 200 REST weight from the IP's fixed one-minute budget. The weight is charged per request, not per generated address.

After requesting creation, poll the query endpoint instead of repeatedly submitting creation requests. See Rate Limits.

Query one address

GET /user/{userAddress}/deposit-address?chain={chain}

curl "https://mainnet-gw.sodex.dev/api/v1/user/0x1111111111111111111111111111111111111111/deposit-address?chain=TON" \
  -H "Accept: application/json"

Create one address

POST /user/{userAddress}/deposit-address

curl -X POST \
  "https://mainnet-gw.sodex.dev/api/v1/user/0x1111111111111111111111111111111111111111/deposit-address" \
  -H "Content-Type: application/json" \
  -d '{"chain":"TON"}'

Create all supported addresses

POST /user/{userAddress}/deposit-addresses

This endpoint starts address creation for all custody chains available to the user. Its data.accountAddresses value is an array of deposit-address objects.

Deposit-address object

Field
Type
Description

chain

string

Exact chain identifier returned by Asset Configuration.

address

string

Deposit address; it can be empty while creation is pending.

status

string

Empty, Processing, Enabled, or Suspicious.

Poll a newly created address until it becomes Enabled or Suspicious. Never display an empty, processing, or suspicious address as a valid deposit destination. Enabled is not enough by itself — verify the string on ValueChain as described in Generate Custody Address.

Last updated