Coinbase CDP
Coinbase Developer Platform v2 (wallets, EVM accounts, policies) and Advanced Trade API.
Authentication
This connector uses Token-based authentication.
info
Set up your connection in the Abstra Console before using it in your workflows.
How to use
Using the Smart Chat
Execute the action "CHOOSE_ONE_ACTION_BELOW" from my connector "YOUR_CONNECTOR_NAME" using the params "PARAMS_HERE".
Using the Web Editor
from abstra.connectors import run_connection_action
result = run_connection_action(
connection_name="your_connection_name",
action_name="your_action_name",
params={
"param1": "value1",
"param2": "value2"
})
Available Actions
This connector provides 222 actions:
| Action | Purpose | Parameters |
|---|---|---|
| cdp_v2/get_v2_accounts | List all accounts. The API will return all accounts that the API Key has Permissions to access. You can filter the results by using query parameters, which will be treated as a single conjunction i.e. AND. Results are sorted by creation date in descending order newest first. | pageSize (integer) pageToken (string) owner (array) type (string) |
| cdp_v2/post_v2_accounts | Create an account. Two ownership modes are supported: - Entity-owned: when owner is omitted, the account is owned by the Entity making the request. Returns an account with owner: entity_uuid. Omit compliance; it has no effect for Entity-owned accounts. - Customer-owned: pass a Customer ID as owner e.g. customer_af2937b0-9846-4fe7-bfe9-ccc22d935114. The Customer must have the custodyCrypto, custodyFiat, and custodyStablecoin capabilities enabled, otherwise the request is rejected with | X-Idempotency-Key (string) data: { . owner . name (string) . compliance (object) } (object) required |
| cdp_v2/get_v2_accounts_by_account_id | Get an account by its ID. | accountId (string) required |
| cdp_v2/get_v2_accounts_by_account_id_balances | List the balances for an account. Results are sorted by native-fiat equivalent balance in descending order. | accountId (string) required pageSize (integer) pageToken (string) |
| cdp_v2/get_v2_accounts_by_account_id_balances_by_asset | Get the balance for an account by asset. | accountId (string) required asset (string) required |
| cdp_v2/get_v2_coinbase_accounts_balances | Returns the balances held in the Coinbase account. The available amount is the immediately spendable balance. The total amount also includes funds currently on hold. Both amounts are returned as decimal strings with 2 decimal places e.g. '50.00'. Authentication: Requires a Coinbase OAuth Bearer token with the coinbase:stablecoins:balance-read scope. Returned assets: Currently always returns a single USDC entry. If the payer holds no USDC, the entry is still returned with an available and tota | No parameters |
| cdp_v2/post_v2_customers | Create a new customer record. You can optionally request capabilities and submit verification requirements in the same request. This endpoint supports creating a customer with: - Minimal data customer type only - Capability requests - KYC data submission - Combined request for capability and required info for verification | X-Idempotency-Key (string) data required |
| cdp_v2/get_v2_customers | List all customers. The API will return all customers that the API Key has permissions to access. Results are not returned in any guaranteed order. | pageSize (integer) pageToken (string) |
| cdp_v2/get_v2_customers_requirements | Preview the requirements a hypothetical customer of the given customerType and jurisdiction would need to satisfy to enable the requested capabilities, without creating a customer record. Partner onboarding UIs can use this to render the collection flow before any customer state exists. Today this endpoint only previews the Terms of Service requirement: the response's RequirementsMap will only ever contain a tos key. Other requirement families PII / CDD inputs are not yet available through this | customerType (string) required capabilities (array) required countryCode (string) citizenship (string) |
| cdp_v2/get_v2_customers_by_customer_id | Get a customer by their ID. Returns the full customer object. | customerId (string) required |
| cdp_v2/delete_v2_customers_by_customer_id | Initiates deletion of the customer and all associated data. This operation is idempotent — repeated calls for an already-deleted customer return 204. A 404 is returned only when no customer with the given ID exists for the caller's entity. | customerId (string) required X-Idempotency-Key (string) |
| cdp_v2/put_v2_customers_by_customer_id | Update customer information and/or request capability changes. This endpoint supports partial updates. Provide only the fields you wish to change. | customerId (string) required X-Idempotency-Key (string) data required |
| cdp_v2/get_v2_deposit_destinations | List deposit destinations. You can optionally filter the results by type, account ID, network, cryptocurrency address, or status. Results are sorted by creation date in descending order newest first. | accountId (string) address (string) type (string) network (string) status (string) pageSize (integer) pageToken (string) |
| cdp_v2/post_v2_deposit_destinations | Create a new deposit destination for an account. Two types are supported: - crypto public: provisions a cryptocurrency address on the requested network. The returned crypto.address is the deposit address; funds sent to it are credited to the target account in the specified asset. For Customer-owned accounts, the Customer must have the custodyCrypto and custodyStablecoin capabilities enabled. - fiat private-beta: provisions a bank account at a CDP banking partner. The server picks th | X-Idempotency-Key (string) data required |
| cdp_v2/get_v2_deposit_destinations_by_deposit_destination_id | Get a specific deposit destination by its ID. | depositDestinationId (string) required |
| cdp_v2/post_v2_transfers | Create a new transfer to move funds from a source to a target. All transfers first transition to quoted. If execute: false, the transfer stays quoted until you call /v2/transfers/transferId/execute. If execute: true, quoted status emits momentarily before the transfer moves to processing, where execution proceeds. Subscribe to the transfers webhook to follow progress in real time instead of polling. | X-Idempotency-Key (string) data: { . source . target . amount . asset . amountType (string) . validateOnly (boolean) . execute (boolean) . metadata (object) . travelRule } (object) required |
| cdp_v2/get_v2_transfers | List transfers for your organization. Use this to view and monitor your transfer activity. Sorting: Results are sorted by creation time in descending order newest first. Transfers with the same creation time are returned in a consistent order across pages. Status Filtering: Filter by specific status to efficiently manage transfers: ?status=processing - Monitor active transfers. ?status=quoted - Find transfers awaiting execution. ?status=failed - Review failed transfers for troubleshooting. | status (string) accountId (string) sourceAccountId (string) targetAccountId (string) createdAfter (string) createdBefore (string) updatedAfter (string) updatedBefore (string) sourceAsset (string) targetAsset (string) sourceAddress (string) targetAddress (string) targetEmail (string) transferId (string) pageSize (integer) pageToken (string) |
| cdp_v2/get_v2_transfers_by_transfer_id | Get a transfer by its ID. | transferId (string) required |
| cdp_v2/post_v2_transfers_by_transfer_id_execute | Executes a transfer which was created using the Create a transfer endpoint. | transferId (string) required X-Idempotency-Key (string) |
| cdp_v2/post_v2_transfers_by_transfer_id_travel_rule | Submit travel rule information for a deposit transfer held pending compliance review. Required fields vary by jurisdiction and may include originator name, address, date of birth, personal ID, and VASP information. If the submitted information satisfies all jurisdictional requirements, status will be completed and the transfer will proceed. Otherwise, status will be incomplete and missingFields will indicate which fields still need to be provided. | transferId (string) required X-Idempotency-Key (string) data: { . isSelf (boolean) . isIntermediary (boolean) . attestVerifiedWalletOwnership (boolean) . originator . beneficiary } (object) required |
| cdp_v2/post_v2_payment_sessions | Creates a payment session that defines what is being paid — amount, asset, and target. Optionally configure execution behavior, expiry deadlines, redirect URLs, and metadata. If expiry deadlines are omitted, sensible defaults are applied 1 day for authorization, 7 days for capture, 30 days for refund. Expiries must be in ascending order — see the expiries object for details and constraints. Returns the session in created status. Next step: call one of the authorization endpoints wallet or Coin | X-Idempotency-Key (string) data: { . amount (string) . asset . target . expiries (object) . redirect (object) . autoCapture (boolean) . externalReferenceId (string) . customerDisplay (object) . metadata (object) . compliance } (object) required |
| cdp_v2/get_v2_payment_sessions | Returns a paginated list of payment sessions that the API key has permission to access. | pageSize (integer) pageToken (string) |
| cdp_v2/get_v2_payment_sessions_by_payment_session_id | Retrieves a single payment session by its ID, including its current status, balances, and associated metadata. The API key must have permission to access the requested session. | paymentSessionId (string) required |
| cdp_v2/post_v2_payment_sessions_by_payment_session_id_cancel | Cancels a payment session before any funds have been authorized or captured. The session must be in created status. Cancel is blocked while any authorization action is pending. Once canceled, no further actions can be performed on the session. This is the only way to terminate a pre-authorization session — expiry deadlines block actions but do not automatically transition the session to a terminal state. | paymentSessionId (string) required X-Idempotency-Key (string) data: { . cancellationReason (string) } (object) required |
| cdp_v2/get_v2_payment_sessions_by_payment_session_id_authorizations_wallet_options | Returns the available wallet authorization options for a payment session. The session must be in created status. Provide one or more payer wallet addresses as query parameters. Each option specifies the currency, amount, network, and payloads the payer must sign to authorize the payment. Present the options to the payer and let them choose one, then call Authorize Wallet with the selected option. This is a stateless read operation — the session is not modified. If a requested address has no e | paymentSessionId (string) required addresses (array) required network (string) asset (string) |
| cdp_v2/post_v2_payment_sessions_by_payment_session_id_authorizations_wallet | Customer-initiated. Authorizes a payment session using the payer's wallet. The payer signs the payloads themselves, so this call is unauthenticated. The session must be in created status. The optionId must match one of the options returned by the Get Wallet Authorization Options endpoint. Include the signed payloads for the selected option. On authorization, a hold is placed on the payer's funds. The authorization is returned in pending status and transitions asynchronously to succeeded or fai | paymentSessionId (string) required X-Idempotency-Key (string) data: { . optionId (string) . signedPayloads (array) . metadata (object) . customerDisplay . externalReferenceId } (object) required |
| cdp_v2/post_v2_payment_sessions_by_payment_session_id_authorizations_x402 | Customer-initiated. Authorizes a payment session using x402. The payer supplies the payment payload, so this call is unauthenticated. The session must be in created status. The client sends no request body. You may supply the base64-encoded x402-compliant payment payload in the optional PAYMENT-SIGNATURE header. On authorization, a hold is placed on the payer's funds. The authorization is returned in pending status and transitions asynchronously to succeeded or failed. 402 Payment Required ma | paymentSessionId (string) required PAYMENT-SIGNATURE (string) X-External-Reference-Id X-Customer-Display-Reference-Code X-Idempotency-Key (string) |
| cdp_v2/post_v2_payment_sessions_by_payment_session_id_authorizations_coinbase | Merchant-initiated. The merchant charges the payer's Coinbase account using an OAuth grant the payer authorized earlier, so the payer does not need to be present at payment time. The session must be in created status. Authentication: Requires a Coinbase OAuth Bearer token with the coinbase:stablecoins:payment-create scope. On authorization, a hold is placed on the payer's funds. The authorization is returned in pending status and transitions asynchronously to succeeded or failed. If autoCaptu | paymentSessionId (string) required cb-authz-id (string) required X-Idempotency-Key (string) data: { . metadata (object) . customerDisplay . externalReferenceId } (object) required |
| cdp_v2/post_v2_payment_sessions_by_payment_session_id_authorizations_mandate | Merchant-initiated. The merchant draws against a mandate in approval_succeeded status using the mandate's existing approval, so no fresh signature is required and the customer does not need to be present. The session must be in created status and the mandate must be in approval_succeeded status. When more than one mandate condition applies, the first match wins: an in-flight approval or revocation returns 409 mandate_action_pending; revokedAt set returns 422 mandate_revoked; canceledAt set retur | paymentSessionId (string) required X-Idempotency-Key (string) data: { . mandateId . metadata (object) . customerDisplay . externalReferenceId } (object) required |
| cdp_v2/get_v2_payment_sessions_by_payment_session_id_authorizations | Returns a paginated list of authorizations for a payment session. Each authorization represents a hold on funds and includes its current status and amount. | paymentSessionId (string) required pageSize (integer) pageToken (string) |
| cdp_v2/get_v2_payment_sessions_by_payment_session_id_authorizations_by_authorization_id | Retrieves a single authorization by its ID, including its current status, amount, and any associated onchain transactions. | paymentSessionId (string) required authorizationId (string) required |
| cdp_v2/post_v2_payment_sessions_by_payment_session_id_captures | Captures authorized funds. The session must have a positive capturable balance and the captureExpiresAt deadline must not have passed. This is an asynchronous operation. The capture is returned in pending status and transitions to succeeded or failed. Multiple partial captures are allowed. If amount is omitted, the full remaining capturable amount is captured. | paymentSessionId (string) required X-Idempotency-Key (string) data: { . amount (string) . finalCapture (boolean) . metadata (object) . externalReferenceId . customerDisplay } (object) required |
| cdp_v2/get_v2_payment_sessions_by_payment_session_id_captures | Returns a paginated list of captures for a payment session. Each capture includes its status, amount, associated onchain transactions, and timestamps. Only captures accessible by the current API key are returned. | paymentSessionId (string) required pageSize (integer) pageToken (string) |
| cdp_v2/get_v2_payment_sessions_by_payment_session_id_captures_by_capture_id | Retrieves a single capture by its ID, including status, captured amount, associated onchain transactions, and timestamps. Only returns the capture if the API key has permission to access it. | paymentSessionId (string) required captureId (string) required |
| cdp_v2/post_v2_payment_sessions_by_payment_session_id_voids | Releases all remaining capturable funds back to the payer. The session must have a positive capturable balance. This is an asynchronous operation. The void is returned in pending status and transitions to succeeded or failed. After voiding, no further captures can be made. Unlike Cancel, which works before authorization, void works after authorization. | paymentSessionId (string) required X-Idempotency-Key (string) data: { . metadata (object) . externalReferenceId . customerDisplay } (object) required |
| cdp_v2/get_v2_payment_sessions_by_payment_session_id_voids | Returns a paginated list of voids for a payment session. Each void includes its status, amount, associated onchain transactions, and timestamps. Only voids accessible by the current API key are returned. | paymentSessionId (string) required pageSize (integer) pageToken (string) |
| cdp_v2/get_v2_payment_sessions_by_payment_session_id_voids_by_void_id | Retrieves a single void by its ID, including status, voided amount, associated onchain transactions, and timestamps. Only returns the void if the API key has permission to access it. | paymentSessionId (string) required voidId (string) required |
| cdp_v2/post_v2_payment_sessions_by_payment_session_id_refunds | Returns captured funds to the payer. The session must have a positive refundable balance and the refundExpiresAt deadline must not have passed. This is an asynchronous operation. The refund is returned in pending status and transitions to succeeded or failed. If amount is omitted, the full remaining refundable amount is refunded. Multiple partial refunds are supported. | paymentSessionId (string) required X-Idempotency-Key (string) data: { . source . amount (string) . reason (string) . metadata (object) . externalReferenceId . customerDisplay } (object) required |
| cdp_v2/get_v2_payment_sessions_by_payment_session_id_refunds | Returns a paginated list of refunds for a payment session. Each refund includes its status, amount, reason, associated onchain transactions, and timestamps. Only refunds accessible by the current API key are returned. | paymentSessionId (string) required pageSize (integer) pageToken (string) |
| cdp_v2/get_v2_payment_sessions_by_payment_session_id_refunds_by_refund_id | Retrieves a single refund by its ID, including status, refunded amount, reason, associated onchain transactions, and timestamps. Only returns the refund if the API key has permission to access it. | paymentSessionId (string) required refundId (string) required |
| cdp_v2/post_v2_mandates | Creates a mandate denominated in asset. Optionally set policy to cap debits; if omitted, a Coinbase-configured monthly max applies. The response always includes the resolved policy. Returns the mandate in created status with no source; it is not yet usable. Next step: have the customer approve it with Get wallet approval options then Approve a mandate with a wallet, which attaches the source and moves the mandate to approval_succeeded. A mandate's terms can't be modified once created. To chang | X-Idempotency-Key (string) data: { . asset . policy . expiresAt (string) . approvalRedirect . revocationRedirect . customerDisplay (object) . metadata (object) } (object) required |
| cdp_v2/get_v2_mandates | Returns a paginated list of mandates that the API key has permission to access. Filter by address the funding source, network, and status. | address (string) network (string) status (string) pageSize (integer) pageToken (string) |
| cdp_v2/get_v2_mandates_by_mandate_id | Retrieves a single mandate by its ID, including its current status, policy, and source. | mandateId (string) required |
| cdp_v2/post_v2_mandates_by_mandate_id_cancel | Ends the mandate off-chain. status becomes canceled, canceledAt is set, and new authorizations are blocked immediately; authorizations already in progress are not affected. Cancel can be called from any status except a fully revoked one revokedAt set; canceling an already canceled mandate is a no-op that returns the mandate unchanged. Canceling does not touch the on-chain spending allowance, which may still be live afterward. The customer removes it separately with Revoke a mandate with a walle | mandateId (string) required X-Idempotency-Key (string) data: { . reason (string) } (object) required |
| cdp_v2/get_v2_mandates_by_mandate_id_revocations | Returns all wallet revocations for the mandate, newest first. Each records an attempt to remove the spending allowance on-chain. A succeeded entry means the allowance has been removed. | mandateId (string) required pageSize (integer) pageToken (string) |
| cdp_v2/get_v2_mandates_by_mandate_id_revocations_by_revocation_id | Retrieves a single revocation by ID. | mandateId (string) required revocationId (string) required |
| cdp_v2/post_v2_mandates_by_mandate_id_revocations_wallet | Customer-initiated. Removes the mandate's spending allowance on-chain using the customer's signed payloads from Get wallet revocation options. The customer signs the payloads themselves, so this call is unauthenticated. The mandate must have an active allowance and no approval or revocation in flight. Returns a pending revocation and moves the mandate to revocation_pending. When the network transaction confirms, revokedAt is set and status becomes revocation_succeeded; if it does not complete, | mandateId (string) required X-Idempotency-Key (string) data: { . optionId (string) . signedPayloads (array) . reason (string) . metadata (object) } (object) required |
| cdp_v2/get_v2_mandates_by_mandate_id_revocations_wallet_options | Returns the payloads the customer must sign to remove the mandate's spending allowance on-chain. The mandate must have an active allowance approval succeeded, not yet revoked and no approval or revocation in flight. A canceled mandate can still be revoked while its allowance is live. Present the payloads to the customer to sign, then call Revoke a mandate with a wallet with the signed payloads. This is a stateless read operation and does not modify the mandate. The payloads embed fresh signing | mandateId (string) required |
| cdp_v2/get_v2_mandates_by_mandate_id_approvals | Returns the approvals for a mandate, most recent first. Each approval is an attempt to attach a funding source; inspect them to see why a mandate is not yet approval_succeeded: a pending attempt is still in progress, a failed one carries an error. | mandateId (string) required pageSize (integer) pageToken (string) |
| cdp_v2/get_v2_mandates_by_mandate_id_approvals_by_approval_id | Retrieves a single approval by its ID, including its current status, its onchainTransactions once submitted, and, when it failed, its error. Poll this after Approve a mandate with a wallet to follow a pending approval to succeeded or failed, or consume the mandate webhooks instead. | mandateId (string) required approvalId (string) required |
| cdp_v2/post_v2_mandates_by_mandate_id_approvals_wallet | Customer-initiated. Approves a mandate on a wallet source using the customer's signed payloads from Get wallet approval options. The customer signs the payloads themselves, so this call is unauthenticated. The mandate must be in created or approval_failed status, not expired, and have no approval or revocation in flight. Returns a pending approval and moves the mandate to approval_pending. On success the mandate's source is set and status becomes approval_succeeded; it can then be used by Autho | mandateId (string) required X-Idempotency-Key (string) data: { . optionId (string) . signedPayloads (array) . metadata (object) } (object) required |
| cdp_v2/get_v2_mandates_by_mandate_id_approvals_wallet_options | Returns the available wallet approval options for a mandate. The mandate must be in created or approval_failed status, not expired, and have no approval or revocation in flight. Provide one or more customer wallet addresses as query parameters. Each option specifies the network, asset, and payloads the customer must sign to approve the mandate. Present the options to the customer and let them choose one, then call Approve a mandate with a wallet with the selected option and its signed payloads. | mandateId (string) required addresses (array) required network (string) asset (string) |
| cdp_v2/post_v2_disbursements | Creates a merchant-initiated payment of funds from a CDP account owned by the merchant to a Coinbase user account or onchain address. Used for standalone refunds, goodwill disbursements, rebates, and other merchant-driven payouts that are not tied to a specific payment session. This is an asynchronous operation. The disbursement is returned in pending status and transitions to succeeded with associated onchainTransactions or failed with error. | X-Idempotency-Key (string) data: { . source . target . amount (string) . asset . reason (string) . externalReferenceId (string) . customerDisplay . metadata (object) . compliance } (object) required |
| cdp_v2/get_v2_disbursements | Returns a paginated list of disbursements created by the merchant. Each disbursement includes its source, target, status, amount, and timestamps. Only disbursements accessible by the current API key are returned. | pageSize (integer) pageToken (string) status (string) sourceAccountId (string) externalReferenceId (string) |
| cdp_v2/get_v2_disbursements_by_disbursement_id | Retrieves a single disbursement by its ID, including source, target, status, amount, associated onchain transactions, error details if failed, and timestamps. Only returns the disbursement if the API key has permission to access it. | disbursementId (string) required |
| cdp_v2/post_v2_end_users | Creates an end user. An end user is an entity that can own CDP EVM accounts, EVM smart accounts, and/or Solana accounts. 1 or more authentication methods must be associated with an end user. By default, no accounts are created unless the optional evmAccount and/or solanaAccount fields are provided. This API is intended to be used by the developer's own backend, and is authenticated using the developer's CDP API key. | X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . userId (string) . authenticationMethods (array) . evmAccount (object) . solanaAccount (object) } (object) required |
| cdp_v2/get_v2_end_users | Lists the end users belonging to the developer's CDP Project. By default, the response is sorted by creation date in ascending order and paginated to 20 users per page. | pageSize (integer) pageToken (string) sort (array) |
| cdp_v2/post_v2_end_users_auth_validate_token | Validates the end user's access token and returns the end user's information. Returns an error if the access token is invalid or expired. This API is intended to be used by the developer's own backend, and is authenticated using the developer's CDP API key. | data: { . accessToken (string) } (object) required |
| cdp_v2/get_v2_end_users_by_user_id | Gets an end user by ID. This API is intended to be used by the developer's own backend, and is authenticated using the developer's CDP API key. | userId (string) required |
| cdp_v2/get_v2_end_users_lookup | Looks up end users. Exactly one lookup type must be provided per request: - email: searches across all email-based authentication methods email, Google, Apple, GitHub. May return multiple end users if the same email address appears across different auth methods. - oauthProvider + oauthSubject: looks up a user by their OAuth provider and subject the sub claim from the provider's ID token. Both params must be provided together. - phoneNumber: looks up a user by their SMS-verified phone | email (string) oauthProvider (string) oauthSubject (string) phoneNumber (string) siweAddress (string) |
| cdp_v2/post_v2_end_users_by_user_id_evm | Adds a new EVM EOA account to an existing end user. End users can have up to 10 EVM accounts. This API is intended to be used by the developer's own backend, and is authenticated using the developer's CDP API key. | userId (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data (object) required |
| cdp_v2/post_v2_end_users_by_user_id_evm_smart_account | Creates an EVM smart account for an existing end user. The backend will create a new EVM EOA account to serve as the owner of the smart account. This API is intended to be used by the developer's own backend, and is authenticated using the developer's CDP API key. | userId (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . enableSpendPermissions (boolean) } (object) required |
| cdp_v2/post_v2_end_users_by_user_id_solana | Adds a new Solana account to an existing end user. End users can have up to 10 Solana accounts. This API is intended to be used by the developer's own backend, and is authenticated using the developer's CDP API key. | userId (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data (object) required |
| cdp_v2/post_v2_end_users_import | Imports an existing private key for an end user into the developer's CDP Project. The private key must be encrypted using the CDP SDK's encryption scheme before being sent to this endpoint. This API should be called from the CDP SDKhttps://github.com/coinbase/cdp-sdk to ensure that the associated private key is properly encrypted. This endpoint allows developers to import existing keys for their end users, supporting both EVM and Solana key types. The end user must have at least one authenticat | X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . userId (string) . authenticationMethods (array) . encryptedPrivateKey (string) . keyType (string) } (object) required |
| cdp_v2/get_v2_embedded_wallet_api_evm_borrow_products | Lists the borrow products available across all supported networks and protocols. If a network and/or protocol query parameter is supplied, then borrow products are filtered and returned accordingly. A borrow product is a protocol-native representation of a borrowable market, describing the venue that hosts it, the assets that can be borrowed or posted as collateral, and their collateral and debt capabilities. For example, a Morpho Blue market that lends USDC against cbBTC. | projectID (string) network (string) protocol (string) pageSize (integer) pageToken (string) |
| cdp_v2/get_v2_embedded_wallet_api_evm_borrow_products_by_borrow_product_id | Gets a single borrow product by its ID. The ID is a stable identifier that uniquely identifies a single borrow product based on the product's onchain parameters. A borrow product is a protocol-native representation of a borrowable market, describing the venue that hosts it and the assets that participate in it together with their collateral and debt capabilities. | borrowProductId (string) required projectID (string) |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_evm_sign_transaction | Signs a transaction with the given end user EVM account. The transaction should be serialized as a hex string using RLPhttps://ethereum.org/en/developers/docs/data-structures-and-encoding/rlp/. The transaction must be an EIP-1559 dynamic fee transactionhttps://github.com/ethereum/EIPs/blob/master/EIPS/eip-1559.md. The developer is responsible for ensuring that the unsigned transaction is valid, as the API will not validate the transaction. | userId (string) required X-Wallet-Auth (string) X-Idempotency-Key (string) X-Developer-Auth (string) projectID (string) data: { . address (string) . transaction (string) . walletSecretId (string) } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_evm_send_transaction | Signs a transaction with the given end user EVM account and sends it to the indicated supported network. This API handles nonce management and gas estimation, leaving the developer to provide only the minimal set of fields necessary to send the transaction. The transaction should be serialized as a hex string using RLPhttps://ethereum.org/en/developers/docs/data-structures-and-encoding/rlp/. The transaction must be an EIP-1559 dynamic fee transactionhttps://github.com/ethereum/EIPs/blob/master/ | userId (string) required X-Wallet-Auth (string) X-Idempotency-Key (string) X-Developer-Auth (string) projectID (string) data: { . address (string) . network (string) . walletSecretId (string) . transaction (string) } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_evm_by_address_send_by_asset | Sends USDC from an end user's EVM account EOA or Smart Account to a recipient address on a supported EVM network. This endpoint simplifies USDC transfers by automatically handling contract resolution, decimal conversion, gas estimation, and transaction encoding. The amount field accepts human-readable amounts as decimal strings e.g., '1.5', '25.50'. | userId (string) required address required asset required X-Wallet-Auth (string) X-Idempotency-Key (string) X-Developer-Auth (string) projectID (string) data: { . to . amount (string) . network (string) . useCdpPaymaster (boolean) . paymasterUrl . paymasterContext (object) . walletSecretId (string) } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_evm_sign_message | Signs an EIP-191https://eips.ethereum.org/EIPS/eip-191 message with the given end user EVM account. Per the specification, the message in the request body is prepended with 0x19 0x45 E thereum Signed Message:n' + lenmessage before being signed. | userId (string) required X-Wallet-Auth (string) X-Idempotency-Key (string) X-Developer-Auth (string) projectID (string) data: { . address (string) . message (string) . walletSecretId (string) } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_evm_sign_typed_data | Signs EIP-712https://eips.ethereum.org/EIPS/eip-712 typed data with the given end user EVM account. | userId (string) required X-Wallet-Auth (string) X-Idempotency-Key (string) X-Developer-Auth (string) projectID (string) data: { . address (string) . typedData (object) . walletSecretId (string) } (object) required |
| cdp_v2/get_v2_embedded_wallet_api_end_users_by_user_id_delegation | Returns the active delegation for the specified end user, if one exists. This operation can be performed by the end user themselves or by a developer using their API key. | userId (string) required projectID (string) |
| cdp_v2/delete_v2_embedded_wallet_api_end_users_by_user_id_delegation | Deprecation Notice: Prefer Revoke delegation for end user operation/revokeDelegationForEndUser POST /v2/embedded-wallet-api/end-users/userId/delegation/revoke, which takes the same request body. This DELETE path will be removed on 2026-10-22. Revokes all active delegations for the specified end user. This operation can be performed by the end user themselves or by a developer using their API key. | userId (string) required X-Wallet-Auth (string) X-Developer-Auth (string) X-Idempotency-Key (string) projectID (string) data: { . walletSecretId (string) } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_delegation_revoke | Revokes all active delegations for the specified end user. This operation can be performed by the end user themselves or by a developer using their API key. | userId (string) required X-Wallet-Auth (string) X-Developer-Auth (string) X-Idempotency-Key (string) projectID (string) data: { . walletSecretId (string) } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_address_by_address_delegation | Creates an account-scoped delegation that allows a developer to sign on behalf of an end user for a single blockchain account identified by its address for the specified duration. The end user must be authenticated to authorize this delegation. Multiple account-scoped delegations may exist concurrently for a single end user one per canonical account address. Account-scoped and user-scoped delegations cannot coexist for the same user. When the address corresponds to an EVM Smart Account, the dele | userId (string) required address (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) projectID (string) data: { . expiresAt (string) . walletSecretId (string) } (object) required |
| cdp_v2/get_v2_embedded_wallet_api_end_users_by_user_id_address_by_address_delegation | Returns the active account-scoped delegation for the specified end user account, if one exists. Useful for showing delegation status in a UI. When the address corresponds to an EVM Smart Account, this returns the delegation for the Smart Account's owner EOA. | userId (string) required address (string) required projectID (string) |
| cdp_v2/delete_v2_embedded_wallet_api_end_users_by_user_id_address_by_address_delegation | Deprecation Notice: Prefer Revoke account-scoped delegation for end user operation/revokeDelegationForEndUserAccount POST /v2/embedded-wallet-api/end-users/userId/address/address/delegation/revoke, which takes the same request body. This DELETE path will be removed on 2026-10-22. Revokes the active account-scoped delegation for the specified end user account. Other account-scoped delegations for the same user are unaffected. This operation can be performed by the end user themselves or by a | userId (string) required address (string) required X-Wallet-Auth (string) X-Developer-Auth (string) X-Idempotency-Key (string) projectID (string) data: { . walletSecretId (string) } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_address_by_address_delegation_revoke | Revokes the active account-scoped delegation for the specified end user account. Other account-scoped delegations for the same user are unaffected. This operation can be performed by the end user themselves or by a developer using their API key. When the address corresponds to an EVM Smart Account, this revokes the delegation for the Smart Account's owner EOA. | userId (string) required address (string) required X-Wallet-Auth (string) X-Developer-Auth (string) X-Idempotency-Key (string) projectID (string) data: { . walletSecretId (string) } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_evm_eip7702_delegation | Creates an EIP-7702 delegation for an end user's EVM EOA account, upgrading it with smart account capabilities. This endpoint: - Retrieves delegation artifacts from onchain - Signs the EIP-7702 authorization for delegation - Assembles and submits a Type 4 transaction - Creates an associated smart account object The delegation allows the EVM EOA to be used as a smart account, which enables batched transactions and gas sponsorship via paymaster. | userId (string) required X-Wallet-Auth (string) X-Idempotency-Key (string) X-Developer-Auth (string) projectID (string) data: { . address (string) . network (string) . enableSpendPermissions (boolean) . walletSecretId (string) } (object) required |
| cdp_v2/get_v2_embedded_wallet_api_end_users_by_user_id_evm_smart_accounts_by_address_user_operations_by_user_op_hash | Gets a user operation by its hash for an end user's EVM Smart Account. | userId (string) required address (string) required userOpHash (string) required projectID (string) |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_evm_smart_accounts_by_address_send | Prepares, signs, and sends a user operation for an end user's Smart Account. | userId (string) required address (string) required X-Idempotency-Key (string) X-Wallet-Auth (string) X-Developer-Auth (string) projectID (string) data: { . network (string) . calls (array) . useCdpPaymaster (boolean) . paymasterUrl . paymasterContext (object) . walletSecretId (string) . dataSuffix (string) } (object) required |
| cdp_v2/get_v2_embedded_wallet_api_end_users_by_user_id_evm_smart_accounts_by_address_borrow_positions | Lists the borrow positions held by an end user smart account, with the live onchain state of each position read at a point-in-time snapshot. A borrow position represents collateral posted and a loan borrowed against it in a borrow product, such as a Morpho Blue market that lends USDC against cbBTC. Each position reports its current collateral and debt balances, its health factor, and its health status. Returns an empty list if the smart account has no borrow positions. | userId (string) required address (string) required pageSize (integer) pageToken (string) projectID (string) |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_evm_smart_accounts_by_address_borrow_positions | Creates a borrow position for a specific borrow product, by posting collateral from an end user smart account and borrowing a loan against it. One position can be opened per borrow product for a given smart account. A borrow product is a protocol-native representation of a borrowable market, such as a Morpho Blue market that lends USDC against cbBTC. The borrowProductId identifies the product to borrow against, and the collateralAmount and loanAmount specify the collateral to post and the loan t | userId (string) required address (string) required X-Wallet-Auth (string) required projectID (string) data: { . borrowProductId (string) . collateralAmount . loanAmount . walletSecretId (string) . useCdpPaymaster (boolean) . paymasterUrl . paymasterContext } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_evm_smart_accounts_by_address_borrow_positions_adjust | Adjusts an existing borrow position for a specific borrow product by supplying collateral, withdrawing collateral, repaying debt, and/or borrowing more of the loan asset from an end user smart account. The borrowProductId identifies the product whose position to adjust, and the addCollateralAmount, removeCollateralAmount, repayLoanAmount, and borrowLoanAmount fields specify the changes to apply, each expressed as a decimal string in standard unit denomination of the respective token. A single re | userId (string) required address (string) required X-Wallet-Auth (string) required projectID (string) data: { . borrowProductId (string) . addCollateralAmount . removeCollateralAmount . repayLoanAmount . borrowLoanAmount . walletSecretId (string) . useCdpPaymaster (boolean) . paymasterUrl . paymasterContext } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_evm_smart_accounts_by_address_borrow_positions_close | Closes an end user smart account's borrow position by fully repaying its outstanding loan and withdrawing all remaining collateral back to the smart account, in a single user operation. A borrow position is identified by the smart account address and the borrowProductId in the request body, since a smart account holds at most one position per borrow product. Closing repays the entire accrued debt and withdraws the full collateral balance; there is no partial close. To adjust a position without c | userId (string) required address (string) required X-Wallet-Auth (string) required projectID (string) data: { . borrowProductId (string) . walletSecretId (string) . useCdpPaymaster (boolean) . paymasterUrl . paymasterContext } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_solana_sign_message | Signs an arbitrary Base64 encoded message with the given Solana account. WARNING: Never sign a message that you didn't generate as it may put your funds at risk. | userId (string) required X-Wallet-Auth (string) X-Idempotency-Key (string) X-Developer-Auth (string) projectID (string) data: { . address (string) . message (string) . walletSecretId (string) } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_solana_sign_transaction | Signs a transaction with the given end user Solana account. The unsigned transaction should be serialized into a byte array and then encoded as base64. Transaction types The following transaction types are supported: Legacy transactionshttps://solana-labs.github.io/solana-web3.js/classes/Transaction.html Versioned transactionshttps://solana-labs.github.io/solana-web3.js/classes/VersionedTransaction.html The developer is responsible for ensuring that the unsigned transaction is valid, as the AP | userId (string) required X-Wallet-Auth (string) X-Idempotency-Key (string) X-Developer-Auth (string) projectID (string) data: { . address (string) . network (string) . transaction (string) . walletSecretId (string) } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_solana_sign_x402_payment | Signs an x402 payment payload using the end user's given Solana account. Accepts the full x402 payment required response body from a resource server plus an index into the accepts array selecting which payment option to sign. The paymentRequired envelope's x402Version, resource, and extensions are carried through into the signed payment payload; only the selected accept entry becomes paymentPayload.accepted. Returns a signed payment payload that can be base64-encoded and sent in the PAYMENT-SIGN | userId (string) required X-Wallet-Auth (string) X-Idempotency-Key (string) X-Developer-Auth (string) projectID (string) data: { . paymentRequired . acceptsIndex (integer) . address (string) . walletSecretId (string) } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_solana_send_transaction | Signs a transaction with the given end user Solana account and sends it to the indicated supported network. The API handles recent blockhash management and fee estimation, leaving the developer to provide only the minimal set of fields necessary to send the transaction. The unsigned transaction should be serialized into a byte array and then encoded as base64. Transaction types The following transaction types are supported: Legacy transactionshttps://solana.com/developers/guides/advanced/versio | userId (string) required X-Wallet-Auth (string) X-Idempotency-Key (string) X-Developer-Auth (string) projectID (string) data: { . address (string) . network (string) . walletSecretId (string) . transaction (string) . useCdpSponsor (boolean) } (object) required |
| cdp_v2/post_v2_embedded_wallet_api_end_users_by_user_id_solana_by_address_send_by_asset | Sends USDC from an end user's Solana account to a recipient address on the Solana network. This endpoint simplifies USDC transfers by automatically handling mint resolution, Associated Token Account ATA creation, decimal conversion, and transaction encoding. The amount field accepts human-readable amounts as decimal strings e.g., '1.5', '25.50'. Use the optional createRecipientAta parameter to control whether the sender pays for creating the recipient's Associated Token Account if it doesn't exi | userId (string) required address required asset required X-Wallet-Auth (string) X-Idempotency-Key (string) X-Developer-Auth (string) projectID (string) data: { . to . amount (string) . network (string) . createRecipientAta (boolean) . walletSecretId (string) . useCdpSponsor (boolean) } (object) required |
| cdp_v2/get_v2_evm_accounts | Lists the EVM accounts belonging to the developer's CDP Project. The response is paginated, and by default, returns 20 accounts per page. | pageSize (integer) pageToken (string) |
| cdp_v2/post_v2_evm_accounts | Creates a new EVM account. | X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . name (string) . accountPolicy (string) } (object) required |
| cdp_v2/get_v2_evm_accounts_by_address | Gets an EVM account by its address. | address (string) required |
| cdp_v2/put_v2_evm_accounts_by_address | Updates an existing EVM account. Use this to update the account's name or account-level policy. | address (string) required X-Idempotency-Key (string) data: { . name (string) . accountPolicy (string) } (object) required |
| cdp_v2/get_v2_evm_accounts_by_name_by_name | Gets an EVM account by its name. | name (string) required |
| cdp_v2/post_v2_evm_accounts_by_address_send_transaction | Signs a transaction with the given EVM account and sends it to the indicated supported network. This API handles nonce management and gas estimation, leaving the developer to provide only the minimal set of fields necessary to send the transaction. The transaction should be serialized as a hex string using RLPhttps://ethereum.org/en/developers/docs/data-structures-and-encoding/rlp/. The transaction must be an EIP-1559 dynamic fee transactionhttps://github.com/ethereum/EIPs/blob/master/EIPS/eip- | address (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . network (string) . transaction (string) } (object) required |
| cdp_v2/post_v2_evm_accounts_by_address_sign_transaction | Signs a transaction with the given EVM account. The transaction should be serialized as a hex string using RLPhttps://ethereum.org/en/developers/docs/data-structures-and-encoding/rlp/. The transaction must be an EIP-1559 dynamic fee transactionhttps://github.com/ethereum/EIPs/blob/master/EIPS/eip-1559.md. The developer is responsible for ensuring that the unsigned transaction is valid, as the API will not validate the transaction. | address (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . transaction (string) } (object) required |
| cdp_v2/post_v2_evm_accounts_by_address_sign | Signs an arbitrary 32 byte hash with the given EVM account. | address (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . hash (string) } (object) required |
| cdp_v2/post_v2_evm_accounts_by_address_sign_message | Signs an EIP-191https://eips.ethereum.org/EIPS/eip-191 message with the given EVM account. Per the specification, the message in the request body is prepended with 0x19 0x45 E thereum Signed Message:n' + lenmessage before being signed. | address (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . message (string) } (object) required |
| cdp_v2/post_v2_evm_accounts_by_address_sign_typed_data | Signs EIP-712https://eips.ethereum.org/EIPS/eip-712 typed data with the given EVM account. | address (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . domain (object) . types (object) . primaryType (string) . message (object) } (object) required |
| cdp_v2/post_v2_evm_accounts_by_address_eip7702_delegation | Creates an EIP-7702 delegation for an EVM EOA account, upgrading it with smart account capabilities. This endpoint: - Retrieves delegation artifacts from onchain - Signs the EIP-7702 authorization for delegation - Assembles and submits a Type 4 transaction - Creates an associated smart account object The delegation allows the EVM EOA to be used as a smart account, which enables batched transactions and gas sponsorship via paymaster. | address (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . network (string) . enableSpendPermissions (boolean) } (object) required |
| cdp_v2/get_v2_evm_eip7702_delegation_operations_by_delegation_operation_id | Returns the EIP-7702 delegation operation. Use the delegationOperationId returned by the Create EIP-7702 delegation endpoint to poll for operation completion. | delegationOperationId (string) required |
| cdp_v2/get_v2_evm_smart_accounts | Lists the Smart Accounts belonging to the developer's CDP Project. The response is paginated, and by default, returns 20 accounts per page. | pageSize (integer) pageToken (string) |
| cdp_v2/post_v2_evm_smart_accounts | Creates a new Smart Account. | X-Idempotency-Key (string) data: { . owners (array) . name (string) } (object) required |
| cdp_v2/get_v2_evm_smart_accounts_by_name_by_name | Gets a Smart Account by its name. | name (string) required |
| cdp_v2/post_v2_evm_accounts_import | Import an existing EVM account into the developer's CDP Project. This API should be called from the CDP SDKhttps://github.com/coinbase/cdp-sdk to ensure that the associated private key is properly encrypted. | X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . encryptedPrivateKey (string) . name (string) . accountPolicy (string) } (object) required |
| cdp_v2/post_v2_evm_accounts_by_address_export | Export an existing EVM account's private key. It is important to store the private key in a secure place after it's exported. | address (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . exportEncryptionKey (string) } (object) required |
| cdp_v2/post_v2_evm_accounts_export_by_name_by_name | Export an existing EVM account's private key by its name. It is important to store the private key in a secure place after it's exported. | name (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . exportEncryptionKey (string) } (object) required |
| cdp_v2/get_v2_evm_smart_accounts_by_address | Gets a Smart Account by its address. | address (string) required |
| cdp_v2/put_v2_evm_smart_accounts_by_address | Updates an existing EVM smart account. Use this to update the smart account's name. | address (string) required data: { . name (string) } (object) required |
| cdp_v2/post_v2_evm_smart_accounts_by_address_user_operations | Prepares a new user operation on a Smart Account for a specific network. | address (string) required data: { . network (string) . calls (array) . paymasterUrl . paymasterContext (object) . dataSuffix (string) } (object) required |
| cdp_v2/post_v2_evm_smart_accounts_by_address_user_operations_prepare_and_send | Prepares, signs, and sends a user operation for an EVM Smart Account. This API can be used only if the owner on Smart Account is a CDP EVM Account. | address (string) required X-Idempotency-Key (string) X-Wallet-Auth (string) required data: { . network (string) . calls (array) . paymasterUrl . paymasterContext (object) } (object) required |
| cdp_v2/get_v2_evm_smart_accounts_by_address_user_operations_by_user_op_hash | Gets a user operation by its hash. | address (string) required userOpHash (string) required |
| cdp_v2/post_v2_evm_smart_accounts_by_address_user_operations_by_user_op_hash_send | Sends a user operation with a signature. The payload to sign must be the userOpHash field of the user operation. This hash should be signed directly not using personal_sign or EIP-191 message hashing. The signature must be 65 bytes in length, consisting of: - 32 bytes for the r value - 32 bytes for the s value - 1 byte for the v value must be 27 or 28 If using the CDP Paymaster, the user operation must be signed and sent within 2 minutes of being prepared. | address (string) required userOpHash (string) required data: { . signature (string) } (object) required |
| cdp_v2/post_v2_evm_smart_accounts_by_address_spend_permissions | Creates a spend permission for the given smart account address. | address (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . network (string) . spender (string) . token (string) . allowance (string) . period (string) . start (string) . end (string) . salt (string) . extraData (string) . paymasterUrl } (object) required |
| cdp_v2/get_v2_evm_smart_accounts_by_address_spend_permissions_list | Lists spend permission for the given smart account address. | address (string) required pageSize (integer) pageToken (string) |
| cdp_v2/post_v2_evm_smart_accounts_by_address_spend_permissions_revoke | Revokes an existing spend permission. | address (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . network (string) . permissionHash (string) . paymasterUrl } (object) required |
| cdp_v2/get_v2_evm_swaps_quote | Get a price estimate for a swap between two tokens on an EVM network. | network (string) required toToken (string) required fromToken (string) required fromAmount (string) required taker (string) required signerAddress (string) gasPrice (string) slippageBps (integer) |
| cdp_v2/post_v2_evm_swaps | Create a swap quote, which includes the payload to sign as well as the transaction data needed to execute the swap. The developer is responsible for signing the payload and submitting the transaction to the network in order to execute the swap. | X-Idempotency-Key (string) data: { . network (string) . toToken (string) . fromToken (string) . fromAmount (string) . taker (string) . signerAddress (string) . gasPrice (string) . slippageBps (integer) } (object) required |
| cdp_v2/get_v2_evm_token_balances_by_network_by_address | Lists the token balances of an EVM address on a given network. The balances include ERC-20 tokens and the native gas token usually ETH. The response is paginated, and by default, returns 20 balances per page. Calls to the base and base-sepolia networks offer: 99.5% 2 second freshness from chain tip for new tokens on an address. 99.5% 2 second freshness from chain tip for balance data. Calls to the ethereum network offer: 99% 30 second freshness from chain tip for new tokens on an a | address (string) required network (string) required pageSize (integer) pageToken (string) |
| cdp_v2/post_v2_evm_faucet | Request funds from the CDP Faucet on supported EVM test networks. Faucets are available for ETH, USDC, EURC, and cbBTC on Base Sepolia and Ethereum Sepolia, and for ETH only on Ethereum Hoodi. To prevent abuse, we enforce rate limits within a rolling 24-hour window to control the amount of funds that can be requested. These limits are applied at both the CDP User level and the blockchain address level. A single blockchain address cannot exceed the specified limits, even if multiple users submi | data: { . network (string) . address (string) . token (string) } (object) required |
| cdp_v2/get_v2_policy_engine_policies | Lists the policies belonging to the developer's CDP Project. Use the scope parameter to filter the policies by scope. The response is paginated, and by default, returns 20 policies per page. | pageSize (integer) pageToken (string) scope (string) |
| cdp_v2/post_v2_policy_engine_policies | Create a policy that can be used to govern the behavior of accounts. | X-Idempotency-Key (string) data: { . scope (string) . description (string) . rules (array) } (object) required |
| cdp_v2/get_v2_policy_engine_policies_by_policy_id | Get a policy by its ID. | policyId (string) required |
| cdp_v2/delete_v2_policy_engine_policies_by_policy_id | Delete a policy by its ID. This will have the effect of removing the policy from all accounts that are currently using it. | policyId (string) required X-Idempotency-Key (string) |
| cdp_v2/put_v2_policy_engine_policies_by_policy_id | Updates a policy by its ID. This will have the effect of applying the updated policy to all accounts that are currently using it. | policyId (string) required X-Idempotency-Key (string) data: { . description (string) . rules (array) } (object) required |
| cdp_v2/get_v2_solana_accounts | Lists the Solana accounts belonging to the developer. The response is paginated, and by default, returns 20 accounts per page. If a name is provided, the response will contain only the account with that name. | pageSize (integer) pageToken (string) |
| cdp_v2/post_v2_solana_accounts | Creates a new Solana account. | X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . name (string) . accountPolicy (string) } (object) required |
| cdp_v2/get_v2_solana_accounts_by_address | Gets a Solana account by its address. | address (string) required |
| cdp_v2/put_v2_solana_accounts_by_address | Updates an existing Solana account. Use this to update the account's name or account-level policy. | address (string) required X-Idempotency-Key (string) data: { . name (string) . accountPolicy (string) } (object) required |
| cdp_v2/get_v2_solana_accounts_by_name_by_name | Gets a Solana account by its name. | name (string) required |
| cdp_v2/post_v2_solana_accounts_import | Import an existing Solana account into the developer's CDP Project. This API should be called from the CDP SDKhttps://github.com/coinbase/cdp-sdk to ensure that the associated private key is properly encrypted. | X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . encryptedPrivateKey (string) . name (string) } (object) required |
| cdp_v2/post_v2_solana_accounts_by_address_export | Export an existing Solana account's private key. It is important to store the private key in a secure place after it's exported. | address (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . exportEncryptionKey (string) } (object) required |
| cdp_v2/post_v2_solana_accounts_export_by_name_by_name | Export an existing Solana account's private key by its name. It is important to store the private key in a secure place after it's exported. | name (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . exportEncryptionKey (string) } (object) required |
| cdp_v2/post_v2_solana_accounts_by_address_sign_transaction | Signs a transaction with the given Solana account. The unsigned transaction should be serialized into a byte array and then encoded as base64. Transaction types The following transaction types are supported: Legacy transactionshttps://solana-labs.github.io/solana-web3.js/classes/Transaction.html Versioned transactionshttps://solana-labs.github.io/solana-web3.js/classes/VersionedTransaction.html The developer is responsible for ensuring that the unsigned transaction is valid, as the API will | address (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . network (string) . transaction (string) } (object) required |
| cdp_v2/post_v2_solana_accounts_by_address_sign_message | Signs an arbitrary message with the given Solana account. WARNING: Never sign a message that you didn't generate, as it can be an arbitrary transaction. For example, it might send all of your funds to an attacker. | address (string) required X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . message (string) . encoding (string) } (object) required |
| cdp_v2/post_v2_solana_accounts_send_transaction | Signs and sends a single Solana transaction using multiple Solana accounts. The transaction may contain contain several instructions, each of which may require signatures from different account keys. The transaction should be serialized into a byte array and base64 encoded. The API handles recent blockhash management and fee estimation, leaving the developer to provide only the minimal set of fields necessary to send the transaction. Transaction types The following transaction types are suppo | X-Wallet-Auth (string) required X-Idempotency-Key (string) data: { . network (string) . transaction (string) . useCdpSponsor (boolean) } (object) required |
| cdp_v2/post_v2_solana_faucet | Request funds from the CDP Faucet on Solana devnet. Faucets are available for SOL, USDC, and CBTUSD. To prevent abuse, we enforce rate limits within a rolling 24-hour window to control the amount of funds that can be requested. These limits are applied at both the CDP Project level and the blockchain address level. A single blockchain address cannot exceed the specified limits, even if multiple users submit requests to the same address. | Token | Amount per Faucet Request |Rolling 24-hour wi | data: { . address (string) . token (string) } (object) required |
| cdp_v2/get_v2_solana_token_balances_by_network_by_address | Lists the token balances of a Solana address on a given network. The balances include SPL tokens and the native SOL token. The response is paginated, and by default, returns 20 balances per page. Note: This endpoint is still under development and does not yet provide strong availability or freshness guarantees. Freshness and availability of new token balances will improve over the coming weeks. | address (string) required network (string) required pageSize (integer) pageToken (string) |
| cdp_v2/post_v2_data_query_run | Run a read-only SQL query against indexed blockchain data including transactions, events, and decoded logs. This endpoint provides direct SQL access to comprehensive blockchain data across supported networks. Queries are executed against optimized data structures for high-performance analytics. Allowed Queries - Standard SQL syntax CoinbaSeQL dialect, based on ClickHouse dialect - Read-only queries SELECT statements - No DDL or DML operations - Query that follow limits defined be | data: { . sql (string) . cache (object) } (object) required |
| cdp_v2/get_v2_data_query_grammar | Retrieve the SQL grammar for the SQL API. The SQL queries that are supported by the SQL API are defined in ANTLR4 grammar which is evaluated by server before executing the query. This ensures the safety and soundness of the SQL query before execution. This endpoint returns the ANTLR4 grammar that is used to evaluate the SQL queries so that developers can understand the SQL API and build SQL queries with high confidence and correctness. LLMs interact well with ANTLR4 grammar. You can feed the | No parameters |
| cdp_v2/get_v2_data_query_schema | Retrieve the schema information for the available tables in the SQL API's indexed data. This includes table names, column definitions, data types, and indexed fields. | database (string) table (string) |
| cdp_v2/get_v2_data_evm_token_ownership_by_network_by_address | Retrieve all ERC-20 token contract addresses that an account has ever received tokens from. Analyzes transaction history to discover token interactions. | network (string) required address (string) required |
| cdp_v2/get_v2_data_evm_token_balances_by_network_by_address | Lists the token balances of an EVM address on a given network. The balances include ERC-20 tokens and the native gas token usually ETH. The response is paginated, and by default, returns 20 balances per page. Calls to the base and base-sepolia networks offer: 99.5% 2 second freshness from chain tip for new tokens on an address. 99.5% 2 second freshness from chain tip for balance data. Calls to the ethereum network offer: 99% 30 second freshness from chain tip for new tokens on an a | address (string) required network (string) required pageSize (integer) pageToken (string) |
| cdp_v2/get_v2_data_webhooks_subscriptions | Retrieve a paginated list of webhook subscriptions for the authenticated project. Returns subscriptions for all CDP product events onchain, onramp/offramp, wallet, etc. in descending order by creation time. Use Cases - Monitor all active webhook subscriptions across CDP products - Audit webhook configurations - Manage subscription lifecycle | pageSize (integer) pageToken (string) |
| cdp_v2/post_v2_data_webhooks_subscriptions | Subscribe to real-time events across CDP products. A webhook subscription provides a targetURL and other relevant endpoint configuration to enable receiving webhooks when events occur. An entity can have up to 100 webhook subscriptions. Once this limit is reached, new webhook subscription creation requests return a 400 error with errorType: subscription_limit_exceeded. Webhook Signature Verification All webhooks include an HMAC-SHA256 signed header for security. The signature is signed wi | data: { . description (string) . eventTypes (array) . isEnabled (boolean) . target (object) . metadata (object) . labels (object) } (object) required |
| cdp_v2/get_v2_data_webhooks_subscriptions_by_subscription_id | Retrieve detailed information about a specific webhook subscription including configuration, status, creation timestamp, and webhook signature secret. Response Includes - Subscription configuration and filters - Target URL and custom headers - Webhook signature secret for verification - Creation timestamp and status | subscriptionId (string) required |
| cdp_v2/put_v2_data_webhooks_subscriptions_by_subscription_id | Update an existing webhook subscription's configuration including event types, target URL, filtering criteria, and enabled status. All required fields must be provided, even if they are not being changed. Common Updates - Change target URL or headers - Add/remove event type filters - Update multi-label filtering criteria - Enable/disable subscription | subscriptionId (string) required data: { . description (string) . eventTypes (array) . isEnabled (boolean) . target (object) . metadata (object) . labels (object) } (object) required |
| cdp_v2/delete_v2_data_webhooks_subscriptions_by_subscription_id | Permanently delete a webhook subscription and stop all event deliveries. This action cannot be undone. Important Notes - All webhook deliveries will cease immediately - Subscription cannot be recovered after deletion - Consider disabling instead of deleting for temporary pauses | subscriptionId (string) required |
| cdp_v2/get_v2_data_webhooks_subscriptions_by_subscription_id_events | Retrieve webhook event delivery attempts for a specific subscription. Returns event deliveries in descending order by creation time newest first, including delivery status, retry count, and response details. Use Cases - Debug webhook delivery failures and inspect response codes - Monitor delivery status and retry counts - Audit event delivery history for a subscription - Verify that expected events were sent to webhook URLs Filtering Use optional query parameters to narrow results: - e | subscriptionId (string) required eventId (string) minCreatedAt (string) maxCreatedAt (string) eventTypeNames (string) |
| cdp_v2/post_v2_x402_verify | Verify an x402 protocol payment with a specific scheme and network. | data: { . x402Version (integer) . paymentPayload (object) . paymentRequirements (object) } (object) required |
| cdp_v2/post_v2_x402_settle | Settle an x402 protocol payment with a specific scheme and network. | data: { . x402Version (integer) . paymentPayload (object) . paymentRequirements (object) } (object) required |
| cdp_v2/get_v2_x402_supported | Get the supported x402 protocol payment schemes and networks that the facilitator is able to verify and settle payments for. | No parameters |
| cdp_v2/get_v2_x402_discovery_resources | Lists all active discovered x402 resources. This endpoint returns resources that have been discovered and cached by the x402 facilitator, including their payment requirements and metadata. The response is paginated, and by default, returns 100 items per page. | type (string) limit (integer) offset (integer) |
| cdp_v2/get_v2_x402_discovery_merchant | Gets x402 merchant discovery information for a given merchant payment address. This endpoint returns all active x402 resources associated with the specified payTo address, allowing clients to discover what payment-gated resources a merchant exposes and their corresponding payment requirements. If no active resources are found for the payTo address, the endpoint returns an empty resources list. The response is paginated, and by default, returns 20 items per page. | payTo (string) required limit (integer) offset (integer) |
| cdp_v2/get_v2_x402_discovery_search | Searches for active x402 resources using a text query and optional filters. Supports both text-based and vector-based search depending on availability. Results are sorted by relevance and quality score. Legacy network names e.g., base, base-sepolia, solana are automatically normalized to their CAIP-2 equivalents. The response is limited to 20 items per request. If more results exist, partialResults will be true. | query (string) network (string) asset (string) scheme (string) payTo (string) urlSubstring (string) maxUsdPrice (string) extensions (array) tags (array) bundleSlugs (array) curatedOnly (boolean) limit (integer) |
| cdp_v2/post_v2_x402_discovery_mcp | Handles JSON-RPC requests for the Model Context Protocol MCP. Supports MCP methods for discovering x402 payment resources and tools. | data: { . jsonrpc (string) . id . method (string) . params (object) } (object) required |
| cdp_v2/get_v2_x402_discovery_bundles | Lists the available curated x402 workflow bundles. A bundle is an ordered, named grouping of curated x402 resources that together cover a common agent workflow. The result set is small and server-controlled, so this endpoint is not paginated. | No parameters |
| cdp_v2/get_v2_x402_discovery_bundles_by_bundle_slug | Gets a single curated x402 workflow bundle by its bundle slug, including the bundle metadata and its ordered member resources joined to their full discovery metadata. | bundleSlug (string) required |
| cdp_v2/post_v2_x402_validate | Validates an x402 endpoint's bazaar-discovery configuration by probing the seller's URL live. Returns a uniform array of preflight check results reachable, returns402, hasBazaarExtension, parse and a simulated facilitator accept/reject decision so sellers and agents can confirm their endpoint is ready to be discovered before going live. This operation is read-only: it performs no payment and does not index the resource. | data: { . resource . method (string) } (object) required |
| cdp_v2/post_v2_onramp_verifications | Initiates OTP verification by sending a 6-digit code to the user via the specified channel SMS or email. Returns a verificationId that must be passed to the Submit Onramp Verification endpoint along with the OTP code within 10 minutes. Access to this API requires allowlisting. During Onramp Headless API onboarding, contact the Onramp team to enable Onramp-managed verification for your application. | X-Idempotency-Key (string) data: { . channel (string) . destination } (object) required |
| cdp_v2/post_v2_onramp_verifications_by_verification_id_submit | Submits the OTP code to complete verification. On success, marks the verification as verified and returns the same verificationId. The destination does not need to be re-sent. Onramp uses the value captured at initiation time. The returned verificationId should be stored on the user's device and passed to the Create Onramp Order endpoint. It is valid for 60 days. Access to this API requires allowlisting. During Onramp Headless API onboarding, contact the Onramp team to enable Onramp-managed ve | verificationId (string) required X-Idempotency-Key (string) data: { . otpCode (string) } (object) required |
| cdp_v2/post_v2_onramp_orders | Create a new Onramp order or get a quote for an Onramp order. Either paymentAmount or purchaseAmount must be provided. This API supports two modes: Headless mode standard: returns a seamless Apple Pay or Google Pay button that you integrate directly into your app. Your app collects and verifies the user's contact details before calling this endpoint — phoneNumber, email, phoneNumberVerifiedAt, and agreementAcceptedAt are required and enforced server-side. Embedded mode: returns a webview that | X-Onramp-Partner-Id (string) data: { . agreementAcceptedAt (string) . destinationAddress . destinationNetwork (string) . email (string) . isQuote (boolean) . partnerOrderRef (string) . partnerUserRef (string) . paymentAmount (string) . paymentCurrency (string) . paymentMethod (string) . phoneNumber (string) . phoneNumberVerifiedAt (string) . smsVerificationId . emailVerificationId . purchaseAmount (string) . purchaseCurrency (string) . clientIp (string) . domain (string) . locale (string) . userAuthToken } (object) required |
| cdp_v2/get_v2_onramp_orders_by_order_id | Get an onramp order by ID. | orderId (string) required |
| cdp_v2/post_v2_onramp_sessions | Returns a single-use URL for an Onramp session. This API provides flexible functionality based on the parameters provided, supporting three cases: Important: The returned URL is single-use only. Once a user visits the URL, no one else can access it. Use Cases 1. Basic Session Minimum Parameters Required: destinationAddress, purchaseCurrency, destinationNetwork Returns: Basic single-use onramp URL. The quote object will not be included in the response. 2. One-Click Onramp URL Requi | X-Onramp-Partner-Id (string) data: { . purchaseCurrency (string) . destinationNetwork (string) . destinationAddress . paymentAmount (string) . purchaseAmount (string) . paymentCurrency (string) . paymentMethod (string) . country (string) . subdivision (string) . redirectUrl . clientIp (string) . partnerUserRef (string) } (object) required |
| cdp_v2/post_v2_onramp_limits | Returns the transaction limits for an onramp user based on their payment method and user identifier. Use this API to show users their remaining purchase capacity before initiating an onramp transaction. Currently supports GUEST_CHECKOUT_APPLE_PAY payment method with phone number identification. The phone number must have been previously verified via OTP. | data: { . paymentMethodType (string) . userId (string) . userIdType (string) } (object) required |
| cdp_v2/post_v2_onramp_limits_upgrade | Requests a limit upgrade for an onramp user. Only phone number is currently supported as a userId. The default API mode submits identity information directly and returns HTTP 202 when the request is accepted. Embedded mode interactionMode: embedded returns a Coinbase-hosted upgradeUrl where the user enters identity information. The verification process is asynchronous. After calling this endpoint, use the Get Onramp User Limitshttps://docs.cdp.coinbase.com/api-reference/v2/rest-api/onramp/get- | data: { . userId (string) . userIdType (string) . interactionMode . fields (object) } (object) required |
| cdp_v2/get_v2_payment_methods | List payment methods linked to your entity. Payment methods represent external financial instruments that can be used as a target for transfers. The list will not include disabled or deleted payment methods. Currently Supported Types: - fedwire: Domestic USD wire transfers - swift: International wire transfers - sepa: SEPA EUR transfers Note: Payment methods are created and verified through your linked CDP entity. Currently, fetching payment methods is only supported for Prime investment vehic | pageSize (integer) pageToken (string) |
| cdp_v2/get_v2_payment_methods_by_payment_method_id | Get details of a specific payment method by its ID. Returns 404 if the payment method is not found or not owned by the requesting entity. | paymentMethodId (string) required |
| cdp_v2/custom | Call any endpoint of the connected service while reusing the connection auth. Pass the full URL as _url. Other reserved keys: _method, _query, _body, _headers. Remaining params flow naturally — empty → GET, non-empty → POST JSON body. | _url (string) required _method (string) _query (object) _body _headers (object) |
| advanced_trade/get_api_v3_brokerage_accounts | Get a list of authenticated Advanced Trade accounts for the current user. | limit (integer) cursor (string) retail_portfolio_id (string) |
| advanced_trade/get_api_v3_brokerage_accounts_by_account_uuid | Get a list of information about an account, given an account UUID. | account_uuid (string) required |
| advanced_trade/get_api_v3_brokerage_best_bid_ask | Get the best bid/ask for all products. A subset of all products can be returned instead by using the product_ids input. | product_ids (array) |
| advanced_trade/get_api_v3_brokerage_product_book | Get a list of bids/asks for a single product. The amount of detail shown can be customized with the limit parameter. | product_id (string) required limit (integer) aggregation_price_increment (string) |
| advanced_trade/get_api_v3_brokerage_products | Get a list of the available currency pairs for trading. | limit (integer) offset (integer) product_type (string) product_ids (array) contract_expiry_type (string) expiring_contract_status (string) get_tradability_status (boolean) get_all_products (boolean) products_sort_order (string) |
| advanced_trade/get_api_v3_brokerage_products_by_product_id | Get information on a single product by product ID. | product_id (string) required get_tradability_status (boolean) |
| advanced_trade/get_api_v3_brokerage_products_by_product_id_candles | Get rates for a single product by product ID, grouped in buckets. | product_id (string) required start (string) required end (string) required granularity (string) required limit (integer) |
| advanced_trade/get_api_v3_brokerage_products_by_product_id_ticker | Get snapshot information by product ID about the last trades ticks and best bid/ask. | product_id (string) required limit (integer) required start (string) end (string) |
| advanced_trade/post_api_v3_brokerage_orders | Create an order with a specified product_id asset-pair, side buy/sell, etc. | data: { . client_order_id (string) . product_id (string) . side . order_configuration . leverage (string) . margin_type . retail_portfolio_id (string) . preview_id (string) . attached_order_configuration } (object) required |
| advanced_trade/post_api_v3_brokerage_orders_batch_cancel | Initiate cancel requests for one or more orders. | data: { . order_ids (array) } (object) required |
| advanced_trade/post_api_v3_brokerage_orders_edit | Edit an order with a specified new size, or new price. | data: { . order_id (string) . price (string) . size (string) } (object) required |
| advanced_trade/post_api_v3_brokerage_orders_edit_preview | Preview an edit order request with a specified new size, or new price. | data: { . order_id (string) . price (string) . size (string) } (object) required |
| advanced_trade/get_api_v3_brokerage_orders_historical_batch | Get a list of orders filtered by optional query parameters product_id, order_status, etc. | order_ids (array) product_ids (array) product_type (string) order_status (array) time_in_forces (array) order_types (array) order_side (string) start_date (string) end_date (string) order_placement_source (string) contract_expiry_type (string) asset_filters (array) retail_portfolio_id (string) limit (integer) cursor (string) sort_by (string) user_native_currency (string) |
| advanced_trade/get_api_v3_brokerage_orders_historical_fills | Get a list of fills filtered by optional query parameters product_id, order_id, etc. | order_ids (array) trade_ids (array) product_ids (array) start_sequence_timestamp (string) end_sequence_timestamp (string) retail_portfolio_id (string) limit (integer) cursor (string) sort_by (string) |
| advanced_trade/get_api_v3_brokerage_orders_historical_by_order_id | Get a single order by order ID. | order_id (string) required client_order_id (string) user_native_currency (string) |
| advanced_trade/post_api_v3_brokerage_orders_preview | Preview an order. | data: { . product_id (string) . side . order_configuration . leverage (string) . margin_type . retail_portfolio_id (string) . attached_order_configuration } (object) required |
| advanced_trade/post_api_v3_brokerage_orders_close_position | Places an order to close any open positions for a specified product_id. | data: { . client_order_id (string) . product_id (string) . size (string) } (object) required |
| advanced_trade/get_api_v3_brokerage_portfolios | Get all portfolios of a user. | portfolio_type (string) |
| advanced_trade/post_api_v3_brokerage_portfolios | Create a portfolio. | data: { . name (string) } (object) required |
| advanced_trade/post_api_v3_brokerage_portfolios_move_funds | Move funds between portfolios. | data: { . funds . source_portfolio_uuid (string) . target_portfolio_uuid (string) } (object) required |
| advanced_trade/get_api_v3_brokerage_portfolios_by_portfolio_uuid | Get the breakdown of a portfolio. | portfolio_uuid (string) required currency (string) |
| advanced_trade/delete_api_v3_brokerage_portfolios_by_portfolio_uuid | Delete portfolio. | portfolio_uuid (string) required |
| advanced_trade/put_api_v3_brokerage_portfolios_by_portfolio_uuid | Edit a portfolio. | portfolio_uuid (string) required data: { . name (string) } (object) required |
| advanced_trade/get_api_v3_brokerage_cfm_balance_summary | Get a summary of balances for CFM trading | No parameters |
| advanced_trade/get_api_v3_brokerage_cfm_intraday_margin_setting | Get the futures intraday margin setting | No parameters |
| advanced_trade/post_api_v3_brokerage_cfm_intraday_margin_setting | Set the futures intraday margin setting | data: { . setting } (object) required |
| advanced_trade/get_api_v3_brokerage_cfm_intraday_current_margin_window | Get the futures current margin window | margin_profile_type (string) |
| advanced_trade/get_api_v3_brokerage_cfm_positions | Get a list of positions in CFM products | No parameters |
| advanced_trade/get_api_v3_brokerage_cfm_positions_by_product_id | Get positions for a specific CFM product | product_id (string) required |
| advanced_trade/post_api_v3_brokerage_cfm_sweeps_schedule | Schedules a sweep of funds from FCM wallet to USD Spot wallet | data: { . usd_amount (string) } (object) required |
| advanced_trade/get_api_v3_brokerage_cfm_sweeps | Get pending and processing sweeps of funds from FCM wallet to USD Spot wallet | No parameters |
| advanced_trade/delete_api_v3_brokerage_cfm_sweeps | Cancel the pending sweep of funds from FCM wallet to USD Spot wallet | No parameters |
| advanced_trade/post_api_v3_brokerage_intx_allocate | Allocate portfolio funds to a sub-portfolio on Intx Portfolio | data: { . portfolio_uuid (string) . symbol (string) . amount (string) . currency (string) } (object) required |
| advanced_trade/get_api_v3_brokerage_intx_portfolio_by_portfolio_uuid | Get a summary of your Perpetuals portfolio | portfolio_uuid (string) required |
| advanced_trade/get_api_v3_brokerage_intx_positions_by_portfolio_uuid | Get a list of open positions in your Perpetuals portfolio | portfolio_uuid (string) required |
| advanced_trade/get_api_v3_brokerage_intx_positions_by_portfolio_uuid_by_symbol | Get a specific open position on Intx | portfolio_uuid (string) required symbol (string) required |
| advanced_trade/get_api_v3_brokerage_intx_balances_by_portfolio_uuid | Get a list of asset balances on Intx for a given Portfolio | portfolio_uuid (string) required |
| advanced_trade/post_api_v3_brokerage_intx_multi_asset_collateral | Enable or Disable Multi Asset Collateral for a given Portfolio | data: { . portfolio_uuid (string) . multi_asset_collateral_enabled (boolean) } (object) required |
| advanced_trade/get_api_v3_brokerage_transaction_summary | Get a summary of transactions with fee tiers, total volume, and fees. | product_type (string) contract_expiry_type (string) product_venue (string) |
| advanced_trade/post_api_v3_brokerage_convert_quote | Create a convert quote with a specified source account, target account, and amount. Convert is applicable for USDC-USD and EURC-EUR conversion | data: { . from_account (string) . to_account (string) . amount (string) . trade_incentive_metadata } (object) required |
| advanced_trade/get_api_v3_brokerage_convert_trade_by_trade_id | Gets a list of information about a convert trade with a specified trade id, source account, and target account | trade_id (string) required from_account (string) required to_account (string) required |
| advanced_trade/post_api_v3_brokerage_convert_trade_by_trade_id | Commits a convert trade with a specified trade id, source account, and target account | trade_id (string) required data: { . from_account (string) . to_account (string) } (object) required |
| advanced_trade/get_api_v3_brokerage_time | Get the current time from the Coinbase Advanced API. | No parameters |
| advanced_trade/get_api_v3_brokerage_market_product_book | Get a list of bids/asks for a single product. The amount of detail shown can be customized with the limit parameter. | product_id (string) required limit (integer) aggregation_price_increment (string) |
| advanced_trade/get_api_v3_brokerage_market_products | Get a list of the available currency pairs for trading. | limit (integer) offset (integer) product_type (string) product_ids (array) contract_expiry_type (string) expiring_contract_status (string) get_all_products (boolean) products_sort_order (string) |
| advanced_trade/get_api_v3_brokerage_market_products_by_product_id | Get information on a single product by product ID. | product_id (string) required |
| advanced_trade/get_api_v3_brokerage_market_products_by_product_id_candles | Get rates for a single product by product ID, grouped in buckets. | product_id (string) required start (string) required end (string) required granularity (string) required limit (integer) |
| advanced_trade/get_api_v3_brokerage_market_products_by_product_id_ticker | Get snapshot information by product ID about the last trades ticks and best bid/ask. | product_id (string) required limit (integer) required start (string) end (string) |
| advanced_trade/get_api_v3_brokerage_payment_methods | Get a list of payment methods for the current user. | No parameters |
| advanced_trade/get_api_v3_brokerage_payment_methods_by_payment_method_id | Get information about a payment method for the current user. | payment_method_id (string) required |
| advanced_trade/get_api_v3_brokerage_key_permissions | Get information about your CDP API key permissions | No parameters |
| advanced_trade/custom | Call any endpoint of the connected service while reusing the connection auth. Pass the full URL as _url. Other reserved keys: _method, _query, _body, _headers. Remaining params flow naturally — empty → GET, non-empty → POST JSON body. | _url (string) required _method (string) _query (object) _body _headers (object) |