Use this file to discover all available pages before exploring further.
CBAppClient is the REST client for Coinbase’s App API. It targets consumer and retail wallet operations — listing accounts and balances, generating deposit addresses, sending and receiving crypto, managing fiat deposits and withdrawals, and querying market prices and exchange rates.
CBAppClient uses the same JWT-based CDP API keys as CBAdvancedTradeClient (ECDSA or ED25519). No apiPassphrase is required.
CBAppClient automatically injects a CB-VERSION header on every request, required by the Coinbase App API for versioning. You do not need to set this manually.
Retrieve wallet accounts that the current API key has access to. Results are paginated — use paginationURL from the response to fetch the next page.
Method
Description
getAccounts(params?)
List all accounts (paginated)
getAccount(params)
Get a single account by ID or currency
TypeScript
JavaScript
// First pageconst page1 = await client.getAccounts();// Next page using the pagination URL from the previous responseconst page2 = await client.getAccounts({ paginationURL: page1.pagination.next_uri,});// Get a specific accountconst account = await client.getAccount({ account_id: 'btc-account-uuid' });
// First pageconst page1 = await client.getAccounts();// Next page using the pagination URL from the previous responseconst page2 = await client.getAccounts({ paginationURL: page1.pagination.next_uri,});// Get a specific accountconst account = await client.getAccount({ account_id: 'btc-account-uuid' });
When paginationURL is provided, the SDK extracts the endpoint and query parameters from the URL automatically — you do not need to parse it manually.
// Get exchange rates relative to USD (default base)const rates = await client.getExchangeRates();// Or specify a different base currencyconst eurRates = await client.getExchangeRates({ currency: 'EUR' });
Several endpoints — getAccounts, getAddresses, getTransactions, getDeposits, and getWithdrawals — return a pagination object alongside the data array. Pass pagination.next_uri back as paginationURL to iterate through pages.
async function getAllAccounts(client) { const results = []; let paginationURL; do { const page = await client.getAccounts({ paginationURL }); results.push(...page.data); paginationURL = page.pagination.next_uri; } while (paginationURL); return results;}