# Bitfinex API vs Bybit

> Bitfinex scores 58.4 (C) to Bybit's 57.3 (C) for exchange market data. Prices, MCP, x402, uptime and agent notes side by side.

- Canonical: https://www.anchorterminal.com/compare/bitfinex-vs-bybit
- Markdown: https://www.anchorterminal.com/compare/bitfinex-vs-bybit.md (~4,300 tokens)
- Site index for agents: https://www.anchorterminal.com/llms.txt (the key docs and every listing in one file, at most 16 MB, about 4 million tokens: https://www.anchorterminal.com/llms-full.txt)
- API: https://www.anchorterminal.com/api/v1/index.json
- MCP: https://www.anchorterminal.com/mcp (the whole catalogue as tools, no key)
- DNS: dig +short TXT <slug>.grade.anchorterminal.com (the grade as a DNS TXT record, for a sandbox with no HTTP where names still resolve; also top., best.<category>. and <a>.vs.<b>. under the zone, and the same under grade.letme.dev)
- Licence: CC BY 4.0, credit Anchor Terminal and link this page (https://www.anchorterminal.com/terms/#data)
- Updated: 2026-11-04

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.

- Bitfinex API: grade C, 58.4/100, rank #675 of 1349. Markdown https://www.anchorterminal.com/tools/bitfinex.md · JSON https://www.anchorterminal.com/api/v1/tools/bitfinex.json
- Bybit: grade C, 57.3/100, rank #712 of 1349. Markdown https://www.anchorterminal.com/tools/bybit.md · JSON https://www.anchorterminal.com/api/v1/tools/bybit.json
- Best crypto exchange APIs and MCP servers for AI agents: https://www.anchorterminal.com/best/crypto-exchanges/index.md
- All 210 exchanges comparisons: https://www.anchorterminal.com/compare/crypto-exchanges/index.md

## Which one, for what

### Bitfinex API (C)

Good 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)

Good 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

### 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

| Category | Weight | Bitfinex API | Bybit | Edge |
| --- | --- | --- | --- | --- |
| Reliability | 16% (20 this run) | 85 | 45 | Bitfinex API +40 |
| Performance | 10%, pending | pending | pending | not scored in this run |
| Schema & documentation | 13% (16.2 this run) | 48 | 73 | Bybit +25 |
| Agent ergonomics | 13% (16.2 this run) | 61 | 66 | Bybit +5 |
| Security & auth | 14% (17.5 this run) | 62 | 60 | Bitfinex API +2 |
| Payments & pricing | 10% (12.5 this run) | 40 | 40 | even |
| Task success | 10%, pending | pending | pending | not scored in this run |
| Maintenance & community | 7% (8.8 this run) | 41 | 66 | Bybit +25 |
| Transparency & trust | 7% (8.8 this run) | 49 | 51 | Bybit +2 |
| Negative events | ≤15 | 0 | 0 | |
| **Total** | | **58.4 · C** | **57.3 · C** | |

## Facts side by side

| Fact | Bitfinex API | Bybit |
| --- | --- | --- |
| Kind | HTTP API | HTTP API |
| Vendor | iFinex Inc. | Bybit |
| Hosted endpoint | no (local only) | no (local only) |
| Transports |  | stdio |
| Auth | API key | API key |
| Pricing | Pay per use | Pay per use |
| x402 | no | no |
| Licence | Proprietary 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.0 | none |
| Tools exposed | none | 398 |
| Read-only variant documented | no | yes |
| llms.txt | yes | no |
| Last release | 2026-07-18 | 2026-10-30 |
| Terms last updated | couldn't be read | couldn't be read |
| Privacy policy last updated | couldn't be read | couldn't be read |
| Customer content may train models | couldn't be read | couldn't be read |
| Terms restrict automated access | couldn't be read | couldn't be read |
| Terms restrict benchmarking | couldn't be read | couldn't be read |
| Terms or service can change without notice | couldn't be read | couldn't be read |
| Arbitration or class-action waiver | couldn't be read | couldn't be read |
| Popularity | 480 stars | 43 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.


## For agents

- This comparison as JSON: https://www.anchorterminal.com/compare/bitfinex-vs-bybit.json, and with the fewest tokens: https://www.anchorterminal.com/compare/bitfinex-vs-bybit.min.md
- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {"a": "bitfinex", "b": "bybit"}`. From a terminal: `anchor compare bitfinex bybit`
- Each listing in full: https://www.anchorterminal.com/api/v1/tools/bitfinex.json and https://www.anchorterminal.com/api/v1/tools/bybit.json

## Other comparisons with Bitfinex API or Bybit

- [Bitfinex API vs Bitget](https://www.anchorterminal.com/compare/bitfinex-vs-bitget.md)
- [Bitfinex API vs Bithumb Open API](https://www.anchorterminal.com/compare/bitfinex-vs-bithumb.md)
- [Bitfinex API vs Bitstamp API](https://www.anchorterminal.com/compare/bitfinex-vs-bitstamp.md)
- [Bitfinex API vs Coinbase Advanced Trade API](https://www.anchorterminal.com/compare/bitfinex-vs-coinbase-advanced-trade.md)
- [Bitfinex API vs Coinbase MCP server (Coinbase for Agents)](https://www.anchorterminal.com/compare/bitfinex-vs-coinbase-mcp.md)
- [Bitfinex API vs Crypto.com Exchange API](https://www.anchorterminal.com/compare/bitfinex-vs-crypto-com-exchange.md)
- [Bitfinex API vs Deribit](https://www.anchorterminal.com/compare/bitfinex-vs-deribit.md)
- [Bitfinex API vs dYdX](https://www.anchorterminal.com/compare/bitfinex-vs-dydx.md)
- [Bitfinex API vs Gate](https://www.anchorterminal.com/compare/bitfinex-vs-gate-io.md)
- [Bitfinex API vs Gemini Exchange API](https://www.anchorterminal.com/compare/bitfinex-vs-gemini-exchange.md)
- [Bitfinex API vs HTX trading API](https://www.anchorterminal.com/compare/bitfinex-vs-htx.md)
- [Bitfinex API vs Hyperliquid](https://www.anchorterminal.com/compare/bitfinex-vs-hyperliquid.md)
- [Bitfinex API vs Kraken API](https://www.anchorterminal.com/compare/bitfinex-vs-kraken.md)
- [Bitfinex API vs KuCoin](https://www.anchorterminal.com/compare/bitfinex-vs-kucoin.md)
- [Bitfinex API vs MEXC API](https://www.anchorterminal.com/compare/bitfinex-vs-mexc.md)
- [Bitfinex API vs OKX API](https://www.anchorterminal.com/compare/bitfinex-vs-okx.md)
- [Bitfinex API vs Uniswap Trading API](https://www.anchorterminal.com/compare/bitfinex-vs-uniswap.md)
- [Bitfinex API vs Upbit Open API](https://www.anchorterminal.com/compare/bitfinex-vs-upbit.md)
- [Bitget vs Bybit](https://www.anchorterminal.com/compare/bitget-vs-bybit.md)
- [Bithumb Open API vs Bybit](https://www.anchorterminal.com/compare/bithumb-vs-bybit.md)
- [Bitstamp API vs Bybit](https://www.anchorterminal.com/compare/bitstamp-vs-bybit.md)
- [Bybit vs Coinbase Advanced Trade API](https://www.anchorterminal.com/compare/bybit-vs-coinbase-advanced-trade.md)
- [Bybit vs Coinbase MCP server (Coinbase for Agents)](https://www.anchorterminal.com/compare/bybit-vs-coinbase-mcp.md)
- [Bybit vs Crypto.com Exchange API](https://www.anchorterminal.com/compare/bybit-vs-crypto-com-exchange.md)
- [Bybit vs Deribit](https://www.anchorterminal.com/compare/bybit-vs-deribit.md)
- [Bybit vs dYdX](https://www.anchorterminal.com/compare/bybit-vs-dydx.md)
- [Bybit vs Gate](https://www.anchorterminal.com/compare/bybit-vs-gate-io.md)
- [Bybit vs Gemini Exchange API](https://www.anchorterminal.com/compare/bybit-vs-gemini-exchange.md)
- [Bybit vs HTX trading API](https://www.anchorterminal.com/compare/bybit-vs-htx.md)
- [Bybit vs Hyperliquid](https://www.anchorterminal.com/compare/bybit-vs-hyperliquid.md)
- [Bybit vs Kraken API](https://www.anchorterminal.com/compare/bybit-vs-kraken.md)
- [Bybit vs KuCoin](https://www.anchorterminal.com/compare/bybit-vs-kucoin.md)
- [Bybit vs MEXC API](https://www.anchorterminal.com/compare/bybit-vs-mexc.md)
- [Bybit vs OKX API](https://www.anchorterminal.com/compare/bybit-vs-okx.md)
- [Bybit vs Uniswap Trading API](https://www.anchorterminal.com/compare/bybit-vs-uniswap.md)
- [Bybit vs Upbit Open API](https://www.anchorterminal.com/compare/bybit-vs-upbit.md)
- [Binance API vs Bitfinex API](https://www.anchorterminal.com/compare/binance-vs-bitfinex.md)
- [Binance API vs Bybit](https://www.anchorterminal.com/compare/binance-vs-bybit.md)

---

Query this catalogue directly over MCP: https://www.anchorterminal.com/mcp (Streamable HTTP, no key). How: https://www.anchorterminal.com/agents/#mcp
