TypeScript SDK — Account Services: Addresses & Deposits
Manage deposit addresses and the approved withdrawal address allowlist. All methods are on client.account and use a unified flat parameter object.
See the API specifications for full request/response schemas and the authentication guide for setup.
Methods
createNewDepositAddress
POST /v1/deposit/{network}/newAddress · Authenticated · Fund Manager role · OAuth scope addresses:create
Generates a new deposit address for the specified network. Requires the Fund Manager role. The request is validated client-side — the SDK checks optional field types (label, legacy, account) before sending. The account field is optional for account-level API keys but required for Master API keys to target a specific sub-account.
Code
This is a POST mutation — never automatically retried. Creating duplicate addresses is safe — each call generates a distinct address.
listDepositAddresses
POST /v1/addresses/{network} · Authenticated · Trader, Fund Manager, or Auditor role · OAuth scope addresses:read or addresses:create
Lists all previously generated deposit addresses for the specified network. The response is a bare array of Address objects.
Code
createNewApprovedAddress
POST /v1/approvedAddresses/{network}/request · Authenticated · Fund Manager role · Trusted IP required · API key only
Requests approval of a new withdrawal address for the specified network. Requires the Fund Manager role and Trusted IP controls enabled on your account. This endpoint is API-key only — it is not accessible via OAuth. The request is validated client-side — address and label are required strings.
Code
Caveat: Every newly approved address is subject to a mandatory seven-day approval hold before it can be used for withdrawals. This hold always applies and cannot be skipped. Plan withdrawal workflows accordingly.
listApprovedAddresses
POST /v1/approvedAddresses/account/{network} · Authenticated · OAuth scope addresses:read
Lists all approved withdrawal addresses for the specified network on your account. Available to any API-key role (Trader, Fund Manager, or Auditor). OAuth callers require the addresses:read scope. The response is a wrapper object with an approvedAddresses array — not a bare array.
Code
removeApprovedAddress
POST /v1/approvedAddresses/{network}/remove · Authenticated · Fund Manager role · OAuth scope addresses:create
Removes an address from the approved withdrawal allowlist. Requires the Fund Manager role. OAuth callers require the addresses:create scope. The request is validated client-side — address is a required string.
Code
Caveat: Removing an approved address is irreversible via this call. You'll need to re-approve the address (with its waiting period) to use it again.
Flat Unified Parameter Objects
Every method on this page takes a single flat object with path parameters (network) and any body properties directly at top level:
Code
See the patterns guide for more on input shapes.
What's next
- Balances & Account — account details and balance queries
- Withdrawals & Transfers — moving funds
- Request Validation — how client-side validation works