Head to head · Exchange market data · October 2026 research run
Bitfinex API vs Upbit Open API
Bitfinex API scores 58.4 (C) on agent readiness against Upbit Open API's 54.7 (C), and leads in 3 of 7 scored categories. Upbit Open API leads on schema & documentation, agent ergonomics, maintenance & community and transparency & trust. Both do exchange market data.
Best crypto exchange APIs and MCP servers for AI agents · All 210 exchanges comparisons
Which one, for what
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 42
- Payments & pricing, 40 against 15
Watch for
No official MCP server, OpenAPI file or AsyncAPI file; the registry's Bitfinex servers are third parties proxying public market data
Best for KRW-market trading for agents acting for a verified Korean account, with first-party SDKs, a CLI and skills but no MCP.
Ahead on
- Schema & documentation, 66 against 48
- Agent ergonomics, 70 against 61
- Maintenance & community, 83 against 41
- Transparency & trust, 54 against 49
Watch for
No MCP server; the agent route is the CLI through skills, which need a terminal
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 +43
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.
Upbit Open API 42
Read with the hosted lines. No status page found on docs.upbit.com or in llms.txt; a wallet-status endpoint and an announcements stream stand in (0). No readable incident history (5). Rate limits documented with numbers per group, per IP and per pocket, updated 7 October 2026 (15). 429 then 418 with a stated block length and a Remaining-Req header, an order-test endpoint and a self-match-prevention default; an order identifier for safe retries was not checked (12 of 15). No SLA found (0). Generally available (10). 0 + 5 + 15 + 12 + 0 + 10 = 42.
Maintenance & community Upbit Open API +42
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.
Upbit Open API 83
Read as a closed service. SDK v1.1.0 on 20 October 2026 (30). The CLI 1.0.0 on 1 September, the rate-limit update of 7 October, the SDK on 20 October and the path-format notice for 16 November 2026 (20). open-api@upbit.com answers in turn on weekdays per the support notice, notices carry dates, and the six upbit-official repositories show no open issues (12 of 15). Current official SDKs in Python, TypeScript and Go (15). Apache-2.0 repositories pushed in October 2026; CI not checked (6 of 10). 30 + 20 + 12 + 15 + 6 = 83.
Payments & pricing Bitfinex API +25
Bitfinex API 40
No machine payment protocol (0). The fees page is public without login (20), though it shows zero maker and taker with no tiers or date. The API is free, public endpoints need no account, and paper trading needs no money (20). A person must sign up in a browser with identity checks and mint the key (0). 0 + 20 + 20 + 0 = 40.
Upbit Open API 15
No machine payment protocol (0). The fee schedule is on upbit.com, which disallows every crawler path, so no price is recorded (0 of 20, unchecked). Public quotation endpoints need no key, card or account; trading needs a verified Korean account. Judgement call (15 of 20). A person must sign up, pass identity checks and issue keys on the PC web site (0). 0 + 0 + 15 + 0 = 15.
Schema & documentation Upbit Open API +18
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.
Upbit Open API 66
No OpenAPI found; the reference is a readme.io site with a Markdown twin of every page (5 of 25). llms.txt on docs.upbit.com and a kr/llms.txt index (10). Each reference page states what the endpoint does, its group and its errors, with warnings such as market_offline after maintenance (14 of 20). Typed parameters with enums for order type, side and time in force and required flags (11 of 15). Recipes in Python, Java and Node.js and an error format of error.name and error.message with HTTP statuses (13 of 15). Feature versions in page histories (v1.6.1) and dated notices with effective dates, no single API version (13 of 15). 5 + 10 + 14 + 11 + 13 + 13 = 66.
Agent ergonomics Upbit Open API +9
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.
Upbit Open API 70
Graded on the REST API with the CLI. Candle counts, list limits and the CLI's --max-items and --transform size responses (16 of 25). Paging and filters on orders and history (15 of 20). error.name codes to branch on, which the November 2026 notice tells clients to use, and 418 with its block length (15 of 20). An order-test endpoint and a CONFIRM gate in the skills; an order identifier for idempotent placement was not checked (11 of 20). Few required parameters, SDKs in three languages and a CLI, but keys need the PC web site and a registered IP (13 of 15). 16 + 15 + 15 + 11 + 13 = 70.
Transparency & trust Upbit Open API +5
Bitfinex API 49
The editorial half. A closed service whose Exchange Terms and API Terms of Service loaded only navigation, so the licence terms are unknown; the clients are MIT and Apache-2.0 (8 of 30). The privacy statement loaded only navigation, so retention and data handling are unchecked (0 of 30). The docs say v1 will be deprecated "at some point in the future" with no date, and the Python client's 4.0.0 removed endpoints with a release note (5 of 20). Subprocessors and data locations are in the unread privacy statement (0). 8 + 0 + 5 + 0 = 13.
Upbit Open API 54
The editorial half. A closed service whose user and Open API terms could not be fetched under upbit.com's robots.txt, and whose SDK licence page calls the SDK material not open source while the repositories carry Apache-2.0 (8 of 30). The developer centre's privacy policy names Dunamu Inc., gives retention periods and names Zendesk in Japan; the main privacy policy was not read (14 of 30). Notices with effective dates, including the path-format change and the deprecated Remaining-Req min field (12 of 20). Zendesk and Google Analytics named with a location for the developer centre only (8 of 20). 8 + 14 + 12 + 8 = 42.
Score by category
| Category | Weight this run | Bitfinex API | Upbit Open API | Edge |
|---|---|---|---|---|
| Reliability | 16%20 | 85 | 42 | Bitfinex API +43 |
| Performance | 10%pending | pending | pending | not scored in this run |
| Schema & documentation | 13%16.2 | 48 | 66 | Upbit Open API +18 |
| Agent ergonomics | 13%16.2 | 61 | 70 | Upbit Open API +9 |
| Security & auth | 14%17.5 | 62 | 59 | Bitfinex API +3 |
| Payments & pricing | 10%12.5 | 40 | 15 | Bitfinex API +25 |
| Task success | 10%pending | pending | pending | not scored in this run |
| Maintenance & community | 7%8.8 | 41 | 83 | Upbit Open API +42 |
| Transparency & trust | 7%8.8 | 49 | 54 | Upbit Open API +5 |
| Negative events | ≤15 | 0 | 0 | |
| Total | C 58.4/100 | C 54.7/100 |
Facts side by side
| Fact | Bitfinex API | Upbit Open API |
|---|---|---|
| Kind | HTTP API | HTTP API |
| Vendor | iFinex Inc. | Dunamu Inc. |
| Hosted endpoint | no (local only) | no (local only) |
| Transports | ||
| 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 | 0 |
| Read-only variant documented | no | no |
| llms.txt | yes | yes |
| Last release | 2026-07-18 | 2026-10-20 |
| Terms last updated | couldn't be read | no document linked |
| Privacy policy last updated | couldn't be read | no date given |
| Customer content may train models | couldn't be read | not read yet |
| Terms restrict automated access | couldn't be read | not read yet |
| Terms restrict benchmarking | couldn't be read | not read yet |
| Terms or service can change without notice | couldn't be read | not read yet |
| Arbitration or class-action waiver | couldn't be read | not read yet |
| Popularity | 480 stars | 91 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.
Upbit Open API
Upbit's Open API has a mandatory IP allow-list, scoped keys with a default withdrawal lock, per-group rate limits with 429 and 418 signalling, an order-test endpoint, official SDKs, a CLI and agent skills with a CONFIRM gate. There is no MCP server, sandbox or status page, and the fees and terms sit on a host our crawler may not read.
Before you call either
Bitfinex API
- Mint a key with read on the scopes the task needs and write only on
orders; never grantwithdrawto a trading key, and bind the key to known IPs - Use one key per client process, since each key keeps its own strictly increasing nonce and a reused nonce is rejected
- Rehearse on a paper-trading sub-account with the TEST symbols before touching real balances; the sub-account cannot be converted later
- Plan requests against the per-endpoint limit of 10 to 90 a minute per IP;
ERR_RATE_LIMITblocks the IP for 60 seconds with no Retry-After - Map each response by position from the docs' field tables and set a
cidon orders, because responses are arrays and a 400 carries no reason
Upbit Open API
- Ask the person for a key with only the functions the task needs and your server's public IPv4 address registered; a private or unregistered IP is refused
- Sign every request with a fresh JWT (HS512, new nonce, SHA512 query hash) and branch on error.name, not error.message
- Run POST /v1/orders/test before a live order; it costs nothing and shares the 8-a-second order-test group
- Read Remaining-Req and keep orders under 12 a second per pocket; on 429 wait for the next second and on 418 wait out the stated block
- Leave the withdrawal safe-lock on unless the person lifts it in the app, and send paths with single slashes and no trailing slash before 16 November 2026
Questions
Which is better for AI agents, Bitfinex API or Upbit Open API?
Bitfinex API scores 58.4 (C) on agent readiness against Upbit Open API's 54.7 (C), and leads in 3 of 7 scored categories. Upbit Open API leads on schema & documentation, agent ergonomics, maintenance & community and transparency & trust.
Do Bitfinex API and Upbit Open API need an API key?
Both need an API key.
Can an agent call Bitfinex API and Upbit Open API without installing anything?
No hosted endpoint is listed for Bitfinex API. No hosted endpoint is listed for Upbit Open API.
Other comparisons with Bitfinex API or Upbit Open API
- Bitfinex API vs Bitget
- Bitfinex API vs Bithumb Open API
- Bitfinex API vs Bitstamp API
- Bitfinex API vs Bybit
- Bitfinex API vs Coinbase Advanced Trade API
- Bitfinex API vs Coinbase MCP server (Coinbase for Agents)
- Bitfinex API vs Crypto.com Exchange API
- Bitfinex API vs Deribit
- Bitfinex API vs dYdX
- Bitfinex API vs Gate
- Bitfinex API vs Gemini Exchange API
- Bitfinex API vs HTX trading API
- Bitfinex API vs Hyperliquid
- Bitfinex API vs Kraken API
- Bitfinex API vs KuCoin
- Bitfinex API vs MEXC API
- Bitfinex API vs OKX API
- Bitfinex API vs Uniswap Trading API
- Bitget vs Upbit Open API
- Bithumb Open API vs Upbit Open API
- Bitstamp API vs Upbit Open API
- Bybit vs Upbit Open API
- Crypto.com Exchange API vs Upbit Open API
- Deribit vs Upbit Open API
- dYdX vs Upbit Open API
- Gate vs Upbit Open API
- Gemini Exchange API vs Upbit Open API
- HTX trading API vs Upbit Open API
- Hyperliquid vs Upbit Open API
- KuCoin vs Upbit Open API
- MEXC API vs Upbit Open API
- Binance API vs Bitfinex API
- Binance API vs Upbit Open API
- Coinbase Advanced Trade API vs Upbit Open API
- Coinbase MCP server (Coinbase for Agents) vs Upbit Open API
- Kraken API vs Upbit Open API
- OKX API vs Upbit Open API
- Uniswap Trading API vs Upbit Open API
Machine-readable
- This page as Markdown
/compare/bitfinex-vs-upbit.md· slim.min.md· JSON.json(or sendAccept: text/markdown) - Each listing in full
/api/v1/tools/bitfinex.json·/api/v1/tools/upbit.json - From a terminal
anchor compare bitfinex upbit(the CLI) - Over MCP
compare_tools {"a": "bitfinex", "b": "upbit"}at/mcp, no key