Skip to main content
POST

Authorizations

Authorization
string
header
required

A JWT signed using your CDP API Key Secret, encoded in base64. Refer to the Generate Bearer Token section of our Authentication docs for information on how to generate your Bearer Token.

Headers

X-Idempotency-Key
string

An optional string request header for making requests safely retryable. When included, duplicate requests with the same key will return identical responses. Refer to our Idempotency docs for more information on using idempotency keys.

Required string length: 1 - 128

Body

application/json
owner
string

The Owner of the Account to create.

  • If omitted, the account will be owned by the Entity making the request.

  • If the account is for a customer, the value will be a Customer ID, e.g. customer_af2937b0-9846-4fe7-bfe9-ccc22d935114.

  • Further, the corresponding Customer must have all of the following capabilities enabled:

    • custodyCrypto
    • custodyFiat
    • custodyStablecoin.
Pattern: ^(entity|customer)_[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
Example:

"customer_af2937b0-9846-4fe7-bfe9-ccc22d935114"

name
string

An optional name for the account. Must be 1-64 characters and can only contain alphanumeric characters, hyphens, and spaces.

Maximum string length: 64
Pattern: ^[a-zA-Z0-9 -]{1,64}$
Example:

"My Business Account"

compliance
object
write-only

Compliance context for a request. Carries per-request compliance signals, such as the IP address of the individual (i.e., end-customer) that initiated the request.

This object is request-only — it is never echoed back in responses. Inner fields are write-only.

Example:

Response

Successfully created account.

accountId
string
required

The ID of the Account, which is a UUID prefixed by the string account_.

Pattern: ^account_[a-f0-9\-]{36}$
Example:

"account_af2937b0-9846-4fe7-bfe9-ccc22d935114"

type
enum<string>
required

The type of the Account.

  • prime: a linked Coinbase Prime account.
  • business: a linked Coinbase Business account.
  • cdp: a CDP-native account created via this API. Used for accounts created on behalf of an Entity and for Customer-owned accounts.
Available options:
prime,
business,
cdp
Example:

"prime"

owner
string
required

The Owner ID of the Account.

Owner IDs are UUIDs prefixed with the Owner Type as follows:

  • Entity: entity_ - If the Owner is your Entity, e.g. entity_af2937b0-9846-4fe7-bfe9-ccc22d935114.

  • Customer: customer_ - If the Owner is one of your Customers, e.g. customer_af2937b0-9846-4fe7-bfe9-ccc22d935114. Customer ownership requires the Customer to have the custodyCrypto, custodyFiat, and custodyStablecoin capabilities enabled.

Pattern: ^(entity|customer)_[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
Example:

"entity_af2937b0-9846-4fe7-bfe9-ccc22d935114"

createdAt
string<date-time>
required

The timestamp when the account was created.

Example:

"2023-10-08T14:30:00Z"

updatedAt
string<date-time>
required

The timestamp when the account was last updated.

Example:

"2023-10-08T14:30:00Z"

name
string

An optional name for the account. Must be 1-64 characters and can only contain alphanumeric characters, hyphens, and spaces.

Maximum string length: 64
Pattern: ^[a-zA-Z0-9 -]{1,64}$
Example:

"My Business Account"