Reserve account

Explore resources

Endpoint paths, field names and enum values appear exactly as the API uses them. Some carry legacy names, such as earn_clients. They are identifiers, not product descriptions.

POST/organization/reserve_account/allocate/

Allocate reserve funds

Header parameters

NameTypeDescription
apikeystringrequiredstring

API key issued to the integration partner.

Request body

application/jsonrequired

NameTypeDescription
allocationsarray of Allocationrequiredarray of Allocation
allocations[].client_idstringrequiredstring
allocations[].allocation_typestringrequiredstring

Allowed values: EARN_ACCOUNT

allocations[].asset_idstringrequiredstring
allocations[].amountstringrequiredstring
Example
{
  "allocations": [
    {
      "client_id": "1",
      "allocation_type": "EARN_ACCOUNT",
      "asset_id": "USDT",
      "amount": "100"
    },
    {
      "client_id": "2",
      "allocation_type": "EARN_ACCOUNT",
      "asset_id": "USDC",
      "amount": "100"
    }
  ]
}

Responses

200OK

application/json

NameTypeDescription
errorobject (AllocationError)object (AllocationError)
error.codestringstring

Can be any of:

  • insufficient_funds
  • invalid_client_id
  • agreement_not_signed
  • reserve_account_not_enabled
error.detailstringstring
error.dataobjectobject
statusstringstring

Allowed values: success, error

remaining_reserve_balancesarray of ReserveAccountBalancearray of ReserveAccountBalance
remaining_reserve_balances[].asset_idstringstring
remaining_reserve_balances[].balancestringstring
Example: Successful allocation
{
  "error": {},
  "status": "success",
  "remaining_reserve_balances": [
    {
      "asset_id": "USDT",
      "balance": "1450.92"
    },
    {
      "asset_id": "BTC",
      "balance": "2.02"
    }
  ]
}
Example: Unsuccessful allocation
{
  "error": {
    "code": "insufficient_funds",
    "details": "Not enough funds for allocation. Need 1450 USDT, have 1300 USDT",
    "data": {
      "asset_id": "USDT",
      "required_amount": "1450",
      "available_amount": "1300"
    }
  },
  "status": "error",
  "remaining_reserve_balances": [
    {
      "asset_id": "USDT",
      "balance": "1300"
    },
    {
      "asset_id": "USDC",
      "balance": "1200"
    }
  ]
}

GET/organization/reserve_account/balances/

Get organization reserve account balances

Header parameters

NameTypeDescription
apikeystringrequiredstring

API key issued to the integration partner.

Responses

200OK

application/jsonarray of ReserveAccountBalance

NameTypeDescription
asset_idstringstring
balancestringstring
Example
[
  {
    "asset_id": "USDT",
    "balance": "1500"
  },
  {
    "asset_id": "USDC",
    "balance": "1000"
  }
]

400Bad Request

application/jsonarray of Error

NameTypeDescription
field_namestringstring
error_detailsarray of ErrorDetailrequiredarray of ErrorDetail
error_details[].messagestringstring
error_details[].codestringstring
Example
[
  {
    "field_name": "string",
    "error_details": [
      {
        "message": "string",
        "code": "string"
      },
      {
        "message": "string",
        "code": "string"
      }
    ]
  }
]

401Unauthorized

GET/organization/reserve_account/wallets/deposit/

Get organization reserve account deposit addresses

Header parameters

NameTypeDescription
apikeystringrequiredstring

API key issued to the integration partner.

Query parameters

NameTypeDescription
asset_idstringrequiredstring

Responses

200OK

application/jsonarray of DepositWallet

NameTypeDescription
addressstringstring
asset_idstringstring
nicknamestringstring
Example
[
  {
    "asset_id": "USDT",
    "address": "string",
    "nickname": "string"
  }
]

400Bad Request

application/jsonarray of Error

NameTypeDescription
field_namestringstring
error_detailsarray of ErrorDetailrequiredarray of ErrorDetail
error_details[].messagestringstring
error_details[].codestringstring
Example
[
  {
    "field_name": "string",
    "error_details": [
      {
        "message": "string",
        "code": "string"
      },
      {
        "message": "string",
        "code": "string"
      }
    ]
  }
]

401Unauthorized

Technical documentation is provided to institutional integration partners for integration work. It is not an offer or a solicitation. Availability of products, assets and endpoints varies by partner and jurisdiction.

Back to API reference