Bitculator
Bitculator · Data API · v1

Bitculator Data API

73 эндпоинтов 15 групп X-Quota-* в каждом вызове http://localhost/api/v1

Все эндпоинты находятся под /api/v1 и требуют Bearer-ключ с правом data-api — создайте его в своей консоли разработчика.

Ваш первый вызов:

curl https://bitculator.com/api/v1/prices/bitcoin \
  -H "Authorization: Bearer YOUR_API_KEY"

Ответы приходят в формате JSON. Цены, курсы и объёмы предложения — это десятичные строки (числа с плавающей точкой не сохраняют рыночную точность); счётчики и аналитические значения — числа. Каждый ответ несёт вашу текущую квоту в заголовках X-Quota-Limit / X-Quota-Used / X-Quota-Reset, а ошибки всегда используют оболочку {"error": {"code", "message", "details"}}.

У Data API есть собственная месячная квота, привязанная к вашему тарифу API и полностью отдельная от ваших встраиваемых виджетов. Лимиты per_page зависят от тарифа (Free 100, Starter/Pro 250); превышение лимита возвращает 422, а не обрезает значение.

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

Для аутентификации запросов добавляйте заголовок Authorization: Bearer {YOUR_API_KEY} к каждому запросу.

Создайте ключ Data API в своей консоли разработчика — ключи работают только как Bearer и несут право data-api. Держите их на стороне сервера; они не предназначены для встраивания на клиенте.

Заголовок Authorization
Создать ключ →
Bearer
bc_••••••••••••••••

Отправляется как Authorization: Bearer {YOUR_API_KEY} в каждом запросе.

9 эндпоинтов

Монеты

Ранжированные рыночные данные по монетам и токенам: списки с пагинацией, детали отдельной монеты, движения (gainers/losers), недавно добавленные, трендовые и временные ряды по каждой монете. Цены, капитализация и предложение — десятичные СТРОКИ (числа с плавающей точкой не сохраняют рыночную точность); процентные изменения, ранги и счётчики — числа.

Список монет

Ранжированные монеты с ценами, фильтрами и селекторами, с пагинацией через оболочку Laravel links + meta. Цены, капитализация и circulating_supply — десятичные строки; изменения и ранги — числа.

GET
http://localhost/api/v1/coins
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1). Не менее 1.

per_page
integer необязательный
50

Строк на страницу. Лимит зависит от тарифа (Free 100, Starter/Pro 250); превышение возвращает 422, а не обрезает значение. Не менее 1. Не более 100.

type
string необязательный
coin

Ограничить одним типом актива: coin или token.

Одно из: coin token

status
string необязательный
active

Статус листинга: active, delisted, untracked, progressing, awaiting или preparing. По умолчанию все публичные статусы.

Одно из: active delisted untracked progressing awaiting preparing

search
string необязательный
bitcoin

Полнотекстовое совпадение по названию или символу. Не более 100 символов.

min_price
number необязательный
0.5

Только монеты с ценой не ниже этого значения в USD. Не менее 0.

max_price
number необязательный
100000

Только монеты с ценой не выше этого значения в USD. Не менее 0.

min_marketcap
number необязательный
1000000

Только монеты с капитализацией в USD не ниже этого значения. Не менее 0.

max_marketcap
number необязательный
5000000000000

Только монеты с капитализацией в USD не выше этого значения. Не менее 0.

min_volume
number необязательный
1000000

Только монеты с объёмом за 24 часа в USD не ниже этого значения. Не менее 0.

max_volume
number необязательный
100000000000

Только монеты с объёмом за 24 часа в USD не выше этого значения. Не менее 0.

ids
string необязательный
38,39

Фильтр по конкретным идентификаторам монет (CSV, до 100 селекторов вместе со slugs/symbols). Не более 1000 символов.

slugs
string необязательный
bitcoin,ethereum

Фильтр по конкретным слагам монет (CSV, до 100 селекторов в сумме). Не более 2000 символов.

symbols
string необязательный
BTC,ETH

Фильтр по конкретным символам монет (CSV, без учёта регистра, до 100 селекторов в сумме). Не более 1000 символов.

sort
string необязательный
-marketcap

Поля сортировки через запятую; префикс - для убывания. Доступны: marketcap, rank, price, volume_24h, change_24h, change_7d. Не более 100 символов.

interval
string необязательный
24h

Окно движений только для /coins/gainers и /coins/losers: 24h или 7d.

Одно из: 24h 7d

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins?page=1&per_page=50&type=coin&status=active&search=bitcoin&min_price=0.5&max_price=100000&min_marketcap=1000000&max_marketcap=5000000000000&min_volume=1000000&max_volume=100000000000&ids=38%2C39&slugs=bitcoin%2Cethereum&symbols=BTC%2CETH&sort=-marketcap&interval=24h" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Недавно добавленные монеты

Новейшие листинги — отсортированы по status_updated_at (момент активации; created_at — дата обхода, которая предшествует листингу на произвольное время). Та же структура строк и оболочка пагинации, что и у List coins.

GET
http://localhost/api/v1/coins/recently-added
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1). Не менее 1.

per_page
integer необязательный
50

Строк на страницу. Лимит зависит от тарифа (Free 100, Starter/Pro 250); превышение возвращает 422, а не обрезает значение. Не менее 1. Не более 100.

type
string необязательный
coin

Ограничить одним типом актива: coin или token.

Одно из: coin token

status
string необязательный
active

Статус листинга: active, delisted, untracked, progressing, awaiting или preparing. По умолчанию все публичные статусы.

Одно из: active delisted untracked progressing awaiting preparing

search
string необязательный
bitcoin

Полнотекстовое совпадение по названию или символу. Не более 100 символов.

min_price
number необязательный
0.5

Только монеты с ценой не ниже этого значения в USD. Не менее 0.

max_price
number необязательный
100000

Только монеты с ценой не выше этого значения в USD. Не менее 0.

min_marketcap
number необязательный
1000000

Только монеты с капитализацией в USD не ниже этого значения. Не менее 0.

max_marketcap
number необязательный
5000000000000

Только монеты с капитализацией в USD не выше этого значения. Не менее 0.

min_volume
number необязательный
1000000

Только монеты с объёмом за 24 часа в USD не ниже этого значения. Не менее 0.

max_volume
number необязательный
100000000000

Только монеты с объёмом за 24 часа в USD не выше этого значения. Не менее 0.

ids
string необязательный
38,39

Фильтр по конкретным идентификаторам монет (CSV, до 100 селекторов вместе со slugs/symbols). Не более 1000 символов.

slugs
string необязательный
bitcoin,ethereum

Фильтр по конкретным слагам монет (CSV, до 100 селекторов в сумме). Не более 2000 символов.

symbols
string необязательный
BTC,ETH

Фильтр по конкретным символам монет (CSV, без учёта регистра, до 100 селекторов в сумме). Не более 1000 символов.

sort
string необязательный
-marketcap

Поля сортировки через запятую; префикс - для убывания. Доступны: marketcap, rank, price, volume_24h, change_24h, change_7d. Не более 100 символов.

interval
string необязательный
24h

Окно движений только для /coins/gainers и /coins/losers: 24h или 7d.

Одно из: 24h 7d

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins/recently-added?page=1&per_page=50&type=coin&status=active&search=bitcoin&min_price=0.5&max_price=100000&min_marketcap=1000000&max_marketcap=5000000000000&min_volume=1000000&max_volume=100000000000&ids=38%2C39&slugs=bitcoin%2Cethereum&symbols=BTC%2CETH&sort=-marketcap&interval=24h" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Лидеры роста

Крупнейшие растущие за окно interval (по умолчанию 24h или 7d). Та же структура строк и оболочка пагинации, что и у List coins.

GET
http://localhost/api/v1/coins/gainers
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1). Не менее 1.

per_page
integer необязательный
50

Строк на страницу. Лимит зависит от тарифа (Free 100, Starter/Pro 250); превышение возвращает 422, а не обрезает значение. Не менее 1. Не более 100.

type
string необязательный
coin

Ограничить одним типом актива: coin или token.

Одно из: coin token

status
string необязательный
active

Статус листинга: active, delisted, untracked, progressing, awaiting или preparing. По умолчанию все публичные статусы.

Одно из: active delisted untracked progressing awaiting preparing

search
string необязательный
bitcoin

Полнотекстовое совпадение по названию или символу. Не более 100 символов.

min_price
number необязательный
0.5

Только монеты с ценой не ниже этого значения в USD. Не менее 0.

max_price
number необязательный
100000

Только монеты с ценой не выше этого значения в USD. Не менее 0.

min_marketcap
number необязательный
1000000

Только монеты с капитализацией в USD не ниже этого значения. Не менее 0.

max_marketcap
number необязательный
5000000000000

Только монеты с капитализацией в USD не выше этого значения. Не менее 0.

min_volume
number необязательный
1000000

Только монеты с объёмом за 24 часа в USD не ниже этого значения. Не менее 0.

max_volume
number необязательный
100000000000

Только монеты с объёмом за 24 часа в USD не выше этого значения. Не менее 0.

ids
string необязательный
38,39

Фильтр по конкретным идентификаторам монет (CSV, до 100 селекторов вместе со slugs/symbols). Не более 1000 символов.

slugs
string необязательный
bitcoin,ethereum

Фильтр по конкретным слагам монет (CSV, до 100 селекторов в сумме). Не более 2000 символов.

symbols
string необязательный
BTC,ETH

Фильтр по конкретным символам монет (CSV, без учёта регистра, до 100 селекторов в сумме). Не более 1000 символов.

sort
string необязательный
-marketcap

Поля сортировки через запятую; префикс - для убывания. Доступны: marketcap, rank, price, volume_24h, change_24h, change_7d. Не более 100 символов.

interval
string необязательный
24h

Окно движений только для /coins/gainers и /coins/losers: 24h или 7d.

Одно из: 24h 7d

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins/gainers?page=1&per_page=50&type=coin&status=active&search=bitcoin&min_price=0.5&max_price=100000&min_marketcap=1000000&max_marketcap=5000000000000&min_volume=1000000&max_volume=100000000000&ids=38%2C39&slugs=bitcoin%2Cethereum&symbols=BTC%2CETH&sort=-marketcap&interval=24h" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Лидеры падения

Крупнейшие падающие за окно interval (по умолчанию 24h или 7d). Та же структура строк и оболочка пагинации, что и у List coins.

GET
http://localhost/api/v1/coins/losers
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1). Не менее 1.

per_page
integer необязательный
50

Строк на страницу. Лимит зависит от тарифа (Free 100, Starter/Pro 250); превышение возвращает 422, а не обрезает значение. Не менее 1. Не более 100.

type
string необязательный
coin

Ограничить одним типом актива: coin или token.

Одно из: coin token

status
string необязательный
active

Статус листинга: active, delisted, untracked, progressing, awaiting или preparing. По умолчанию все публичные статусы.

Одно из: active delisted untracked progressing awaiting preparing

search
string необязательный
bitcoin

Полнотекстовое совпадение по названию или символу. Не более 100 символов.

min_price
number необязательный
0.5

Только монеты с ценой не ниже этого значения в USD. Не менее 0.

max_price
number необязательный
100000

Только монеты с ценой не выше этого значения в USD. Не менее 0.

min_marketcap
number необязательный
1000000

Только монеты с капитализацией в USD не ниже этого значения. Не менее 0.

max_marketcap
number необязательный
5000000000000

Только монеты с капитализацией в USD не выше этого значения. Не менее 0.

min_volume
number необязательный
1000000

Только монеты с объёмом за 24 часа в USD не ниже этого значения. Не менее 0.

max_volume
number необязательный
100000000000

Только монеты с объёмом за 24 часа в USD не выше этого значения. Не менее 0.

ids
string необязательный
38,39

Фильтр по конкретным идентификаторам монет (CSV, до 100 селекторов вместе со slugs/symbols). Не более 1000 символов.

slugs
string необязательный
bitcoin,ethereum

Фильтр по конкретным слагам монет (CSV, до 100 селекторов в сумме). Не более 2000 символов.

symbols
string необязательный
BTC,ETH

Фильтр по конкретным символам монет (CSV, без учёта регистра, до 100 селекторов в сумме). Не более 1000 символов.

sort
string необязательный
-marketcap

Поля сортировки через запятую; префикс - для убывания. Доступны: marketcap, rank, price, volume_24h, change_24h, change_7d. Не более 100 символов.

interval
string необязательный
24h

Окно движений только для /coins/gainers и /coins/losers: 24h или 7d.

Одно из: 24h 7d

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins/losers?page=1&per_page=50&type=coin&status=active&search=bitcoin&min_price=0.5&max_price=100000&min_marketcap=1000000&max_marketcap=5000000000000&min_volume=1000000&max_volume=100000000000&ids=38%2C39&slugs=bitcoin%2Cethereum&symbols=BTC%2CETH&sort=-marketcap&interval=24h" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Получить детали монеты

Полный профиль отдельной монеты. Помимо полей списка добавляет: supply (циркулирующее/общее/максимальное), OHLC за today, all_time_high / all_time_low (цена, дата и percent_from текущей цены), fully_diluted_valuation, рыночные counts (биржи/пары/тикеры/кошельки), decimals, genesis_date, официальные links (типизированный список URL), контракты токена contracts и локализованное HTML-description (откат на английский, если запрошенный язык отсутствует). Все поля цены/предложения — десятичные строки.

GET
http://localhost/api/v1/coins/{slug}
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
bitcoin

Слаг монеты.

Параметры запроса

locale
string необязательный
en

Язык контента для описания (откат на английский).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins/bitcoin?locale=en" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

История свечей

Временной ряд OHLC + объём + капитализация по каждой монете. Выберите interval: minutely, half-hourly, hourly или daily. Срок хранения — жёсткое свойство конвейера сводок: minutely 8 дней, half-hourly 3 месяца, hourly 6 месяцев, daily вечно; запросы за пределами окна возвращают то, что есть. Когда задан limit, вы получаете N САМЫХ СВЕЖИХ строк в окне, отдаваемых от старых к новым. Цены — десятичные строки.

GET
http://localhost/api/v1/coins/{slug}/history
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
bitcoin

Слаг монеты.

Параметры запроса

interval
string необязательный
daily

minutely, half-hourly, hourly или daily (по умолчанию daily).

start
string необязательный
2026-06-01

Нижняя граница даты/времени в формате ISO.

end
string необязательный
2026-06-30

Верхняя граница даты/времени в формате ISO (значение только с датой означает до конца этого дня).

limit
integer необязательный
30

Максимум строк (1–2000, по умолчанию 1000).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins/bitcoin/history?interval=daily&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

История капитализации

Те же сводки по каждой монете, что и Candle history, спроецированные только на {time, marketcap}. Те же варианты interval и окна хранения (minutely 8 дней, half-hourly 3 месяца, hourly 6 месяцев, daily вечно), самые свежие N при заданном limit.

GET
http://localhost/api/v1/coins/{slug}/marketcap-history
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
bitcoin

Слаг монеты.

Параметры запроса

interval
string необязательный
daily

minutely, half-hourly, hourly или daily (по умолчанию daily).

start
string необязательный
2026-06-01

Нижняя граница даты/времени в формате ISO.

end
string необязательный
2026-06-30

Верхняя граница даты/времени в формате ISO.

limit
integer необязательный
30

Максимум строк (1–2000, по умолчанию 1000).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins/bitcoin/marketcap-history?interval=daily&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Спарклайн монеты

Компактный ряд цен монеты за выбранный period, для построения спарклайнов.

GET
http://localhost/api/v1/coins/{slug}/sparkline
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
bitcoin

Слаг монеты.

Параметры запроса

period
string необязательный
7d

24h, 7d, 30d, 60d, 90d, 180d или 365d (по умолчанию 7d).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins/bitcoin/sparkline?period=7d" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
3 эндпоинтов

Цены

Облегчённый быстрый путь для цен — текущая цена, капитализация, объём за 24 часа и недавние изменения для запрошенного набора монет. /prices требует селектор (ids, slugs или symbols); /prices/{slug} нацелен на одну монету. При желании convert в фиатную валюту (цены крипто обновляются ~каждую минуту, фиат ~дважды в день). Цены и капитализация — десятичные строки.

Получить цены

Цены для запрошенного набора монет. Передайте хотя бы один селектор — ids, slugs или symbols (до 100 в сумме). meta.currency отражает цель конвертации (USD, если не задан convert).

GET
http://localhost/api/v1/prices
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

ids
string необязательный
38,39

Идентификаторы монет для расчёта цены (CSV). Требуется хотя бы один из ids, slugs или symbols; три списка вместе ограничены 100 селекторами. Это поле обязательно, если отсутствуют slugs и symbols. Не более 1000 символов.

slugs
string необязательный
bitcoin,ethereum

Слаги монет для расчёта цены (CSV). Требуется хотя бы один из ids, slugs или symbols. Это поле обязательно, если отсутствуют ids и symbols. Не более 2000 символов.

symbols
string необязательный
BTC,ETH

Символы монет для расчёта цены (CSV, без учёта регистра). Требуется хотя бы один из ids, slugs или symbols. Это поле обязательно, если отсутствуют ids и slugs. Не более 1000 символов.

convert
string необязательный
EUR

Конвертация цен/капитализации в активную фиатную валюту по символу (по умолчанию USD). Курсы обновляются ~дважды в день.

Одно из: USD EUR JPY BGN CZK DKK GBP HUF PLN RON SEK CHF ISK NOK HRK RUB TRY AUD BRL CAD CNY HKD IDR ILS INR KRW MXN MYR NZD PHP SGD THB ZAR ARS DZD MAD TWD

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/prices?ids=38%2C39&slugs=bitcoin%2Cethereum&symbols=BTC%2CETH&convert=EUR" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Получить цену монеты

Снимок цены отдельной монеты. При желании convert в активную фиатную валюту по символу (по умолчанию USD).

GET
http://localhost/api/v1/prices/{slug}
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
bitcoin

Слаг монеты.

Параметры запроса

convert
string необязательный
EUR

Символ активной фиатной валюты для расчёта цены (по умолчанию USD).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/prices/bitcoin?convert=EUR" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Историческая цена

Цена монеты в USD на заданную дату, взятая из дневной истории (точный день, откат ±3 дня — тот же резолвер, что использует портфель). Только крипто: у фиатных строк нет дневной истории.

GET
http://localhost/api/v1/historical-price
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

slug
string обязательный
bitcoin

Идентификатор-слаг монеты.

date
string обязательный
2021-04-14

date Дата поиска (после 2008-12-31, не в будущем).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/historical-price?slug=bitcoin&date=2021-04-14" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
5 эндпоинтов

Рынки

Тикеры (рынки по каждой бирже) и пары (рынки, агрегированные по площадкам), плюс рынки монеты и сырые торговые символы по каждой бирже. Всё это — снимки данных: истории по тикерам/парам не существует. Объёмы в USD — числа; цены — десятичные строки.

Рынки монеты

Все рынки монеты — тикеры, у которых пара содержит монету как базовый ИЛИ котируемый актив. Та же структура строк и фильтры, что и у List tickers.

GET
http://localhost/api/v1/coins/{slug}/markets
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
bitcoin

Слаг монеты.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1). Не менее 1.

per_page
integer необязательный
50

Строк на страницу. Лимит зависит от тарифа (Free 100, Starter/Pro 250); превышение возвращает 422, а не обрезает значение. Не менее 1. Не более 100.

exchange
string необязательный
binance-exchange

Ограничить одной биржей по слагу (опустите в списке по конкретной бирже, который уже ограничен). Должно соответствовать регулярному выражению /^[a-z0-9-]{1,120}$/.

pair
integer необязательный
1

Ограничить одной парой по id. Не менее 1.

instrument
string необязательный
spot

Тип инструмента: future, option, swap, spot или margin (множественное число допускается).

Одно из: future option swap spot margin

search
string необязательный
BTC

Полнотекстовое совпадение по символу тикера. Не более 50 символов.

min_volume
number необязательный
1000000

Только тикеры с объёмом за 24 часа в USD не ниже этого значения. Не менее 0.

max_volume
number необязательный
100000000000

Только тикеры с объёмом за 24 часа в USD не выше этого значения. Не менее 0.

min_change
number необязательный
-50

Только тикеры с процентным изменением за 24 часа не ниже этого значения.

max_change
number необязательный
50

Только тикеры с процентным изменением за 24 часа не выше этого значения.

sort
string необязательный
-volume_usd

Одно поле сортировки (префикс - для убывания). Доступны: volume_usd, change_24h, price_usd, updated. По умолчанию -volume_usd. Не более 100 символов.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins/bitcoin/markets?page=1&per_page=50&exchange=binance-exchange&pair=1&instrument=spot&search=BTC&min_volume=1000000&max_volume=100000000000&min_change=-50&max_change=50&sort=-volume_usd" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Торговые символы монеты

Сырые торговые символы монеты по каждой бирже — редко заполненные справочные данные (покрытие по мере возможности).

GET
http://localhost/api/v1/coins/{slug}/symbols
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
bitcoin

Слаг монеты.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins/bitcoin/symbols" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Список тикеров

Отдельные рынки по каждой бирже (тикеры) с пагинацией. Фильтрация по бирже, паре, инструменту и диапазонам объёма/изменения. Объёмы в USD — числа; цены — десятичные строки.

GET
http://localhost/api/v1/tickers
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1). Не менее 1.

per_page
integer необязательный
50

Строк на страницу. Лимит зависит от тарифа (Free 100, Starter/Pro 250); превышение возвращает 422, а не обрезает значение. Не менее 1. Не более 100.

exchange
string необязательный
binance-exchange

Ограничить одной биржей по слагу (опустите в списке по конкретной бирже, который уже ограничен). Должно соответствовать регулярному выражению /^[a-z0-9-]{1,120}$/.

pair
integer необязательный
1

Ограничить одной парой по id. Не менее 1.

instrument
string необязательный
spot

Тип инструмента: future, option, swap, spot или margin (множественное число допускается).

Одно из: future option swap spot margin

search
string необязательный
BTC

Полнотекстовое совпадение по символу тикера. Не более 50 символов.

min_volume
number необязательный
1000000

Только тикеры с объёмом за 24 часа в USD не ниже этого значения. Не менее 0.

max_volume
number необязательный
100000000000

Только тикеры с объёмом за 24 часа в USD не выше этого значения. Не менее 0.

min_change
number необязательный
-50

Только тикеры с процентным изменением за 24 часа не ниже этого значения.

max_change
number необязательный
50

Только тикеры с процентным изменением за 24 часа не выше этого значения.

sort
string необязательный
-volume_usd

Одно поле сортировки (префикс - для убывания). Доступны: volume_usd, change_24h, price_usd, updated. По умолчанию -volume_usd. Не более 100 символов.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/tickers?page=1&per_page=50&exchange=binance-exchange&pair=1&instrument=spot&search=BTC&min_volume=1000000&max_volume=100000000000&min_change=-50&max_change=50&sort=-volume_usd" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Список пар

Торговые пары, агрегированные по площадкам, ранжированные по объёму за 24 часа в USD. Фильтрация по слагу монеты (базовый или котируемый) и диапазону объёма.

GET
http://localhost/api/v1/pairs
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1). Не менее 1.

per_page
integer необязательный
50

Строк на страницу. Лимит зависит от тарифа (Free 100, Starter/Pro 250); превышение возвращает 422, а не обрезает значение. Не менее 1. Не более 100.

search
string необязательный
BTC

Полнотекстовое совпадение по символу пары. Не более 50 символов.

coin
string необязательный
bitcoin

Ограничить парами, где этот слаг монеты является базовым или котируемым активом. Должно соответствовать регулярному выражению /^[a-z0-9-]{1,120}$/.

min_volume
number необязательный
1000000

Только пары с объёмом за 24 часа в USD не ниже этого значения. Не менее 0.

max_volume
number необязательный
100000000000

Только пары с объёмом за 24 часа в USD не выше этого значения. Не менее 0.

sort
string необязательный
-volume_usd

Поле сортировки: volume_usd или updated (префикс - для убывания). По умолчанию -volume_usd.

Одно из: volume_usd -volume_usd updated -updated

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/pairs?page=1&per_page=50&search=BTC&coin=bitcoin&min_volume=1000000&max_volume=100000000000&sort=-volume_usd" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Получить детали пары

Одна пара плюс каждый биржевой тикер, где она представлена, упорядоченные по объёму.

GET
http://localhost/api/v1/pairs/{id}
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

id
integer обязательный
1

Идентификатор пары.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/pairs/1" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
7 эндпоинтов

Биржи

Рейтинги бирж, детали, оценки доверия, временные ряды и списки рынков/монет по каждой бирже. Объёмы в USD. Отдельного столбца CEX/DEX нет — type выводится из таксономии биржи, поэтому может быть "cex", "dex" или null.

Список бирж

Ранжированные биржи с объёмом за 24 часа, доминированием, числом пар/активов и недавними изменениями. С пагинацией через оболочку Laravel links + meta.

GET
http://localhost/api/v1/exchanges
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1). Не менее 1.

per_page
integer необязательный
50

Строк на страницу. Лимит зависит от тарифа (Free 100, Starter/Pro 250); превышение возвращает 422, а не обрезает значение. Не менее 1. Не более 100.

type
string необязательный
cex

Ограничить типом площадки: cex или dex (определяется через таксономию бирж).

Одно из: cex dex

search
string необязательный
binance

Полнотекстовое совпадение по названию биржи. Не более 100 символов.

min_pairs
integer необязательный
100

Только биржи, представляющие не менее этого числа пар. Не менее 0.

max_pairs
integer необязательный
2000

Только биржи, представляющие не более этого числа пар. Не менее 0.

min_assets
integer необязательный
50

Только биржи, представляющие не менее этого числа активов. Не менее 0.

max_assets
integer необязательный
1000

Только биржи, представляющие не более этого числа активов. Не менее 0.

min_volume
number необязательный
1000000

Только биржи с объёмом за 24 часа в USD не ниже этого значения. Не менее 0.

max_volume
number необязательный
100000000000

Только биржи с объёмом за 24 часа в USD не выше этого значения. Не менее 0.

ids
string необязательный
1,12

Фильтр по конкретным идентификаторам бирж (CSV, до 100). Не более 1000 символов.

slugs
string необязательный
binance-exchange,gateio

Фильтр по конкретным слагам бирж (CSV, до 100). Не более 2000 символов.

sort
string необязательный
-volume

Поля сортировки через запятую; префикс - для убывания. Доступны: volume, rank, volume_dominance, change_24h, change_7d, pairs, assets. Не более 100 символов.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/exchanges?page=1&per_page=50&type=cex&search=binance&min_pairs=100&max_pairs=2000&min_assets=50&max_assets=1000&min_volume=1000000&max_volume=100000000000&ids=1%2C12&slugs=binance-exchange%2Cgateio&sort=-volume" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Получить детали биржи

Полный профиль отдельной биржи: рейтинг, объём/доминирование, число пар и активов, дата established, location, реферальный website и производный type (cex/dex/null).

GET
http://localhost/api/v1/exchanges/{slug}
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
binance-exchange

Слаг биржи.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/exchanges/binance-exchange" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Получить оценку доверия биржи

Совокупный рейтинг доверия score от 0 до 10 плюс его разбивка breakdown по 13 факторам (rank, volume, age, volume_trend, stability, rank_stability, ticker_health, pairs, community, assets, dominance, market_breadth, transparency). Рассчитывается по каждой бирже и кэшируется на 24 часа.

GET
http://localhost/api/v1/exchanges/{slug}/trust-score
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
binance-exchange

Слаг биржи.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/exchanges/binance-exchange/trust-score" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

История биржи

Временной ряд объёма / доминирования / пар / активов (сводки бирж не содержат OHLC). Выберите interval: minutely, hourly или daily. Срок хранения — жёсткое свойство конвейера сводок: minutely 8 дней, hourly 6 месяцев, daily вечно; когда задан limit, вы получаете N самых свежих строк в окне, от старых к новым.

GET
http://localhost/api/v1/exchanges/{slug}/history
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
binance-exchange

Слаг биржи.

Параметры запроса

interval
string необязательный
daily

minutely, hourly или daily (по умолчанию daily).

start
string необязательный
2026-06-01

Нижняя граница даты/времени в формате ISO.

end
string необязательный
2026-06-30

Верхняя граница даты/времени в формате ISO (значение только с датой означает до конца этого дня).

limit
integer необязательный
30

Максимум строк (1–2000, по умолчанию 1000).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/exchanges/binance-exchange/history?interval=daily&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Спарклайн биржи

Ряд спарклайна объёма биржи за период (по умолчанию 7d) — тот же ряд, что отрисовывают строки бирж на сайте.

GET
http://localhost/api/v1/exchanges/{slug}/sparkline
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
binance-exchange

Слаг биржи.

Параметры запроса

period
string необязательный
7d

Одно из 24h, 7d (по умолчанию), 30d, 60d, 90d, 180d, 365d.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/exchanges/binance-exchange/sparkline?period=7d" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Рынки биржи

Списки тикеров биржи (её рынки), с пагинацией. Уже ограничены биржей — не передавайте здесь параметр exchange.

GET
http://localhost/api/v1/exchanges/{slug}/tickers
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
binance-exchange

Слаг биржи.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1). Не менее 1.

per_page
integer необязательный
50

Строк на страницу. Лимит зависит от тарифа (Free 100, Starter/Pro 250); превышение возвращает 422, а не обрезает значение. Не менее 1. Не более 100.

exchange
string необязательный
binance-exchange

Ограничить одной биржей по слагу (опустите в списке по конкретной бирже, который уже ограничен). Должно соответствовать регулярному выражению /^[a-z0-9-]{1,120}$/.

pair
integer необязательный
1

Ограничить одной парой по id. Не менее 1.

instrument
string необязательный
spot

Тип инструмента: future, option, swap, spot или margin (множественное число допускается).

Одно из: future option swap spot margin

search
string необязательный
BTC

Полнотекстовое совпадение по символу тикера. Не более 50 символов.

min_volume
number необязательный
1000000

Только тикеры с объёмом за 24 часа в USD не ниже этого значения. Не менее 0.

max_volume
number необязательный
100000000000

Только тикеры с объёмом за 24 часа в USD не выше этого значения. Не менее 0.

min_change
number необязательный
-50

Только тикеры с процентным изменением за 24 часа не ниже этого значения.

max_change
number необязательный
50

Только тикеры с процентным изменением за 24 часа не выше этого значения.

sort
string необязательный
-volume_usd

Одно поле сортировки (префикс - для убывания). Доступны: volume_usd, change_24h, price_usd, updated. По умолчанию -volume_usd. Не более 100 символов.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/exchanges/binance-exchange/tickers?page=1&per_page=50&exchange=binance-exchange&pair=1&instrument=spot&search=BTC&min_volume=1000000&max_volume=100000000000&min_change=-50&max_change=50&sort=-volume_usd" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Монеты биржи

Монеты, представленные на бирже, возвращаются в той же структуре, что и List coins, и принимают те же фильтры/сортировку.

GET
http://localhost/api/v1/exchanges/{slug}/assets
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
binance-exchange

Слаг биржи.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1). Не менее 1.

per_page
integer необязательный
50

Строк на страницу. Лимит зависит от тарифа (Free 100, Starter/Pro 250); превышение возвращает 422, а не обрезает значение. Не менее 1. Не более 100.

type
string необязательный
coin

Ограничить одним типом актива: coin или token.

Одно из: coin token

status
string необязательный
active

Статус листинга: active, delisted, untracked, progressing, awaiting или preparing. По умолчанию все публичные статусы.

Одно из: active delisted untracked progressing awaiting preparing

search
string необязательный
bitcoin

Полнотекстовое совпадение по названию или символу. Не более 100 символов.

min_price
number необязательный
0.5

Только монеты с ценой не ниже этого значения в USD. Не менее 0.

max_price
number необязательный
100000

Только монеты с ценой не выше этого значения в USD. Не менее 0.

min_marketcap
number необязательный
1000000

Только монеты с капитализацией в USD не ниже этого значения. Не менее 0.

max_marketcap
number необязательный
5000000000000

Только монеты с капитализацией в USD не выше этого значения. Не менее 0.

min_volume
number необязательный
1000000

Только монеты с объёмом за 24 часа в USD не ниже этого значения. Не менее 0.

max_volume
number необязательный
100000000000

Только монеты с объёмом за 24 часа в USD не выше этого значения. Не менее 0.

ids
string необязательный
38,39

Фильтр по конкретным идентификаторам монет (CSV, до 100 селекторов вместе со slugs/symbols). Не более 1000 символов.

slugs
string необязательный
bitcoin,ethereum

Фильтр по конкретным слагам монет (CSV, до 100 селекторов в сумме). Не более 2000 символов.

symbols
string необязательный
BTC,ETH

Фильтр по конкретным символам монет (CSV, без учёта регистра, до 100 селекторов в сумме). Не более 1000 символов.

sort
string необязательный
-marketcap

Поля сортировки через запятую; префикс - для убывания. Доступны: marketcap, rank, price, volume_24h, change_24h, change_7d. Не более 100 символов.

interval
string необязательный
24h

Окно движений только для /coins/gainers и /coins/losers: 24h или 7d.

Одно из: 24h 7d

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/exchanges/binance-exchange/assets?page=1&per_page=50&type=coin&status=active&search=bitcoin&min_price=0.5&max_price=100000&min_marketcap=1000000&max_marketcap=5000000000000&min_volume=1000000&max_volume=100000000000&ids=38%2C39&slugs=bitcoin%2Cethereum&symbols=BTC%2CETH&sort=-marketcap&interval=24h" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
5 эндпоинтов

Кошельки

Обзоры криптокошельков — оценка score, количество поддерживаемых активов, число плюсов/минусов, ценовая модель и дата релиза, плюс сгруппированная таксономия тегов в ответах detail/compare. meta.top_score — наивысшая оценка среди всех кошельков (используйте её для нормализации оценок в диапазон 0–1).

Список кошельков

Обозренные кошельки с оценкой, числом активов, числом плюсов/минусов, ценовой моделью, статусом и датой релиза. С пагинацией через оболочку Laravel links + meta, плюс meta.top_score.

GET
http://localhost/api/v1/wallets
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1). Не менее 1.

per_page
integer необязательный
50

Строк на страницу. Лимит зависит от тарифа (Free 100, Starter/Pro 250); превышение возвращает 422, а не обрезает значение. Не менее 1. Не более 100.

search
string необязательный
ledger

Полнотекстовое совпадение по названию кошелька. Не более 100 символов.

min_score
integer необязательный
50

Только кошельки с оценкой обзора не ниже этого значения. Не менее 0.

max_score
integer необязательный
214

Только кошельки с оценкой обзора не выше этого значения. Не менее 0.

tags
string необязательный
12,34

Фильтр по таксономии тегов: идентификаторы групп категорий через запятую (те же идентификаторы, что отправляют фасетные фильтры на сайте). Не более 1000 символов.

ids
string необязательный
175,317

Фильтр по конкретным идентификаторам кошельков (CSV, до 100). Не более 1000 символов.

slugs
string необязательный
frostsnap,coin98-fusion-card

Фильтр по конкретным слагам кошельков (CSV, до 100). Не более 2000 символов.

sort
string необязательный
-score

Поля сортировки через запятую; префикс - для убывания. Доступны: score, released_at, assets, pros, cons. Не более 100 символов.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/wallets?page=1&per_page=50&search=ledger&min_score=50&max_score=214&tags=12%2C34&ids=175%2C317&slugs=frostsnap%2Ccoin98-fusion-card&sort=-score" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Хронология релизов кошельков

Список кошельков, закреплённый по убыванию released_at (кошельки без даты — в конце). Та же структура строк и оболочка пагинации, что и у List wallets.

GET
http://localhost/api/v1/wallets/timeline
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1). Не менее 1.

per_page
integer необязательный
50

Строк на страницу. Лимит зависит от тарифа (Free 100, Starter/Pro 250); превышение возвращает 422, а не обрезает значение. Не менее 1. Не более 100.

search
string необязательный
ledger

Полнотекстовое совпадение по названию кошелька. Не более 100 символов.

min_score
integer необязательный
50

Только кошельки с оценкой обзора не ниже этого значения. Не менее 0.

max_score
integer необязательный
214

Только кошельки с оценкой обзора не выше этого значения. Не менее 0.

tags
string необязательный
12,34

Фильтр по таксономии тегов: идентификаторы групп категорий через запятую (те же идентификаторы, что отправляют фасетные фильтры на сайте). Не более 1000 символов.

ids
string необязательный
175,317

Фильтр по конкретным идентификаторам кошельков (CSV, до 100). Не более 1000 символов.

slugs
string необязательный
frostsnap,coin98-fusion-card

Фильтр по конкретным слагам кошельков (CSV, до 100). Не более 2000 символов.

sort
string необязательный
-score

Поля сортировки через запятую; префикс - для убывания. Доступны: score, released_at, assets, pros, cons. Не более 100 символов.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/wallets/timeline?page=1&per_page=50&search=ledger&min_score=50&max_score=214&tags=12%2C34&ids=175%2C317&slugs=frostsnap%2Ccoin98-fusion-card&sort=-score" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Сравнить кошельки

Сравнение 2–4 кошельков бок о бок с их полной сгруппированной таксономией тегов. data[] сохраняет запрошенный порядок слагов, чтобы потребители могли отрисовывать столбцы по позициям.

GET
http://localhost/api/v1/wallets/compare
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

slugs
string обязательный
frostsnap,coin98-fusion-card

2–4 различных слага кошельков через запятую.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/wallets/compare?slugs=frostsnap%2Ccoin98-fusion-card" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Получить детали кошелька

Полный профиль отдельного кошелька, включая сгруппированную таксономию тегов: categories — это список {group, tags[]}, где каждый тег имеет слаг, название и необязательное значение. meta.top_score — наивысшая оценка среди всех кошельков.

GET
http://localhost/api/v1/wallets/{slug}
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
frostsnap

Слаг кошелька.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/wallets/frostsnap" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Поддерживаемые кошельком монеты

Монеты, поддерживаемые кошельком, возвращаются в той же структуре, что и List coins, и принимают те же фильтры/сортировку.

GET
http://localhost/api/v1/wallets/{slug}/assets
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
frostsnap

Слаг кошелька.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1). Не менее 1.

per_page
integer необязательный
50

Строк на страницу. Лимит зависит от тарифа (Free 100, Starter/Pro 250); превышение возвращает 422, а не обрезает значение. Не менее 1. Не более 100.

type
string необязательный
coin

Ограничить одним типом актива: coin или token.

Одно из: coin token

status
string необязательный
active

Статус листинга: active, delisted, untracked, progressing, awaiting или preparing. По умолчанию все публичные статусы.

Одно из: active delisted untracked progressing awaiting preparing

search
string необязательный
bitcoin

Полнотекстовое совпадение по названию или символу. Не более 100 символов.

min_price
number необязательный
0.5

Только монеты с ценой не ниже этого значения в USD. Не менее 0.

max_price
number необязательный
100000

Только монеты с ценой не выше этого значения в USD. Не менее 0.

min_marketcap
number необязательный
1000000

Только монеты с капитализацией в USD не ниже этого значения. Не менее 0.

max_marketcap
number необязательный
5000000000000

Только монеты с капитализацией в USD не выше этого значения. Не менее 0.

min_volume
number необязательный
1000000

Только монеты с объёмом за 24 часа в USD не ниже этого значения. Не менее 0.

max_volume
number необязательный
100000000000

Только монеты с объёмом за 24 часа в USD не выше этого значения. Не менее 0.

ids
string необязательный
38,39

Фильтр по конкретным идентификаторам монет (CSV, до 100 селекторов вместе со slugs/symbols). Не более 1000 символов.

slugs
string необязательный
bitcoin,ethereum

Фильтр по конкретным слагам монет (CSV, до 100 селекторов в сумме). Не более 2000 символов.

symbols
string необязательный
BTC,ETH

Фильтр по конкретным символам монет (CSV, без учёта регистра, до 100 селекторов в сумме). Не более 1000 символов.

sort
string необязательный
-marketcap

Поля сортировки через запятую; префикс - для убывания. Доступны: marketcap, rank, price, volume_24h, change_24h, change_7d. Не более 100 символов.

interval
string необязательный
24h

Окно движений только для /coins/gainers и /coins/losers: 24h или 7d.

Одно из: 24h 7d

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/wallets/frostsnap/assets?page=1&per_page=50&type=coin&status=active&search=bitcoin&min_price=0.5&max_price=100000&min_marketcap=1000000&max_marketcap=5000000000000&min_volume=1000000&max_volume=100000000000&ids=38%2C39&slugs=bitcoin%2Cethereum&symbols=BTC%2CETH&sort=-marketcap&interval=24h" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
3 эндпоинтов

Глобальный рынок

Агрегаты по всему рынку — общая капитализация и объём, число активов/бирж/пар/рынков, доминирование BTC/ETH с топ-3 по рангу, показатель страха и жадности по рынку, плюс тепловая карта топ-100 и история капитализации/объёма.

Снимок глобального рынка

Обзор рынка одним запросом: общая капитализация и объём за 24 часа, число криптовалют / токенов / бирж / пар / рынков, dominance (доля BTC и ETH плюс top3 по рангу) и показатель fear_greed по рынку.

GET
http://localhost/api/v1/global
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/global" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Тепловая карта рынка

Строки treemap топ-100 плюс обрамляющая статистика (общая капитализация/объём, доминирование и оценка страха и жадности по рынку) — API-аналог тепловой карты на сайте.

GET
http://localhost/api/v1/global/heatmap
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/global/heatmap" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

История глобальной капитализации / объёма

Временной ряд по всему рынку для marketcap или volume. Гранулярность зависит от period: 24h = каждые полчаса, 7d = ежечасно, 30d/all = ежедневно (более мелкие сводки очищаются).

GET
http://localhost/api/v1/global/history/{metric}
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

metric
string обязательный
marketcap

Какой ряд: marketcap или volume.

Параметры запроса

period
string необязательный
7d

24h, 7d, 30d или all (по умолчанию 24h).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/global/history/marketcap?period=7d" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
6 эндпоинтов

Настроения

Индексы настроений по рынку и по монетам. Индекс страха и жадности и бык/медведь — это СНИМКИ с обновлением каждые 15 минут: существует только текущий показатель, временного ряда для них нет. Альтсезон несёт полную дневную историю. indicators — это сводный технический подсчёт по всему рынку.

Подсчёт голосов сообщества

Бычьи/медвежьи подсчёты сообщества по монете в скользящем окне 24 часа.

GET
http://localhost/api/v1/coins/{slug}/votes
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
bitcoin

Идентификатор-слаг монеты.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins/bitcoin/votes" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Отдать голос настроения

Отдаёт голос настроения владельца ключа за монету. Один голос на владельца ключа на монету в скользящем окне 24 часа — повторное голосование внутри окна обновляет существующий голос.

POST
http://localhost/api/v1/coins/{slug}/votes
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
bitcoin

Идентификатор-слаг монеты.

Параметры тела

vote
string обязательный
bullish

Ваше настроение: bullish или bearish.

Запрос

curl --request POST \
    "http://localhost/api/v1/coins/bitcoin/votes" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"vote\": \"bullish\"
}"

Индекс страха и жадности

Текущий показатель страха и жадности (снимок за 15 минут — без истории). Опустите coin для индекса по всему рынку или передайте слаг монеты для показателя по монете. intervals несёт подоценки за 7d/30d и разбивку по их компонентам.

GET
http://localhost/api/v1/sentiment/fear-greed
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

coin
string необязательный
bitcoin

Слаг монеты для показателя по монете; опустите для рыночного индекса.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/sentiment/fear-greed?coin=bitcoin" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Индекс бык / медведь

Текущий показатель бык/медведь (снимок за 15 минут — без истории). Опустите coin для индекса по всему рынку или передайте слаг монеты для показателя по монете.

GET
http://localhost/api/v1/sentiment/bull-bear
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

coin
string необязательный
bitcoin

Слаг монеты для показателя по монете; опустите для рыночного индекса.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/sentiment/bull-bear?coin=bitcoin" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Индекс альтсезона

Текущий показатель альтсезона (число монет, обгоняющих BTC, из топ-100), с опциональной дневной history. В отличие от индекса страха и жадности, у альтсезона есть полная дневная история — передайте days, чтобы включить её.

GET
http://localhost/api/v1/sentiment/altseason
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

days
integer необязательный
30

Количество дней дневной истории (1–365; 0/пропуск = только текущее).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/sentiment/altseason?days=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Подсчёт рыночных индикаторов

Сводный технический подсчёт по всему рынку — 25 категорий индикаторов, каждая с её текущим состоянием, оценкой и данными категории.

GET
http://localhost/api/v1/sentiment/indicators
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/sentiment/indicators" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
2 эндпоинтов

Индикаторы

Технические индикаторы по каждой монете — снимок нескольких индикаторов плюс дневные ряды по каждому семейству. Все семейства — ДНЕВНЫЕ ряды, рассчитанные из дневных свечей (полное хранение; молодые активы возвращают «прогревочные» null, пока не наберётся достаточно истории). Ценовые семейства (sma, vwap, macd, obv) отдают десятичные строки; ограниченные осцилляторы отдают числа. Некоторые периоды с длинным окном требуют платного тарифа (см. эндпоинт семейства).

Снимок индикаторов

Снимок нескольких индикаторов — последнее state каждой категории индикаторов (bullish/bearish/sheepish…), score и сырые data в одном ответе.

GET
http://localhost/api/v1/coins/{slug}/indicators
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
bitcoin

Слаг монеты.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins/bitcoin/indicators" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Ряды семейства индикаторов

Дневной временной ряд одного семейства индикаторов. Семейства с несколькими окнами принимают period, и допустимые окна различаются по семействам: RSI/Stoch-RSI 7/14/21/28, SMA 50/100/200, CCI 20/50/100, MFI 7/14/28, Williams %R 14/20/50, price/volume-volatility 7/14/30. Семейства с одним рядом (MACD, OBV, ADX, VWAP, CMF) игнорируют period. Молодые монеты возвращают ведущие «прогревочные» null.

Некоторые длинные окна требуют платного тарифа: RSI и Stoch-RSI на 21/28 дней и 30-дневные окна волатильности требуют Starter или выше — запрос их на тарифе Free возвращает 403 с кодом plan_required.

GET
http://localhost/api/v1/coins/{slug}/indicators/{family}
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
bitcoin

Слаг монеты.

family
string обязательный
rsi

Семейство индикаторов — одно из rsi, stoch-rsi, sma, cci, mfi, williams-r, price-volatility, volume-volatility, macd, obv, adx, vwap, cmf.

Параметры запроса

period
integer необязательный
14

Длина окна (только там, где у семейства есть окна; должна быть одним из допустимых окон этого семейства).

start
string необязательный
2026-06-01

Нижняя граница даты в формате ISO.

end
string необязательный
2026-06-30

Верхняя граница даты в формате ISO.

limit
integer необязательный
30

Максимум строк (1–1000, по умолчанию 365).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins/bitcoin/indicators/rsi?period=14&start=2026-06-01&end=2026-06-30&limit=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
6 эндпоинтов

Ликвидации

Ликвидации по деривативам. Источник данных сейчас — только своп-рынки OKX (указано в каждом meta.note). Сырая лента (список /liquidations и часовая разбивка) очищается через ~48 часов; дневные сводки хранятся вечно. Агрегаты за сегодня неполные и обновляются каждые ~15 минут.

Лента ликвидаций

Сырая лента ликвидаций (~последние 48 часов, затем очищается), сначала новые. Источник данных сейчас — своп-рынки OKX. Цены — десятичные строки. meta несёт поля пагинации плюс retention и note.

GET
http://localhost/api/v1/liquidations
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1). Не менее 1.

per_page
integer необязательный
50

Строк на страницу. Лимит зависит от тарифа (Free 100, Starter/Pro 250); превышение возвращает 422, а не обрезает значение. Не менее 1. Не более 100.

exchange
string необязательный
okx

Ограничить одной биржей по слагу. Источник данных сейчас — своп-рынки OKX. Должно соответствовать регулярному выражению /^[a-z0-9-]{1,120}$/.

instrument
string необязательный
swap

Тип инструмента: future, option, swap, spot или margin.

Одно из: future option swap spot margin

position
string необязательный
short

Сторона ликвидированной позиции: long или short.

Одно из: long short

order
string необязательный
buy

Сторона сделки, вызвавшая ликвидацию: buy или sell.

Одно из: buy sell

symbol
string необязательный
BTC

Совпадение по префиксу instId площадки (например, BTC совпадает с BTC-USDT-SWAP). Должно соответствовать регулярному выражению /^[A-Za-z0-9$.-]{1,25}$/.

min_usd
number необязательный
1000

Только ликвидации со значением в USD не ниже этого порога. Не менее 0.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/liquidations?page=1&per_page=50&exchange=okx&instrument=swap&position=short&order=buy&symbol=BTC&min_usd=1000" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Часовые ликвидации

Часовые итоги long/short в USD по сырой ленте. Поскольку сырая лента очищается через ~48 часов, hours ограничен 48. Источник данных сейчас — своп-рынки OKX.

GET
http://localhost/api/v1/liquidations/hourly
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

hours
integer необязательный
24

Окно ретроспективы в часах (1–48, по умолчанию 24).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/liquidations/hourly?hours=24" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Дневные ликвидации

Дневные агрегаты (хранятся вечно), суммированные по биржам/инструментам за день — total/long/short в USD плюс количество длинных/коротких позиций. Строка за сегодня неполная и обновляется каждые ~15 минут. Источник данных сейчас — своп-рынки OKX.

GET
http://localhost/api/v1/liquidations/daily
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

days
integer необязательный
30

Количество календарных дней, включая сегодня (1–365, по умолчанию 30).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/liquidations/daily?days=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Сводка ликвидаций за сегодня

Сегодня на текущий момент — total/long/short в USD, число позиций и dominance long против short. Показатели неполные и обновляются каждые ~15 минут; data равно null, пока не зафиксирована первая ликвидация дня. Источник данных сейчас — своп-рынки OKX.

GET
http://localhost/api/v1/liquidations/summary
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/liquidations/summary" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Чистый поток ликвидаций

Дневной поток ликвидаций long против short в USD за окно. Источник данных сейчас — своп-рынки OKX.

GET
http://localhost/api/v1/liquidations/netflow
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

days
integer необязательный
30

Количество календарных дней, включая сегодня (1–90, по умолчанию 30).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/liquidations/netflow?days=30" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Топ ликвидированных монет

Топ монет по объёму ликвидаций за недавнее окно, с разбивкой long/short в USD по каждой монете. Источник данных сейчас — своп-рынки OKX.

GET
http://localhost/api/v1/liquidations/coins
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

hours
integer необязательный
24

Окно ретроспективы в часах (1–48, по умолчанию 24).

limit
integer необязательный
8

Количество монет для возврата (1–20, по умолчанию 8).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/liquidations/coins?hours=24&limit=8" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
3 эндпоинтов

Конверсия

Конвертация между любыми двумя активными активами (крипто И фиат), а также список валют, доступных в качестве плеч конвертации. Значения — десятичные строки. Курсы фиата обновляются ~дважды в день; курсы крипто ~каждую минуту.

Конвертация между активами

Серверная конвертация между любыми двумя активными активами (крипто И фиат). to принимает CSV для конвертации в несколько целей; обращение — это просто перестановка from/to. Конвертация линейна, поэтому value = unit_rate * amount. Курсы фиата обновляются ~дважды в день; курсы крипто ~каждую минуту.

GET
http://localhost/api/v1/convert
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

from
string обязательный
bitcoin

Слаг исходного актива.

to
string обязательный
ethereum

Слаг(и) целевого актива через запятую (до 10).

amount
number необязательный
2.5

Количество исходного актива для конвертации (по умолчанию 1).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/convert?from=bitcoin&to=ethereum&amount=2.5" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Список фиатных валют

Активные фиатные валюты с их курсами к USD: rate_per_usd (единиц за USD) и обратное значение usd_value. Курсы фиата обновляются ~дважды в день.

GET
http://localhost/api/v1/fiats
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/fiats" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Список курсов конвертации

Валюты сравнения, пригодные как плечи конвертации — топовые фиаты, монеты и токены — каждая с нормализованным usd_value (USD за одну единицу). Значения монет/токенов обновляются ~каждую минуту; медленные курсы фиата кэшируются отдельно (~дважды в день).

GET
http://localhost/api/v1/rates
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/rates" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
5 эндпоинтов

Калькуляторы

Серверные финансовые калькуляторы, повторяющие веб-инструменты: DCA, прибыль/убыток и кредит (которые читают кэшированные рыночные данные), плюс математика сложного процента и стейкинга без состояния.

Калькулятор DCA

Бэктест усреднения (DCA) по реальной дневной истории цен монеты: одна покупка на amount за interval между start и end. Передайте series=true, чтобы включить полный ряд по каждой покупке.

GET
http://localhost/api/v1/calculators/dca
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

slug
string обязательный
bitcoin

Идентификатор-слаг монеты.

amount
number обязательный
100

USD, потраченные на каждую покупку (0.01–1,000,000,000).

interval
string обязательный
weekly

Частота покупок: daily, weekly, monthly, quarterly или yearly.

start
string обязательный
2024-01-01

date Дата первой покупки (после 2008-12-31).

end
string необязательный
2025-01-01

date Дата последней покупки (по умолчанию сегодня).

series
boolean необязательный
false

Включить ряд по каждой покупке в тело ответа.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/calculators/dca?slug=bitcoin&amount=100&interval=weekly&start=2024-01-01&end=2025-01-01&series=" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Калькулятор прибыли / убытка

Что дала покупка с последующей продажей между двумя историческими датами, с использованием реальных цен монеты на эти даты. Комиссии — фиксированные суммы в USD, а не проценты.

GET
http://localhost/api/v1/calculators/profit-loss
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

slug
string обязательный
bitcoin

Идентификатор-слаг монеты.

amount
number обязательный
1000

USD, вложенные на buy_date (0.01–1,000,000,000).

buy_date
string обязательный
2023-01-01

date Дата покупки.

sell_date
string обязательный
2025-01-01

date Дата продажи (в день buy_date или после).

buy_fee
number необязательный
10

Фиксированная комиссия за покупку в USD (по умолчанию 0).

sell_fee
number необязательный
10

Фиксированная комиссия за продажу в USD (по умолчанию 0).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/calculators/profit-loss?slug=bitcoin&amount=1000&buy_date=2023-01-01&sell_date=2025-01-01&buy_fee=10&sell_fee=10" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Калькулятор сложного процента

Чистая математика — без рыночных данных. Обратите внимание, что ставка применяется ЗА ПЕРИОД КАПИТАЛИЗАЦИИ (соглашение веб-калькулятора), а не за год.

GET
http://localhost/api/v1/calculators/compound-interest
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

principal
number обязательный
10000

Начальный баланс в USD.

rate
number обязательный
1

Процентная ставка в % за период капитализации.

duration
integer обязательный
5

Длительность прогноза (годы ограничены 50).

duration_unit
string необязательный
years

years (по умолчанию) или months.

compound_frequency
string необязательный
monthly

daily, weekly, monthly (по умолчанию), quarterly или annually.

contribution
number необязательный
100

Регулярный взнос в USD (по умолчанию 0).

contribution_frequency
string необязательный
monthly

daily, weekly, monthly (по умолчанию), quarterly или annually.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/calculators/compound-interest?principal=10000&rate=1&duration=5&duration_unit=years&compound_frequency=monthly&contribution=100&contribution_frequency=monthly" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Калькулятор «заём против продажи»

Заём под залог криптовалюты против её продажи — сравнивает оба сценария, используя ТЕКУЩУЮ цену монеты. Информационный прогноз, не финансовый совет.

GET
http://localhost/api/v1/calculators/loan
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

slug
string обязательный
bitcoin

Идентификатор-слаг монеты.

crypto_amount
number обязательный
2

Сколько монеты вы держите.

needed_cash
number обязательный
50000

Сумма в USD, которую нужно высвободить.

term_months
integer необязательный
36

Срок кредита в месяцах (по умолчанию 36).

interest_rate
number необязательный
10

Годовая ставка по кредиту (APR) в % (по умолчанию 10).

ltv
number необязательный
50

Коэффициент «кредит к залогу» (LTV) в % (по умолчанию 50).

expected_growth
number необязательный
25

Ожидаемый рост цены монеты за срок в % (по умолчанию 25).

tax_rate
number необязательный
25

Налог на прирост капитала в %, применяемый к продаже (по умолчанию 25).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/calculators/loan?slug=bitcoin&crypto_amount=2&needed_cash=50000&term_months=36&interest_rate=10&ltv=50&expected_growth=25&tax_rate=25" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Калькулятор вознаграждений за стейкинг

Чистая математика — вознаграждения за стейкинг с опциональной капитализацией и комиссией валидатора. Рыночные данные не используются.

GET
http://localhost/api/v1/calculators/staking
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

amount
number обязательный
1000

Сумма в стейкинге, в единицах стейкингового актива.

period
number обязательный
2

Длительность периода стейкинга (ограничена эквивалентом 50 лет).

period_unit
string необязательный
years

years (по умолчанию), months или days.

apy
number обязательный
5

Заявленная годовая доходность (APY) в %.

compound_frequency
string необязательный
monthly

never, daily, weekly, monthly (по умолчанию) или yearly.

commission
number необязательный
10

Комиссия валидатора в %, удерживаемая из вознаграждений (по умолчанию 0).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/calculators/staking?amount=1000&period=2&period_unit=years&apy=5&compound_frequency=monthly&commission=10" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
8 эндпоинтов

Редакционный контент

Редакционные статьи — только опубликованные (ACTIVE). locale выбирает язык контента с откатом на английский по каждому полю (в ответе указывается, какой locale фактически применён). Статьи можно фильтровать по тегу или по связанному слагу монеты/биржи/кошелька. Чтения через API намеренно НЕ увеличивают счётчики просмотров.

Видео по монете

Подобранные видео, привязанные к монете (вкладка «Видео» на странице монеты), с пагинацией.

GET
http://localhost/api/v1/coins/{slug}/videos
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
bitcoin

Идентификатор-слаг монеты.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1).

per_page
integer необязательный
10

Строк на страницу (1–50, по умолчанию 10).

type
string необязательный
review

Фильтр по типу видео (например, overview, tutorial, explainer, review, analysis, news).

search
string необязательный
halving

Полнотекстовое совпадение по заголовку.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins/bitcoin/videos?page=1&per_page=10&type=review&search=halving" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Хронология аналитики по монете

Хронология аналитики по монете — то же содержимое, что использует панель аналитики на странице актива, с окном по offset/limit.

GET
http://localhost/api/v1/coins/{slug}/insights
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
bitcoin

Идентификатор-слаг монеты.

Параметры запроса

locale
string необязательный
en

Язык контента (откат на английский).

offset
integer необязательный
0

Строк для пропуска (0–500, по умолчанию 0).

limit
integer необязательный
5

Строк для возврата (1–50, по умолчанию 5).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/coins/bitcoin/insights?locale=en&offset=0&limit=5" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Список статей

Опубликованные статьи, сначала новые, с пагинацией. Фильтрация по tag или по связанному слагу coin / exchange / wallet, либо полнотекстовому search. Каждая строка — краткая сводка (заголовок, подзаголовок, теги, время чтения, главное изображение, связанные сущности, даты).

GET
http://localhost/api/v1/articles
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1).

per_page
integer необязательный
20

Строк на страницу (1–50, по умолчанию 20).

locale
string необязательный
en

Язык контента (откат на английский).

tag
string необязательный
guide

Фильтр по тегу: news, guide, tutorial, explainer, analysis, review, trading, overview или information.

coin
string необязательный
bitcoin

Фильтр по статьям, связанным с этим слагом монеты.

exchange
string необязательный
binance-exchange

Фильтр по статьям, связанным с этим слагом биржи.

wallet
string необязательный
frostsnap

Фильтр по статьям, связанным с этим слагом кошелька.

search
string необязательный
halving

Полнотекстовое совпадение по заголовку/подзаголовку.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/articles?page=1&per_page=20&locale=en&tag=guide&coin=bitcoin&exchange=binance-exchange&wallet=frostsnap&search=halving" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Получить статью

Одна опубликованная статья с полным текстом, тегами, главным изображением, счётчиками полезности и связанными сущностями. locale выбирает язык контента с откатом на английский по каждому полю (в ответе указывается, какой locale фактически применён).

GET
http://localhost/api/v1/articles/{slug}
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
what-is-bitcoin

Слаг статьи.

Параметры запроса

locale
string необязательный
en

Язык контента (откат на английский).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/articles/what-is-bitcoin?locale=en" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Отправить отзыв о статье

Регистрирует лайк/дизлайк на статье — те же счётчики, что используют кнопки полезности на сайте. Ограничение по ключу применяется выше по стеку.

POST
http://localhost/api/v1/articles/{slug}/feedback
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

slug
string обязательный
what-is-bitcoin

Слаг статьи.

Параметры тела

helpful
boolean обязательный
true

true — полезно, false — не полезно.

Запрос

curl --request POST \
    "http://localhost/api/v1/articles/what-is-bitcoin/feedback" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"helpful\": true
}"

Получить видео

Одно подобранное видео с его YouTube id, названием, типом, длительностью и монетами/биржами/кошельками, к которым оно привязано.

GET
http://localhost/api/v1/videos/{id}
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

id
integer обязательный
87

Идентификатор видео.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/videos/87" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Список аналитики

Сгенерированная ИИ рыночная аналитика с пагинацией. Фильтрация по type, связанному слагу coin или полнотекстовому search; locale выбирает язык заголовка/резюме с откатом на английский.

GET
http://localhost/api/v1/insights
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1).

per_page
integer необязательный
20

Строк на страницу (1–50, по умолчанию 20).

locale
string необязательный
en

Язык контента (откат на английский).

type
string необязательный
per_asset

Фильтр по типу аналитики: per_asset, market_overview или narrative.

coin
string необязательный
bitcoin

Фильтр по аналитике об этом слаге монеты.

search
string необязательный
etf

Полнотекстовое совпадение по заголовку.

sort
string необязательный
first_reported

Порядок сортировки: first_reported (по умолчанию) или last_updated.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/insights?page=1&per_page=20&locale=en&type=per_asset&coin=bitcoin&search=etf&sort=first_reported" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Получить аналитику

Одна аналитика с полным содержимым — заголовок, резюме, хронология исходных статей и связанные монеты.

GET
http://localhost/api/v1/insights/{id}
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

id
integer обязательный
101

Идентификатор аналитики.

Параметры запроса

locale
string необязательный
en

Язык контента (откат на английский).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/insights/101?locale=en" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
3 эндпоинтов

Оповещения

CRUD ценовых оповещений — те же оповещения, которыми управляет веб-приложение. Оповещения расходуют баланс инвентаря оповещений владельца ключа, имеют тип TARGET только для монет, а проверка above/below относительно текущего значения блокирует оповещения, которые сработали бы мгновенно сами по себе. Привязаны к ключу (API-ключ задаёт владельца) и никогда не кэшируются в ответах.

Список оповещений

Оповещения владельца ключа, сначала новые, с пагинацией. Фильтрация по status, direction или каналу notification.

GET
http://localhost/api/v1/alarms
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1).

per_page
integer необязательный
25

Строк на страницу (1–100, по умолчанию 25).

status
string необязательный
active

Фильтр по состоянию: active или triggered.

direction
string необязательный
above

Фильтр по направлению срабатывания: above или below.

notification
string необязательный
email

Фильтр по каналу доставки: email, push или webhook.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/alarms?page=1&per_page=25&status=active&direction=above&notification=email" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Создать оповещение

Создаёт оповещение типа TARGET на монету и расходует один слот оповещения с баланса владельца ключа. Целевое значение проверяется относительно текущего значения монеты, чтобы оповещение не сработало мгновенно само по себе: оповещение above должно быть выше текущего значения, а below — ниже.

POST
http://localhost/api/v1/alarms
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры тела

name
string обязательный
BTC six figures

Метка для оповещения (макс. 255 символов).

coin
string обязательный
bitcoin

Идентификатор-слаг монеты.

metric
string обязательный
rate

Отслеживаемая метрика: rate, volume или marketcap.

direction
string обязательный
above

Направление срабатывания: above или below.

target
number обязательный
100000

Пороговое значение (должно находиться со стороны direction относительно текущего значения монеты).

notification
string обязательный
email

Канал доставки: email, push или webhook.

Запрос

curl --request POST \
    "http://localhost/api/v1/alarms" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"name\": \"BTC six figures\",
    \"coin\": \"bitcoin\",
    \"metric\": \"rate\",
    \"direction\": \"above\",
    \"target\": 100000,
    \"notification\": \"email\"
}"

Удалить оповещение

Удаляет одно из оповещений владельца ключа и возвращает израсходованный им слот оповещения.

DELETE
http://localhost/api/v1/alarms/{id}
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

id
integer обязательный
42

Идентификатор оповещения.

Запрос

curl --request DELETE \
    "http://localhost/api/v1/alarms/42" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
5 эндпоинтов

Вебхуки

Bitculator отправляет каждое событие методом POST в формате JSON с заголовком HMAC-подписи:

X-Bitculator-Signature: t=<unix-ts>,v1=<hex hmac_sha256("<ts>.<raw-body>", secret)>
X-Bitculator-Event: alarm.triggered

Проверьте её, заново вычислив HMAC от "." с секретом вашего эндпоинта и сравнив за постоянное время; отклоняйте, если t старше нескольких минут (защита от повторов). Пример (PHP):

[$t, $v1] = sscanf($_SERVER['HTTP_X_BITCULATOR_SIGNATURE'], 't=%d,v1=%s');
$expected = hash_hmac('sha256', $t.'.'.file_get_contents('php://input'), $secret);
abort_unless(hash_equals($expected, $v1) && abs(time() - $t) < 300, 403);

Поддерживаемые события: alarm.triggered. Доставки повторяются 3× с задержкой; эндпоинт автоматически отключается после 10 подряд неудачных доставок.

Список эндпоинтов вебхуков

Эндпоинты вебхуков владельца ключа, сначала новые. Секреты для подписи никогда не включаются — каждый секрет показывается ровно один раз, при создании.

GET
http://localhost/api/v1/webhooks
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/webhooks" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Создать эндпоинт вебхука

Регистрирует HTTPS-эндпоинт (макс. 5 на аккаунт) для доставки событий. Ответ включает secret для подписи — ЕДИНСТВЕННЫЙ раз, когда он показывается, поэтому сохраните его сразу.

POST
http://localhost/api/v1/webhooks
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры тела

url
string обязательный
https://example.com/webhooks/bitculator

URL доставки по HTTPS. Только публичные хосты — внутренние/приватные адреса отклоняются.

events
string[] обязательный
["alarm.triggered"]

События для подписки. Допустимые значения: alarm.triggered.

Запрос

curl --request POST \
    "http://localhost/api/v1/webhooks" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"url\": \"https:\\/\\/example.com\\/webhooks\\/bitculator\",
    \"events\": [
        \"alarm.triggered\"
    ]
}"

Удалить эндпоинт вебхука

Удаляет один из эндпоинтов вебхуков владельца ключа. Ожидающие доставки на него отменяются.

DELETE
http://localhost/api/v1/webhooks/{id}
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

id
integer обязательный
7

Идентификатор эндпоинта вебхука.

Запрос

curl --request DELETE \
    "http://localhost/api/v1/webhooks/7" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Отправить тестовое событие

Отправляет подписанное тестовое событие alarm.triggered (test: true в теле, реальные заголовки подписи), чтобы получателей можно было проверить от начала до конца.

POST
http://localhost/api/v1/webhooks/{id}/test
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

id
integer обязательный
7

Идентификатор эндпоинта вебхука.

Запрос

curl --request POST \
    "http://localhost/api/v1/webhooks/7/test" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Журнал доставки вебхуков

Попытки доставки эндпоинта (хранятся 30 дней), сначала новые, с пагинацией.

GET
http://localhost/api/v1/webhooks/{id}/deliveries
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

Параметры пути

id
integer обязательный
7

Идентификатор эндпоинта вебхука.

Параметры запроса

page
integer необязательный
1

Номер страницы (с 1).

per_page
integer необязательный
25

Строк на страницу (1–100, по умолчанию 25).

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/webhooks/7/deliveries?page=1&per_page=25" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
3 эндпоинтов

Мета

Мета-информация и интроспекция API: аутентифицированный ping для проверки ключа и стека middleware, использование/квота текущего ключа и машиночитаемая спецификация OpenAPI.

Спецификация OpenAPI

Машиночитаемый документ OpenAPI 3 для этого API в формате JSON — направьте на этот URL кодогенерацию или инструменты для API. Публичный: ключ не требуется.

GET
http://localhost/api/v1/openapi.json
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/openapi.json" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Ping

Аутентифицированная пустая операция для сквозной проверки ключа Data API (auth.api → лимит всплесков по тарифу → месячная квота). Учитывается в квоте, как любой другой вызов.

GET
http://localhost/api/v1/ping
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/ping" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"

Использование ключа и квота

Интроспекция использования для владельца вызывающего ключа: тариф Data API, его месячный лимит, использовано и осталось (всегда совпадает с заголовками X-Quota-*), текущее окно периода и разбивки по эндпоинтам / по токенам. У использования встраиваемых виджетов собственный тариф и пул — здесь оно никогда не отображается.

GET
http://localhost/api/v1/usage
Bearer
bc_••••••••••••••••

Ключи работают только как Bearer и несут право data-api — держите их на стороне сервера.

GET-запрос — без тела запроса.

Запрос

curl --request GET \
    --get "http://localhost/api/v1/usage" \
    --header "Authorization: Bearer {YOUR_API_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"