Skip to main content
POST
/
v0
/
insto
/
custody
/
vaults
/
{vault_id}
/
withdrawals
Create withdrawal
curl --request POST \
  --url https://api.kraken.com/v0/insto/custody/vaults/{vault_id}/withdrawals \
  --header 'Content-Type: application/json' \
  --header 'api-key: <api-key>' \
  --header 'api-nonce: <api-key>' \
  --header 'api-otp: <api-key>' \
  --header 'api-sign: <api-key>' \
  --data '
{
  "asset": "BTC",
  "asset_class": "currency",
  "amount": "0.5",
  "address_name": "My BTC Wallet",
  "fee": {
    "amount": "0.0001",
    "asset": "BTC",
    "asset_class": "currency",
    "included": true,
    "level": "normal"
  },
  "quote_id": "QABCDEF234567A",
  "comment": "Withdrawal request for Q4 operating expenses as per budget plan",
  "memo": "destination-tag-42"
}
'
{
  "task_id": "TABCDEF234567A",
  "approval_id": "550E8400-E29B-41D4-A716-446655440000"
}

Authorizations

api-key
string
header
required
api-sign
string
header
required
api-nonce
string
header
required
api-otp
string
header
required

Path Parameters

vault_id
string
required

Vault identifier, a V-prefixed 14-char base32 string with a final check character.

Example:

"VABCDEF234567A"

Body

application/json
asset
string
required

Asset code being withdrawn (e.g. BTC, ETH, USD).

Example:

"BTC"

asset_class
string
required

Asset class of the withdrawn asset. Currently only currency is supported.

Example:

"currency"

amount
string
required

Withdrawal amount as a fixed-precision decimal string. Must be positive.

Example:

"0.5"

address_name
string
required

Name of the previously whitelisted destination address to withdraw to.

Example:

"My BTC Wallet"

fee
object
required

Fee bundle obtained from the matching fee quote. All fields must match the quote returned by CreateWithdrawalFeeQuote.

quote_id
string

Identifier of the fee quote returned by CreateWithdrawalFeeQuote. A Q-prefixed 14-char base32 string.

Example:

"QABCDEF234567A"

comment
string

Optional free-text note attached to the withdrawal task. Surfaced in the task's activity timeline.

Example:

"Withdrawal request for Q4 operating expenses as per budget plan"

memo
string

Optional destination tag, memo, or other secondary identifier required by chains that use one.

Example:

"destination-tag-42"

Response

Withdrawal task created successfully. The withdrawal is executed asynchronously once the returned task is approved.

task_id
string
required

Identifier of the task created for the withdrawal. A T-prefixed 14-char base32 string.

Example:

"TABCDEF234567A"

approval_id
string
required

Identifier of the approval flow associated with the task (UUID v4).

Example:

"550E8400-E29B-41D4-A716-446655440000"