This page provides information about upcoming changes to Coinbase Exchange.

Deleting travel rule fields in POST /withdrawals/crypto REST API

Updated: 2025-Jan-13

We are removing travel rule fields from POST /withdrawals/crypto REST API. Customers in travel rule jurisdictions can withdraw only to their allowlisted addresses.

Adding new PUT /address-book/{id} REST endpoint

Added: 2025-Jan-8

We are introducing a new REST endpoint to edit an editing existing address book entry - useful for customers in travel rule jurisdictions. This endpoint requires the API key to have MANAGE permissions.

Non travel-rule jurisdictions can only edit the label of the address book entry.

Example request PUT https://api.exchange.coinbase.com/address-book/{id}. Here {id} refers to uuid of the crypto address.

{
  "label": "string", // label for crypto address
  "is_certified_self_send": bool // true if customer owns the address/ false if it is a third party address
  "vasp_id": "string" // optional - vasp name from supported list if the wallet address is a VASP address
  "is_verified_self_hosted_wallet": bool // optional - true if the wallet is verified self-hosted wallet
  "business_name": "lorem ipsum", // required for third-party address; ie is_certified_self_send is false
  "business_country_code": "DE" // ISO 3166-1 alpha-2 country code required for third-party address; ie is_certified_self_send is false
}

Sample response:

{
  "body": {
    "id": "e89b6ea2-1d73-4b3c-9f3a-3d9c8f25b7d9",
    "address": "0x6448894b9499AeebD914232483d0d0467194efcp",
    "label": "string",
    "address_info": {
      "address": "0x6448894b9499AeebD914232483d0d0467194efcp",
      "display_address": "0x6448894b9499AeebD914232483d0d0467194efcp",
      "destination_tag": "string"
    },
    "display_address": "0x6448894b9499AeebD914232483d0d0467194efcp",
    "address_booked": true,
    "address_book_added_at": "2024-03-19T12:00:00Z",
    "address_book_entry_pending_until": "2024-03-21T12:00:00Z",
    "currency": "USDC",
    "is_verified_self_hosted_wallet": false,
    "vasp_id": "string",
    "business_name": "string",
    "business_country_code": "DE"
  }
}

note: business name and country code are only populated for travel rule regions.

Enabling RFQs in terms of CashOrderQty (152)

Added: 2025-Apr-15

  • Adding CashOrderQty (152) to Quote_Request (R) messages
  • Adding BidCashOrderQty (8234) and OfferCashOrderQty (8235) tags to Quote (S) messages
  • Adding LeavesFunds (8152) and CashOrderQty (152) to Execution Reports (8)

We will allow RFQ takers to submit orders using a quantity specified in terms of the quote_currency. The quote_currency refers to the USD quantity or latter currency in the product pair (e.g. for BTC-USD, quote_currency = USD. For BTC-SOL, quote_currency = SOL).
As a result, LPs must respond in terms of quote_currency, as indicated by FIX tag CashOrderQty (152) on the Quote_Request (R) message.

  • LPs must respond with the full BidCashOrderQty (8234) | BidPx (132) and OfferCashOrderQty (8235) | OfferPx (133) on their corresponding Quote (S) message.
  • Execution Reports (8) for corresponding orders will reflect the CashOrderQty (152) and the OrderQty (38), which is calculated as such: OrderQty (38) = (CashOrderQty/ (BidPx or OfferPx))
  • Execution Reports (8) will also contain LeavesFunds (8152) field to indicate remaining CashOrderQty (152) that is unfilled.

Sample Execution Report:

8=FIXT.1.1|9=440|35=8|49=Coinbase|56=TARGET_COMP_ID|34=15|50=TEST|52=20250408-03:34:32.789012|369=8|6=70000|
11=CLIENT_ORDER_ID|14=0.01428|17=EXEC_ID|37=ORDER_ID|39=2|55=BTC-USD|54=2|40=2|32=0.01428|31=70000|44=70000|38=0.01428|
60=20250408-03:34:32.784254|152=999.60015994|150=F|8152=0|59=4|126=20250408-03:34:39.467|136=1|137=0.249900039985|
138=USD|139=4|891=0|10=204