{"openapi":"3.1.0","info":{"title":"BitoPro Exchange API","version":"1.0.0","description":"Live market data from BitoPro, Taiwan's largest regulated retail crypto exchange, straight from its public v3 REST API. This is the single-venue New-Taiwan-Dollar (TWD) order-flow view. The ticker endpoint returns the last price, 24h change, 24h high/low and 24h base volume for any listed pair (BTC_TWD, ETH_TWD, USDT_TWD …), or every pair at once ranked by volume. The orderbook endpoint returns the live aggregated bid/ask depth with per-level price, size and order count, plus the resulting best bid/ask and spread. The trades endpoint returns the most recent executed trades with price, amount, side and time. The pairs endpoint lists every tradable market with its base/quote, precision and order limits, and which markets are in maintenance. Together they answer \"what does BTC cost in New Taiwan Dollars on BitoPro right now, how deep is the book, and what just traded\" — a single-venue TWD-denominated exchange view, distinct from the aggregated cross-exchange market, whole-market overview and other regional exchange APIs in the catalogue. Live, no key on the upstream, nothing stored.","contact":{"name":"PremiumApi","url":"https://www.oanor.com/by/premiumapi"}},"servers":[{"url":"https://api.oanor.com/bitopro-api","description":"oanor gateway"}],"tags":[{"name":"Market"},{"name":"Reference"},{"name":"Meta"}],"components":{"securitySchemes":{"oanorKey":{"type":"apiKey","in":"header","name":"x-oanor-key","description":"Get your key at https://www.oanor.com/developer/keys"}}},"security":[{"oanorKey":[]}],"paths":{"/v1/orderbook":{"get":{"operationId":"get_v1_orderbook","tags":["Market"],"summary":"Live bid/ask depth for a pair","description":"","parameters":[{"name":"pair","in":"query","required":true,"description":"Pair in base_quote form","schema":{"type":"string"},"example":"btc_twd"},{"name":"limit","in":"query","required":false,"description":"Depth per side (max 100)","schema":{"type":"string"},"example":"20"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK"},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/ticker":{"get":{"operationId":"get_v1_ticker","tags":["Market"],"summary":"Ticker for a pair (or all pairs)","description":"","parameters":[{"name":"pair","in":"query","required":false,"description":"Pair in base_quote form; omit for all pairs","schema":{"type":"string"},"example":"btc_twd"},{"name":"quote","in":"query","required":false,"description":"Filter all-pairs by quote currency","schema":{"type":"string"},"example":"twd"},{"name":"limit","in":"query","required":false,"description":"Max pairs when listing all","schema":{"type":"string"},"example":"100"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK"},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/trades":{"get":{"operationId":"get_v1_trades","tags":["Market"],"summary":"Most recent executed trades for a pair","description":"","parameters":[{"name":"pair","in":"query","required":true,"description":"Pair in base_quote form","schema":{"type":"string"},"example":"btc_twd"},{"name":"limit","in":"query","required":false,"description":"Max trades (max 200)","schema":{"type":"string"},"example":"30"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK"},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/pairs":{"get":{"operationId":"get_v1_pairs","tags":["Reference"],"summary":"All tradable markets with precision & limits","description":"","parameters":[{"name":"quote","in":"query","required":false,"description":"Filter by quote currency","schema":{"type":"string"},"example":"twd"}],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK"},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}},"/v1/meta":{"get":{"operationId":"get_v1_meta","tags":["Meta"],"summary":"Spec","description":"","parameters":[],"security":[{"oanorKey":[]}],"responses":{"200":{"description":"OK"},"401":{"description":"Missing or invalid x-oanor-key header"},"402":{"description":"Active subscription required"},"429":{"description":"Rate-limit or monthly quota reached"},"502":{"description":"Upstream did not respond"}}}}},"x-oanor-pricing":[{"slug":"free","name":"Free","price_cents_month":0,"monthly_call_quota":30000,"rps_limit":5,"hard_limit":true},{"slug":"starter","name":"Starter","price_cents_month":730,"monthly_call_quota":360000,"rps_limit":15,"hard_limit":true},{"slug":"pro","name":"Pro","price_cents_month":2140,"monthly_call_quota":1550000,"rps_limit":40,"hard_limit":true},{"slug":"scale","name":"Scale","price_cents_month":4960,"monthly_call_quota":5600000,"rps_limit":120,"hard_limit":true}],"x-oanor-marketplace-url":"https://www.oanor.com/api/bitopro-api"}