Coinbase Top-Up Links API

A Top-Up Link is a shareable hosted URL that lets a payer add funds to their balance. Create a link with **Create a Top-Up Link** and share the returned `topUpUrl` only with the intended payer. The URL identifies the link but does not authorize a top-up; the payer must authenticate and approve it. ## Lifecycle The resource is immutable once created. The link expires 24 hours after creation and funds a single purchase: once a purchase succeeds, the link is spent and cannot be used again. A purchase that fails does not consume the link, so the payer can retry until it expires. A link is not bound to a specific payer. There is no GET: the create response and the `acceptance.top_up_link.created` event are the full resource. ## Amounts - `topUpAmount` is the merchant's fixed suggested net amount for the link's single purchase. The payer can change it in the hosted flow. - `orderTotalAmount` is optional presentation context. It does not replace, change, or cap `topUpAmount`. - The funds-added event reports the actual net amount credited by the purchase that spent the link. It is never cumulative. ## Merchant name Supply `customerDisplay.merchantName` to choose the merchant name for a link's hosted page. The supplied value is limited to 128 Unicode code points before surrounding whitespace is removed. If the name is omitted or empty after trimming, the entity's profile name is used. The create response and creation webhook return the resolved name stored on the immutable link. Later profile changes do not change that name. ## Redirects When `redirectUrl` is supplied, its origin must exactly match an allowed origin. The query key `toppedUpAmount` is reserved because the hosted flow appends it before redirecting the payer. The redirect does not represent success or failure; `toppedUpAmount` may be zero, a partial amount, or the full `topUpAmount`. ## Webhooks Subscribers receive `acceptance.top_up_link.created` when the link is created and `acceptance.top_up_link.funds_added` when a purchase credits funds through the link. Because a link funds a single purchase, it produces at most one funds-added event; deliveries can repeat, so deduplicate on `eventId`.

Operations 1

Documentation

Specifications

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-conversion-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-currency-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-payment-method-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-transfer-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-transaction-summary-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-price-book-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-product-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-candle-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-trade-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-order-book-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-trade-2-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/json-schema/coinbase-profile-schema.json

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/coinbase:coinbase-top-up-links-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

coinbase-top-up-links-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Coinbase Developer Platform Top-Up Links API
  description: The Coinbase Developer Platform APIs - leading the world's transition onchain.
  license:
    name: MIT
    url: https://opensource.org/licenses/MIT
  version: 2.0.0
  contact:
    name: Coinbase Developer Platform
    email: cdp@coinbase.com
    url: https://cdp.coinbase.com
servers:
- url: https://api.cdp.coinbase.com/platform
  description: The production server of the CDP APIs.
security:
- apiKeyAuth: []
tags:


# --- truncated at 32 KB (86 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/coinbase/refs/heads/main/openapi/coinbase-top-up-links-api-openapi.yml