Head to head · Exchange spot trading · October 2026 research run

Coinbase Advanced Trade API vs Gemini Exchange API

Gemini Exchange API scores 74.6 (BB) on agent readiness against Coinbase Advanced Trade API's 61.7 (C), and leads in every scored category. Both do exchange spot trading.

Best crypto exchange APIs and MCP servers for AI agents · All 210 exchanges comparisons

Which one, for what

Coinbase Advanced Trade API C

Best for An agent trading a person's or a treasury's Coinbase account with its own key, where the person wants sandbox tests and portfolio scoping.

Also in its favour

  • Free to start without a card

Watch for

No REST rate limit numbers found; the old rate-limits page answers 404 and only the WebSocket limit of 8 per second per IP is published

Gemini Exchange API BB

Best for An agent trading spot, perpetuals or prediction markets for a US customer with a role-limited key and a sandbox to rehearse on.

Ahead on

  • Reliability, 73 against 58
  • Schema & documentation, 88 against 80
  • Agent ergonomics, 79 against 73
  • Security & auth, 78 against 68
  • Payments & pricing, 40 against 20
  • Maintenance & community, 88 against 57
  • Transparency & trust, 75 against 67

Also in its favour

  • Agent-ready, a grade of BB or better
  • Runs on your own machine

Watch for

Client order ids are only recommended to be unique and no duplicate rejection is documented, so a retried order can execute twice

Why the edge

Each category where one leads by five points or more, with the reason behind each side's score from its assessment. The numbers are in the table below; this is what they stand for.

Maintenance & community Gemini Exchange API +31

Coinbase Advanced Trade API 57

Read as a closed hosted service. The last change to the API itself is the Global Derivatives gateway and INTX retirement of 1 October 2026, 33 days before this check; the Python SDK's v2.0.0rc1 is from 30 September (20 of 30). Dated changes in 90 days are the 1 October migration and the agents entries of 17 and 21 August, which run through Advanced Trade (12 of 20). A public changelog and a CDP Discord; SDK issues not read (8 of 15). Official Python SDK current, the rest samples (12 of 15). SDK CI not read (5 of 10). 20 + 12 + 8 + 12 + 5 = 57.

Gemini Exchange API 88

Read as a closed hosted service with an open repository. The revision history's latest entry is 28 October 2026 and the repository was pushed on 5 October (30). Thirteen dated entries between 2 September and 28 October 2026 (20). The nine open items on the repository are all pull requests with replies, Dependabot included, and the docs name trading@gemini.com for developer support; no public issue tracker was tested (15 of 25). Not in the official MCP registry, but current official SDKs, TypeScript 0.1.1 of 23 September and Go 0.1.0 of 29 August 2026 (15). CI workflows validate and publish both SDKs and the MCP server has tests; dependencies are current (8 of 10). 30 + 20 + 15 + 15 + 8 = 88.

Payments & pricing Gemini Exchange API +20

Coinbase Advanced Trade API 20

No machine payment protocol on the API (0). The fee schedule answered a bot check on 3 November 2026, so no per-trade price was read, and the docs give none (0 of 20, unchecked). Six public market endpoints and the sandbox need no key or card (20). A person signs up, passes verification and mints a key in the portal (0). 0 + 0 + 20 + 0 = 20.

Gemini Exchange API 40

No machine payment protocol (0). The API fee schedule is public per tier without login, 0.6% maker and 1.2% taker at the base tier (20). The API is free to call, public market data needs no key, and the sandbox credits test funds with no card (20). A person must sign up in a browser with identity checks, mint a key or approve an OAuth grant, and production OAuth apps wait for Gemini's review (0). 0 + 20 + 20 + 0 = 40.

Reliability Gemini Exchange API +15

Coinbase Advanced Trade API 58

Read with the hosted lines. status.coinbase.com is a Statuspage site with Coinbase Advanced Trade, API, US Derivatives and International Derivatives components (20). The incidents feed we could read runs from 16 September to 3 November 2026. In it Advanced Trade was degraded for 25 minutes on 21 September, the website had a 3-minute major on 14 October, converts were down 1 hour 4 minutes on 26 October, and no incident named the API; 5 August to 15 September was beyond the feed, so minor only for the seven weeks read (15 of 30). No REST rate limit with numbers was found; the older rate-limits page answers 404 and llms.txt lists none, while the WebSocket page gives 8 connections and 8 unauthenticated messages per second per IP (5 of 15). Orders take a client_order_id, but no 429 or Retry-After guidance was found for Advanced Trade (8 of 15). No SLA (0). REST and WebSocket are generally available; the Global Derivatives gateway is a month old and not marked beta (10). 20 + 15 + 5 + 8 + 0 + 10 = 58.

Gemini Exchange API 73

Read with the hosted lines on the REST API at api.gemini.com. status.gemini.com is a Statuspage site with component history (20). Its Atom feed for 10 September to 3 November 2026 holds 25 entries, mostly scheduled trading and FIX upgrades of 15 to 60 minutes with possible order timeouts, single-network deposit delays, and incorrect perpetual index prices for about 3.5 hours on 15 and 16 October; a 3-hour scheduled eOTC window was planned and outside the core API. Minor only (20). Rate limits with numbers, 120 a minute public and 600 private plus per-endpoint limits (15). 429 is documented but with no Retry-After or backoff guidance, and client order ids are recommended without duplicate rejection, so retries are not safe by contract; the heartbeat cancel is a safety net rather than idempotency (8 of 15). No SLA found (0). Generally available (10). 20 + 20 + 15 + 8 + 0 + 10 = 73.

Security & auth Gemini Exchange API +10

Coinbase Advanced Trade API 68

CDP keys with view, trade and transfer permissions, a portfolio restriction, an optional IP allowlist, revocation in the portal, ES256 JWTs that expire after 2 minutes, and OAuth2 with wallet:* scopes for other people's accounts; no key expiry (28 of 30). View-only keys and portfolio scoping limit an agent, and transfer is a separate permission, but no withdrawal address allow-list for API keys and no confirmation step were found (14 of 20). The API returns no untrusted content (10). key_permissions reports a key's scope and account activity shows in the app, but no per-call log was found (6 of 15). HackerOne bug bounty named in a security.txt that expired on 1 June 2024; certifications unread behind a bot check (10 of 20). 28 + 14 + 10 + 6 + 10 = 68.

Gemini Exchange API 78

Revocable API keys with one role each (Trader, Fund Manager, Auditor, Administrator), HMAC-SHA384 signing with a nonce, and OAuth 2.0 with scopes, PKCE S256, single-use refresh tokens and RFC 7009 revocation; no IP allow-list documented and no key expiry (28 of 30). Auditor is read-only, a Trader key cannot withdraw, approved withdrawal addresses are a Fund Manager action, and the MCP server refuses funds-moving tools without confirm: true (18 of 20). The MCP server wraps every response in untrusted-output markers, strips control and bidi characters and redacts memos, labels and agreement text; the REST docs say nothing on the subject (13 of 15). Order and transfer history are readable, but no per-key audit log or API access log was found (5 of 15). security.txt with a PGP contact and a bug bounty paying $150 to $20,000, scoped to the sandbox hosts; no certification was read and no public advisory process was found (14 of 20). 28 + 18 + 13 + 5 + 14 = 78.

Schema & documentation Gemini Exchange API +8

Coinbase Advanced Trade API 80

Public OpenAPI 3.1 spec (45 paths, 51 operations) and an AsyncAPI document (25). llms.txt and a Markdown twin of every docs page (10). Every operation has a summary and description, some one line, several with multi-sentence guidance for equities (14 of 20). Enums on product_type, granularity, order_status, time_in_forces, order_types, order_side and sort_by, with defaults (13 of 15). Examples in the docs and the sandbox's simulated errors, but the spec documents only a default error referencing grpc.gateway.runtime.Error, with no 4xx or 429 shapes (8 of 15). Paths carry /api/v3, the CDP changelog is dated, and the INTX retirement was announced with a date, but the spec's info.version is 0.1 and the October gateway change has no changelog entry (10 of 15). 25 + 10 + 14 + 13 + 8 + 10 = 80.

Gemini Exchange API 88

OpenAPI 3 for REST (specs/openapi/rest.yaml), AsyncAPI for WebSocket, a prediction-markets OpenAPI file and a specs/index.json catalogue; the MCP server's tools take zod schemas published as JSON Schema (25). llms.txt, llms-full.txt, agents.md, an agent card and an agent skills index (10). Endpoint pages state purpose, the Build an agent guide says what to establish before acting and when to stop, and MCP tool descriptions tell the model when to confirm; the docs don't say when not to use an endpoint (15 of 20). Typed inputs with enums for order types, options and sessions, required fields marked, decimals as strings since 7 July 2026 (12 of 15). Examples throughout, samples in three languages, and an error-codes page with 53 named reasons and their HTTP statuses (14 of 15). A revision history dated from 2015 to 28 October 2026 and versioned paths (v1, v2), but the upcoming-changes page reads "TBD" (12 of 15). 25 + 10 + 15 + 12 + 14 + 12 = 88.

Transparency & trust Gemini Exchange API +8

Coinbase Advanced Trade API 67

The editorial half. A closed service whose user agreement answered a bot check; the OpenAPI spec is public and the Python SDK is open on GitHub (12 of 30). Privacy facts per the coinbase-cdp-agentkit check of 1 October 2026 (Coinbase, Inc., processing countries, retention tied to need without numbers), not re-read (10 of 30). INTX endpoints retired on 1 October 2026 with a dated notice and a read-only grace period (12 of 20). Processing countries and provider categories per the same earlier check, no subprocessor list (8 of 20). 12 + 10 + 12 + 8 = 42.

Gemini Exchange API 75

The editorial half. A closed service under a user agreement that names its entities by state, with the MCP server and SDKs open under Apache-2.0 (18 of 30). The privacy policy of 11 May 2026 names entities and processing countries, ties retention to need without numbers and names provider categories only, with no DPA or subprocessor list found (16 of 30). The revision history records removals and type changes with dates, but the upcoming-changes page is "TBD" and no notice period is stated (8 of 20). Processing countries are named (US, Ireland, UK, Malta, Singapore, Australia) and providers by category, with no named subprocessors (12 of 20). 18 + 16 + 8 + 12 = 54.

Score by category

CategoryWeight this runCoinbase Advanced Trade APIGemini Exchange APIEdge
Reliability16%205873Gemini Exchange API +15
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.28088Gemini Exchange API +8
Agent ergonomics13%16.27379Gemini Exchange API +6
Security & auth14%17.56878Gemini Exchange API +10
Payments & pricing10%12.52040Gemini Exchange API +20
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.85788Gemini Exchange API +31
Transparency & trust7%8.86775Gemini Exchange API +8
Negative events≤1500
TotalC 61.7/100BB 74.6/100

Facts side by side

FactCoinbase Advanced Trade APIGemini Exchange API
KindHTTP APIHTTP API
VendorCoinbase, Inc.Gemini Trust Company, LLC
Hosted endpointno (local only)no (local only)
Transportsstdio
AuthOAuth or keyOAuth or key
PricingPay per usePay per use
x402nono
LicenceProprietary hosted service under the Coinbase User Agreement, which answered a bot check and wasn't read. The official Python SDK coinbase-advanced-py is on GitHubProprietary hosted API under Gemini's user agreement. The developer-platform repository (MCP server, TypeScript and Go SDKs, samples and skills) is Apache-2.0
Tools exposednone87
Read-only variant documentedyesyes
llms.txtyesyes
Last release2026-10-012026-10-28
Terms last updatedcouldn't be readcouldn't be read
Privacy policy last updated2026-05-27no date given
Customer content may train modelscouldn't be readyes
Terms restrict automated accesscouldn't be readcouldn't be read
Terms restrict benchmarkingcouldn't be readcouldn't be read
Terms or service can change without noticecouldn't be readcouldn't be read
Arbitration or class-action waivercouldn't be readcouldn't be read
Popularitynone8 stars, 99 npm/wk

Verdicts

Coinbase Advanced Trade API

Advanced Trade has a public OpenAPI spec, keys limited to view, trade or transfer and to one portfolio, and a keyless static sandbox. No REST rate limit is published, the fee schedule, user agreement and country list sit behind a bot check, and an agent that wants an MCP route uses the separate coinbase-mcp listing.

Gemini Exchange API

Gemini publishes an OpenAPI and AsyncAPI contract, API key roles that keep withdrawals off a trading key, a funded sandbox, and an official MCP server whose tools carry read-only and destructive annotations and a confirm gate. Client order ids are not checked for duplicates, there is no SLA, and UK, EEA and Australian accounts closed in April 2026.

Before you call either

Coinbase Advanced Trade API

  1. Mint a fresh ES256 JWT for every request; tokens expire after 2 minutes and Ed25519 keys are rejected
  2. Send a unique client_order_id on every order and reuse it on retry so a dropped connection does not place a second order
  3. Develop against api-sandbox.coinbase.com first; its responses are static, so do not read prices or fills from it
  4. Use a key with view only, or trade without transfer, and restrict it to a portfolio funded for the agent
  5. For perpetuals call the Global Derivatives JSON-RPC gateway at drb.coinbase.com; the /intx/* endpoints are retired

Gemini Exchange API

  1. Create a Trader key for order flow and a separate Fund Manager key only if withdrawals are in scope; never combine them, and keep the secret out of prompts and logs
  2. Set a client_order_id per order and look it up with get_order_status before resending after a timeout, because Gemini does not reject duplicates
  3. Start on api.sandbox.gemini.com with the same code; sandbox apps register at once, production OAuth apps wait for Gemini's review
  4. Stay under 1 public and 5 private requests a second; a 429 keeps answering 429 until the rate falls, with no Retry-After to read
  5. Check the person's country against the availability page first; UK, EEA and Australian accounts were closed on 6 April 2026

Questions

Which is better for AI agents, Coinbase Advanced Trade API or Gemini Exchange API?

Gemini Exchange API scores 74.6 (BB) on agent readiness against Coinbase Advanced Trade API's 61.7 (C), and leads in every scored category.

Do Coinbase Advanced Trade API and Gemini Exchange API need an API key?

Both take an API key or an OAuth sign-in.

Can an agent call Coinbase Advanced Trade API and Gemini Exchange API without installing anything?

No hosted endpoint is listed for Coinbase Advanced Trade API. Gemini Exchange API runs on your own machine, with no hosted endpoint listed.

Other comparisons with Coinbase Advanced Trade API or Gemini Exchange API

Machine-readable

For companies

Do agents find, use and choose your tools?

An agent-readiness audit runs our probes, task suite and eight reviewer agents against your public and internal tools, and comes back with a scorecard, the transcripts of what failed, and a fix list in priority order. From $2,500, re-run included. We never take payment to move a rank. We do help companies earn one.