Head to head · Exchange market data · October 2026 research run

Bitfinex API vs Bybit

Bitfinex API scores 58.4 (C) on agent readiness against Bybit's 57.3 (C), and leads in 2 of 7 scored categories. Bybit leads on schema & documentation, agent ergonomics and maintenance & community. Both do exchange market data.

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

Which one, for what

Bitfinex API C

Best for An agent trading spot, margin or derivatives, or lending on the funding market, with scoped keys, official clients and paper trading.

Ahead on

  • Reliability, 85 against 45

Watch for

No official MCP server, OpenAPI file or AsyncAPI file; the registry's Bitfinex servers are third parties proxying public market data

Bybit C

Best for An agent trading spot, perpetuals, futures and options in a person's Bybit account outside the excluded jurisdictions, with a demo environment to rehearse on.

Ahead on

  • Schema & documentation, 73 against 48
  • Agent ergonomics, 66 against 61
  • Maintenance & community, 66 against 41

Also in its favour

  • Runs on your own machine

Watch for

No status page, incident history or SLA was found; the terms say the API is not guaranteed to be available

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.

Reliability Bitfinex API +40

Bitfinex API 85

Read with the hosted lines on the v2 API at api.bitfinex.com. bitfinex.statuspage.io is a Statuspage site with history back to May 2021 (20). Its feed has no entry between 25 March 2026 and 3 November 2026, so the last 90 days are clean on the record; the feed logs platform-wide outages only (a 14-hour maintenance in March 2026, a 3-hour outage in August 2025), so smaller incidents may go unrecorded. Judgement call (30). Rate limits with numbers, 10 to 90 a minute per IP and the WebSocket connection limits (15). ERR_RATE_LIMIT and the 60-second block are documented, with no Retry-After; orders take a cid but no idempotency key or retry guidance was found (10 of 15). No SLA found (0). Generally available (10). 20 + 30 + 15 + 10 + 0 + 10 = 85.

Bybit 45

Graded with the hosted lines on the V5 API at api.bybit.com. No status page found (status.bybit.com does not resolve, the docs link none), so 0 for the page and 5 for no readable history. Rate limits are published per endpoint and per UID with numbers, plus a 600 per 5 second IP limit (15). Every response carries X-Bapi-Limit, X-Bapi-Limit-Status and X-Bapi-Limit-Reset-Timestamp, retCode 10006 and HTTP 403 are documented with a wait rule, and orders take a unique orderLinkId that amend and cancel accept (15). No SLA (0). V5 is the current production API, not a beta (10). 45.

Schema & documentation Bybit +25

Bitfinex API 48

No OpenAPI or AsyncAPI file was found on docs.bitfinex.com, in llms.txt or in the client repositories (0). llms.txt and a .md twin of every docs page (10). Each reference page states the endpoint's purpose and fields, and the introduction says when to use api-pub against api, but nothing says when not to use an endpoint (14 of 20). Responses are positional arrays described in field tables, inputs are typed in prose with some enumerations (wallet names, order types) and required fields marked; the withdrawal CODE field is work in progress (7 of 15). Signed-request recipes in five languages, but authenticated errors are documented as 400 with an empty object and there is no error reference (9 of 15). Version v2 in the path and a dated changelog, whose last entry is October 2024 and whose v1 deprecation has no date (8 of 15). 0 + 10 + 14 + 7 + 9 + 8 = 48.

Bybit 73

No OpenAPI or other machine-readable contract for the REST API; the MCP server's 398 tools have zod schemas turned into JSON Schema, so the contract exists for the MCP surface only (12 of 25). No llms.txt; the docs are a public Docusaurus repository (bybit-exchange/docs) whose MDX source an agent can read (5 of 10). The MCP tool descriptions state purpose, rules and an agent hint per tool, and the API reference gives one page per endpoint (15 of 20). Parameters are typed with enums such as category and orderType and required flags (12 of 15). Request and response examples on each endpoint page and an error code page of about 750 codes with text (14 of 15). A dated changelog with 24 entries in the last 90 days, versioned V3 to V5 (15). 73.

Maintenance & community Bybit +25

Bitfinex API 41

Read as a closed service with open clients. The last dated change we could read is bitfinex-api-node 9.1.0 on 18 July 2026, 108 days before the check; the docs changelog stops in October 2024 (10). Not three dated releases in the last 90 days (0). The bitfinexcom organisation pushes often (bfx-report on 3 November 2026) and the clients have issue trackers, but support articles answered 403 and no reply times were read (10 of 25). Official clients current in four languages, Node 9.1.0 of July 2026 and Python 4.0.0 of October 2025; not in the MCP registry (15). The Node client has a dependency history of security fixes (its last GitHub release notes name two) and no CI was read (6 of 10). 10 + 0 + 10 + 15 + 6 = 41.

Bybit 66

Read as a hosted service with an open-source MCP server. The MCP package shipped 2.1.26 on 30 October 2026 and the V5 changelog's latest entry is 29 October (30). 31 npm versions since 16 April 2026, 11 of them in the last 90 days, and 24 changelog entries in the same window (20). The trading-mcp repository has 4 open issues and 18 forks; whether issues get answers was not checked, and the API has no public forum we could read (10 of 25). Not in the official MCP registry (0). The package has four dependencies, no install scripts, a publish workflow and no test workflow (6 of 10). 66.

Agent ergonomics Bybit +5

Bitfinex API 61

Graded on the REST API. Limits on trades, candles and book depth, and pub:list config endpoints keep responses small, but positional arrays make every field a lookup (14 of 25). start, end, limit and sort on history endpoints and per-symbol variants (16 of 20). ERR_RATE_LIMIT is actionable; authenticated 400s return {} and withdrawal status strings may change, so an agent cannot branch on causes (8 of 20). A client id on orders, order multi-op and cancel-multiple, but no idempotency key and no retry contract (8 of 20). Few required parameters and official clients in Node, Python, Go and Ruby (15). 14 + 16 + 8 + 8 + 15 = 61.

Bybit 66

Read for the API with the MCP server beside it. The MCP server has 398 tools in one list with no toolset, module or read-only switch (5 of 25, nothing added back). V5 reads take limit and cursor and category filters (15 of 20). retCode and retMsg on every response with a code list an agent can branch on, though create-order answers before the order is final and the docs say to confirm over WebSocket (14 of 20). orderLinkId makes order retries safe and every MCP tool carries readOnlyHint and destructiveHint (17 of 20). Five required fields on an order, official SDKs in Python, Go, Java and .NET (15). 66.

Score by category

CategoryWeight this runBitfinex APIBybitEdge
Reliability16%208545Bitfinex API +40
Performance10%pendingpendingpendingnot scored in this run
Schema & documentation13%16.24873Bybit +25
Agent ergonomics13%16.26166Bybit +5
Security & auth14%17.56260Bitfinex API +2
Payments & pricing10%12.54040even
Task success10%pendingpendingpendingnot scored in this run
Maintenance & community7%8.84166Bybit +25
Transparency & trust7%8.84951Bybit +2
Negative events≤1500
TotalC 58.4/100C 57.3/100

Facts side by side

FactBitfinex APIBybit
KindHTTP APIHTTP API
VendoriFinex Inc.Bybit
Hosted endpointno (local only)no (local only)
Transportsstdio
AuthAPI keyAPI key
PricingPay per usePay per use
x402nono
LicenceProprietary hosted API under Bitfinex's API Terms of Service, which our reader couldn't load. The official client libraries (Node, Python, Go, Ruby) are MIT or Apache-2.0none
Tools exposednone398
Read-only variant documentednoyes
llms.txtyesno
Last release2026-07-182026-10-30
Terms last updatedcouldn't be readcouldn't be read
Privacy policy last updatedcouldn't be readcouldn't be read
Customer content may train modelscouldn't be readcouldn't be read
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
Popularity480 stars43 stars

Verdicts

Bitfinex API

Bitfinex gives an agent scoped keys with a separate withdraw permission, paper-trading sub-accounts on the production API, llms.txt and official clients in four languages. There is no official MCP server, responses are positional arrays with empty error bodies, rate limits run 10 to 90 a minute per IP, and the terms, API terms and privacy statement could not be read.

Bybit

Bybit publishes per-endpoint rate limits, a demo environment, scoped keys with a read-only flag and IP binding, and an official stdio MCP server whose 398 tools carry read-only and destructive annotations. There is no status page, no OpenAPI file, no SLA, the MCP server has no toolsets, and the global terms and privacy pages are drawn by script.

Before you call either

Bitfinex API

  1. Mint a key with read on the scopes the task needs and write only on orders; never grant withdraw to a trading key, and bind the key to known IPs
  2. Use one key per client process, since each key keeps its own strictly increasing nonce and a reused nonce is rejected
  3. Rehearse on a paper-trading sub-account with the TEST symbols before touching real balances; the sub-account cannot be converted later
  4. Plan requests against the per-endpoint limit of 10 to 90 a minute per IP; ERR_RATE_LIMIT blocks the IP for 60 seconds with no Retry-After
  5. Map each response by position from the docs' field tables and set a cid on orders, because responses are arrays and a 400 carries no reason

Bybit

  1. Create a key with only the permission groups the task needs, set readOnly for research keys, leave Withdraw off and bind an IP, or the key expires after 90 days
  2. Send a unique orderLinkId on every order and reuse it when amending or cancelling, since create-order is asynchronous and confirmed over WebSocket
  3. Read X-Bapi-Limit-Status before bursts and wait until X-Bapi-Limit-Reset-Timestamp on retCode 10006; on HTTP 403 stop all sessions for at least 10 minutes
  4. Test on api-demo.bybit.com with a demo key from the production account, not on testnet demo mode, which the docs call meaningless
  5. Run the MCP server with BYBIT_TESTNET=true first, and only in a client that shows a per-call approval, because the server has no read-only mode of its own

Questions

Which is better for AI agents, Bitfinex API or Bybit?

Bitfinex API scores 58.4 (C) on agent readiness against Bybit's 57.3 (C), and leads in 2 of 7 scored categories. Bybit leads on schema & documentation, agent ergonomics and maintenance & community.

Do Bitfinex API and Bybit need an API key?

Both need an API key.

Can an agent call Bitfinex API and Bybit without installing anything?

No hosted endpoint is listed for Bitfinex API. Bybit runs on your own machine, with no hosted endpoint listed.

Other comparisons with Bitfinex API or Bybit

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.