Документация API v1

REST/JSON API с P2P-данными USDT шести бирж. Все запросы требуют ключ в заголовке X-API-Key.

Аутентификация

Базовый URL: https://metarates.online/api/v1

Передавайте ключ в заголовке X-API-Key (или Authorization: Bearer <ключ>). Ключ можно создать бесплатно на странице API.

Быстрый старт

curl -H "X-API-Key: YOUR_KEY" \
  "https://metarates.online/api/v1/rates?fiat=UAH"
const res = await fetch("https://metarates.online/api/v1/rates?fiat=UAH", {
  headers: { "X-API-Key": "YOUR_KEY" },
});
const data = await res.json();
console.log(data.best_buy);
import requests

r = requests.get(
    "https://metarates.online/api/v1/rates",
    params={"fiat": "UAH"},
    headers={"X-API-Key": "YOUR_KEY"},
    timeout=10,
)
print(r.json()["best_buy"])

GET /api/v1/markets

Биржи, валюты и возможности вашего тарифа. Доступно с тарифа: Free

Пример ответа
{
  "asset": "USDT",
  "exchanges": ["Binance", "Bybit", "OKX", "HTX", "KuCoin", "Bitget"],
  "fiats": [{"code": "UAH", "name": "Ukrainian hryvnia"}, ...],
  "plan": {"name": "Pro", "monthly_quota": 2000000, "requests_per_minute": 300,
           "orderbook_rows": 20, "history_hours": 720, "features": ["arbitrage", "history", "markets", "orderbook", "rates", "stats"]}
}

GET /api/v1/rates

Лучшая надёжная цена покупки и продажи по каждой бирже и в целом, спред между биржами. Доступно с тарифа: Free

ПараметрПо умолчаниюОписание
fiatUAHКод валюты из markets.
Пример ответа
{
  "asset": "USDT", "fiat": "UAH", "updated_at": "2026-10-06T14:23:17Z",
  "best_buy": {"price": 45.1, "exchange": "Binance"},
  "best_sell": {"price": 47.6, "exchange": "Binance"},
  "cross_exchange_spread_pct": null,
  "exchanges": [
    {"exchange": "Binance", "buy": 45.1, "sell": 47.6, "buy_ads": 18, "sell_ads": 16},
    {"exchange": "Bybit", "buy": 46.06, "sell": 45.65, "buy_ads": 10, "sell_ads": 16}
  ]
}

GET /api/v1/orderbook

Живые объявления биржи в едином формате с флагом trusted. Доступно с тарифа: Free

ПараметрПо умолчаниюОписание
exchangeобязательноБиржа: Binance, Bybit, OKX, HTX, KuCoin или Bitget.
fiatUAHКод валюты.
sideBUYBUY: цены продавцов, SELL: цены покупателей.
rows10Количество объявлений, максимум зависит от тарифа.
payment_methodпустоПодстрока названия метода оплаты, например monobank.
Пример ответа
{
  "asset": "USDT", "exchange": "Binance", "fiat": "UAH", "side": "BUY", "payment_method": null, "count": 1,
  "ads": [{
    "price": 45.19, "min_amount": 900, "max_amount": 900,
    "payment_methods": ["Monobank (Card)", "A-Bank (Card)"],
    "completed_orders": 8093, "completion_rate": 100.0, "nickname": "trader", "trusted": true
  }]
}

GET /api/v1/stats

Средние за 24 ч и 7 дней, минимум, вердикт и самые дешёвые часы суток по Киеву. Доступно с тарифа: Starter

ПараметрПо умолчаниюОписание
fiatUAHКод валюты.
Пример ответа
{
  "asset": "USDT", "fiat": "UAH", "best_buy_now": 45.1, "avg_24h": 44.6541, "avg_7d": 44.6302, "min_24h": 44.17,
  "delta_vs_24h_pct": 1.0, "delta_vs_7d_pct": 1.05, "verdict": "high",
  "cheapest_hours_kyiv": [{"hour": 6, "delta_pct": -0.82}, {"hour": 7, "delta_pct": -0.74}],
  "data_points": 2019
}

GET /api/v1/history

История лучшей надёжной цены с шагом около 5 минут. Доступно с тарифа: Pro

ПараметрПо умолчаниюОписание
fiatUAHКод валюты.
exchangebestНазвание биржи или best для лучшей среди всех.
hours24Глубина истории в часах, ограничена тарифом.
max_points300Максимум точек в ответе, до 1000.
Пример ответа
{
  "asset": "USDT", "fiat": "PLN", "exchange": "best", "hours": 24,
  "points": [{"t": "2026-10-06T13:00:00Z", "buy": 3.71, "sell": 3.78}, ...]
}

GET /api/v1/arbitrage

Связки покупка→продажа между биржами с учётом лимитов, комиссии перевода и методов оплаты. Доступно с тарифа: Pro

ПараметрПо умолчаниюОписание
fiatUAHКод валюты.
amount1000Сумма обмена в выбранной валюте.
transfer_fee_usdt1.0Комиссия перевода между биржами в USDT.
Пример ответа
{
  "asset": "USDT", "fiat": "UAH", "amount": 10000.0, "transfer_fee_usdt": 1.0,
  "opportunities": [{
    "buy_exchange": "Bitget", "sell_exchange": "Binance", "buy_price": 45.2, "sell_price": 47.6,
    "gross_spread_pct": 5.31, "net_profit_pct": 4.83, "net_profit": 483.37,
    "buy_limits": [4000, 18000], "sell_limits": [8000, 22000],
    "buy_methods": ["Monobank"], "sell_methods": ["OTP BANK"]
  }]
}

GET /api/v1/me

Ваш тариф и использование за текущий месяц. Доступно с тарифа: Free

Пример ответа
{
  "key_prefix": "mr_live_RfzXOE", "plan": "Free", "monthly_quota": 5000,
  "used_this_month": 4, "requests_per_minute": 10
}

Лимиты и заголовки

Каждый ответ содержит заголовки с использованием лимита. Превышение возвращает 429.

X-Plan: Pro
X-RateLimit-Limit-Minute: 300
X-RateLimit-Remaining-Minute: 299
X-Quota-Limit: 2000000
X-Quota-Remaining: 1999990
Retry-After: 12   (429)

Ошибки

Ошибки имеют единый формат: HTTP-статус и JSON с полем detail, в котором code и message.

{"detail": {"code": "plan_required", "message": "The 'history' endpoint requires the Pro plan or above."}}
КодHTTPКогда
missing_key401Ключ не передан.
invalid_key401Ключ недействителен или отозван.
plan_required403Эндпоинт недоступен на вашем тарифе.
unsupported_fiat400Неизвестная валюта.
unsupported_exchange400Неизвестная биржа.
rate_limited429Превышен лимит в минуту.
quota_exceeded429Исчерпана месячная квота.
data_unavailable503Свежих данных для этого рынка пока нет.

Важно знать

  • BUY означает цену, по которой вы покупаете USDT (объявления продавцов). SELL означает цену, по которой вы продаёте USDT (объявления покупателей).
  • Цены rates и history берутся из лучших надёжных объявлений без учёта метода оплаты. Для конкретного способа оплаты используйте orderbook с payment_method.
  • Цены и лимиты меняются каждую секунду. Перед сделкой всегда проверяйте объявление на бирже. Данные не являются финансовым советом.

История изменений: v1 Первый выпуск: markets, rates, orderbook, stats, history, arbitrage, me.

Данные берутся из публичных P2P-объявлений сторонних бирж и предоставляются «как есть». Это не финансовый совет.

К странице API