Queue a withdrawal to an external address.
curl --request POST \
--url https://api.symbiosis.markets/custody/withdraw \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"amount": "<string>",
"asset": {
"asset_id": "<string>",
"withdraw_asset_type": "asset"
},
"client_withdrawal_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"recipient": "<string>"
}
'import requests
url = "https://api.symbiosis.markets/custody/withdraw"
payload = {
"amount": "<string>",
"asset": {
"asset_id": "<string>",
"withdraw_asset_type": "asset"
},
"client_withdrawal_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"recipient": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
amount: '<string>',
asset: {asset_id: '<string>', withdraw_asset_type: 'asset'},
client_withdrawal_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
recipient: '<string>'
})
};
fetch('https://api.symbiosis.markets/custody/withdraw', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"status": "Queued",
"withdrawal_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}{
"error": "<string>"
}Custody
Queue a withdrawal to an external address.
POST
/
custody
/
withdraw
Queue a withdrawal to an external address.
curl --request POST \
--url https://api.symbiosis.markets/custody/withdraw \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"amount": "<string>",
"asset": {
"asset_id": "<string>",
"withdraw_asset_type": "asset"
},
"client_withdrawal_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"recipient": "<string>"
}
'import requests
url = "https://api.symbiosis.markets/custody/withdraw"
payload = {
"amount": "<string>",
"asset": {
"asset_id": "<string>",
"withdraw_asset_type": "asset"
},
"client_withdrawal_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"recipient": "<string>"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
amount: '<string>',
asset: {asset_id: '<string>', withdraw_asset_type: 'asset'},
client_withdrawal_id: '3c90c3cc-0d44-4b50-8888-8dd25736052a',
recipient: '<string>'
})
};
fetch('https://api.symbiosis.markets/custody/withdraw', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));{
"status": "Queued",
"withdrawal_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a"
}{
"error": "<string>"
}Authorizations
SessionBearerApiKeyHmac & HmacTimestamp & HmacSignature
Session token from POST /auth/login.
Body
application/json
An amount in the asset's native indivisible units.
A fixed point representation of a token or USDC amount, scaled by 1e6.
Responses encode amounts as 0x-prefixed hex strings; requests also accept decimal strings and JSON numbers.
- Option 1
- Option 2
Show child attributes
Show child attributes
Client-chosen idempotency key, unique per user. Retrying with the same id can never queue a second withdrawal.