Overview
Add Coinbase to any ModuleX agent or workflow. Cryptocurrency trading and wallet management via the Coinbase Developer Platform (CDP) API (v2 + v3 brokerage). Pure HTTP; the only runtime dependency added iscryptography for local JWT signing.
Categories: Finance & Payments · Business Services · Finance · Trading · Market · Auth: CDP API Key + Secret · Actions: 8
Authentication
CDP API Key + Secret
Authenticate using a Coinbase Developer Platform API key pair: the key ID and either an ECDSA (PEM) or Ed25519 (base64) private key. JWT signing happens locally.Required Credentials
| Field | Description | Required | Format |
|---|---|---|---|
| API Key ID | Your Coinbase CDP API Key ID (e.g. organizations/{org_id}/apiKeys/{key_id}) | Yes | organizations/{org_id}/apiKeys/{key_id} |
| API Secret | Coinbase CDP API Secret (PEM for ECDSA or base64 for Ed25519). Used to sign JWTs locally. | Yes | - |
Available Actions
get_accounts — List all cryptocurrency accounts for the authenticated user
get_accounts — List all cryptocurrency accounts for the authenticated user
Parameters
integer
Maximum accounts to return (1-100) (Default:
25)Response
{
"$defs": {
"AccountRow": {
"additionalProperties": false,
"properties": {
"uuid": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Uuid"
},
"name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Name"
},
"type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Type"
},
"currency": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Currency"
},
"available_balance": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Available Balance"
},
"available_balance_currency": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Available Balance Currency"
},
"hold_balance": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Hold Balance"
},
"hold_balance_currency": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Hold Balance Currency"
},
"created_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Created At"
},
"updated_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Updated At"
},
"active": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Active"
},
"ready": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Ready"
},
"default": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Default"
}
},
"title": "AccountRow",
"type": "object"
}
},
"additionalProperties": false,
"properties": {
"success": {
"title": "Success",
"type": "boolean"
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Error"
},
"accounts": {
"items": {
"$ref": "#/$defs/AccountRow"
},
"title": "Accounts",
"type": "array"
},
"total": {
"default": 0,
"title": "Total",
"type": "integer"
},
"has_next": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Has Next"
},
"cursor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Cursor"
}
},
"required": [
"success"
],
"title": "GetAccountsOutput",
"type": "object"
}
get_account — Get details for a specific Coinbase account
get_account — Get details for a specific Coinbase account
Parameters
string
required
The ID of the account
Response
{
"$defs": {
"AccountRow": {
"additionalProperties": false,
"properties": {
"uuid": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Uuid"
},
"name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Name"
},
"type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Type"
},
"currency": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Currency"
},
"available_balance": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Available Balance"
},
"available_balance_currency": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Available Balance Currency"
},
"hold_balance": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Hold Balance"
},
"hold_balance_currency": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Hold Balance Currency"
},
"created_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Created At"
},
"updated_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Updated At"
},
"active": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Active"
},
"ready": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Ready"
},
"default": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Default"
}
},
"title": "AccountRow",
"type": "object"
}
},
"additionalProperties": false,
"properties": {
"success": {
"title": "Success",
"type": "boolean"
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Error"
},
"account": {
"anyOf": [
{
"$ref": "#/$defs/AccountRow"
},
{
"type": "null"
}
],
"default": null
}
},
"required": [
"success"
],
"title": "GetAccountOutput",
"type": "object"
}
get_transactions — List historical order fills for an account
get_transactions — List historical order fills for an account
Parameters
string
required
The ID of the account
integer
Maximum transactions to return (1-100) (Default:
25)string
Pagination cursor (last transaction ID)
Response
{
"$defs": {
"TransactionRow": {
"additionalProperties": false,
"properties": {
"entry_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Entry Id"
},
"trade_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Trade Id"
},
"order_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Order Id"
},
"trade_time": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Trade Time"
},
"trade_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Trade Type"
},
"price": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Price"
},
"size": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Size"
},
"commission": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Commission"
},
"product_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Product Id"
},
"sequence_timestamp": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Sequence Timestamp"
},
"liquidity_indicator": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Liquidity Indicator"
},
"size_in_quote": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Size In Quote"
},
"user_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "User Id"
},
"side": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Side"
}
},
"title": "TransactionRow",
"type": "object"
}
},
"additionalProperties": false,
"properties": {
"success": {
"title": "Success",
"type": "boolean"
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Error"
},
"transactions": {
"items": {
"$ref": "#/$defs/TransactionRow"
},
"title": "Transactions",
"type": "array"
},
"total": {
"default": 0,
"title": "Total",
"type": "integer"
},
"cursor": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Cursor"
}
},
"required": [
"success"
],
"title": "GetTransactionsOutput",
"type": "object"
}
place_buy_order — Place a market buy order (IOC) to purchase cryptocurrency. ``amount`` is the spend in the quote currency (USD).
place_buy_order — Place a market buy order (IOC) to purchase cryptocurrency. ``amount`` is the spend in the quote currency (USD).
Parameters
string
required
The ID of the account
string
required
The amount
string
required
The currency code (e.g. ‘BTC’, ‘ETH’, ‘USD’)
string
Optional payment method ID
Response
{
"$defs": {
"_OrderInfo": {
"additionalProperties": false,
"properties": {
"order_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Order Id"
},
"product_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Product Id"
},
"side": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Side"
},
"client_order_id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Client Order Id"
}
},
"title": "_OrderInfo",
"type": "object"
}
},
"additionalProperties": false,
"properties": {
"success": {
"title": "Success",
"type": "boolean"
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Error"
},
"order": {
"anyOf": [
{
"$ref": "#/$defs/_OrderInfo"
},
{
"type": "null"
}
],
"default": null
}
},
"required": [
"success"
],
"title": "PlaceBuyOrderOutput",
"type": "object"
}
withdraw_funds — Withdraw cryptocurrency from a Coinbase account to an external destination address.
withdraw_funds — Withdraw cryptocurrency from a Coinbase account to an external destination address.
Parameters
string
required
The ID of the account
string
required
The amount
string
required
The currency code (e.g. ‘BTC’, ‘ETH’, ‘USD’)
string
required
Destination address (or payment method ID)
Response
{
"additionalProperties": false,
"properties": {
"success": {
"title": "Success",
"type": "boolean"
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Error"
},
"id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Id"
},
"status": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Status"
},
"amount": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Amount"
},
"asset": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Asset"
},
"fee": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Fee"
},
"transaction_hash": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Transaction Hash"
},
"destination_address": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Destination Address"
},
"network": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Network"
},
"created_at": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Created At"
}
},
"required": [
"success"
],
"title": "WithdrawFundsOutput",
"type": "object"
}
get_exchange_rates — Get current exchange rates for cryptocurrencies
get_exchange_rates — Get current exchange rates for cryptocurrencies
Parameters
string
Base currency for the rate table (Default:
USD)Response
{
"additionalProperties": false,
"properties": {
"success": {
"title": "Success",
"type": "boolean"
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Error"
},
"currency": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Currency"
},
"rates": {
"additionalProperties": true,
"title": "Rates",
"type": "object"
}
},
"required": [
"success"
],
"title": "GetExchangeRatesOutput",
"type": "object"
}
get_spot_price — Get current spot price for a currency pair
get_spot_price — Get current spot price for a currency pair
Parameters
string
required
Currency pair (e.g. ‘BTC-USD’)
Response
{
"additionalProperties": false,
"properties": {
"success": {
"title": "Success",
"type": "boolean"
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Error"
},
"base": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Base"
},
"currency": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Currency"
},
"amount": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Amount"
}
},
"required": [
"success"
],
"title": "GetSpotPriceOutput",
"type": "object"
}
get_payment_methods — List all payment methods for the authenticated user
get_payment_methods — List all payment methods for the authenticated user
Response
{
"$defs": {
"PaymentMethodRow": {
"additionalProperties": false,
"properties": {
"id": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Id"
},
"type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Type"
},
"name": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Name"
},
"currency": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Currency"
},
"allow_buy": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Allow Buy"
},
"allow_sell": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Allow Sell"
},
"allow_deposit": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Allow Deposit"
},
"allow_withdraw": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Allow Withdraw"
},
"verified": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
],
"default": null,
"title": "Verified"
}
},
"title": "PaymentMethodRow",
"type": "object"
}
},
"additionalProperties": false,
"properties": {
"success": {
"title": "Success",
"type": "boolean"
},
"error": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
],
"default": null,
"title": "Error"
},
"payment_methods": {
"items": {
"$ref": "#/$defs/PaymentMethodRow"
},
"title": "Payment Methods",
"type": "array"
},
"total": {
"default": 0,
"title": "Total",
"type": "integer"
}
},
"required": [
"success"
],
"title": "GetPaymentMethodsOutput",
"type": "object"
}