Документация эндпоинта
Полная документация одного эндпоинта: параметры, таблица полей, сформированная из реальных ответов, сохранённый пример ответа, проверенные образцы, история автопроверок за 30 дней, ошибки и лимиты.
/api/meta/endpointЗапрос
Параметры запроса
| Имя | Тип | Обязательный | По умолчанию | Допустимые значения | Описание |
|---|---|---|---|---|---|
| id | string | Обязательный | — | — | Идентификатор эндпоинта из каталога (например, `sd-oi`). Для неизвестных идентификаторов возвращается 404. Пример: sd-oi |
Пример запроса
curl -s "https://www.coinboss.com/api/meta/endpoint?id=sd-oi"Поля ответа
Таблица полей формируется из реальных ответов, поэтому в ней перечислено ровно то, что возвращает эндпоинт. В путях a[] обозначает элементы массива, а {*} — объекты с динамическим ключом, например монетой или биржей.
| Поле | Тип | Единица | Описание |
|---|---|---|---|
| success | boolean | — | true, если запрос выполнен успешно. При ошибке тело ответа имеет вид `{ success: false, code, error, request_id }`. |
| schema | string | — | Идентификатор схемы этого ответа (`coinboss.meta.endpoint/1`). |
| now | number | ms | Время сервера в момент формирования ответа. |
| endpoint | object | — | Запись эндпоинта в каталоге. Ключи словаря — имена атрибутов, например `id`, `path`, `status`, `params`, `category`, `sources`, `units`, `formula`. динамические ключи: id,cat,kind,method,path,title |
| endpoint.{*} | array|number|object|string|null | — | Значение одного атрибута: текст, число, список (`params`, `required`, `ts_fields`) или объект (`probe`, `category`, `example_query`); null, если не задано. |
| endpoint.{*}[] | object|string | — | Элемент атрибута-списка: определение параметра в `params` либо имя в `required` / `ts_fields`. может отсутствовать |
| endpoint.{*}[].name | string | — | Название. может отсутствовать |
| endpoint.{*}[].in | string | — | Где передаётся параметр: `query` или `path`. может отсутствовать |
| endpoint.{*}[].type | string | — | Тип. может отсутствовать |
| endpoint.{*}[].required | boolean | — | true, если параметр необходимо передавать. может отсутствовать |
| endpoint.{*}[].default | null | — | Значение, используемое, когда параметр опущен; null, если значения по умолчанию нет. может отсутствовать |
| endpoint.{*}[].enum | null | — | Список допустимых значений; null, если параметр не ограничен списком. может отсутствовать |
| endpoint.{*}[].min | null | — | Минимум. может отсутствовать |
| endpoint.{*}[].max | null | — | Максимум. может отсутствовать |
| endpoint.{*}[].example | string | — | Пример значения параметра; null, если пример не приведён. может отсутствовать |
| endpoint.{*}[].desc | string | — | Описание параметра. может отсутствовать |
| endpoint.{*}.checked_at | number | ms | Метка времени. может отсутствовать |
| endpoint.{*}.http | number | — | HTTP-статус последнего проверочного запроса. может отсутствовать |
| endpoint.{*}.ok | boolean | — | `true`, если последний проверочный запрос вернул HTTP 200 с корректным телом JSON. может отсутствовать |
| endpoint.{*}.schema_ok | boolean | — | `true`, если проверенный ответ соответствует документированной таблице полей; `null`, если таблицы полей нет. может отсутствовать |
| endpoint.{*}.latency_ms | number | ms | Время ответа на последний проверочный запрос. может отсутствовать |
| endpoint.{*}.bytes | number | bytes | Размер тела проверенного ответа. может отсутствовать |
| endpoint.{*}.quality | null | — | `meta.quality`, указанное в проверенном ответе (FRESH / PARTIAL / STALE …); `null`, если эндпоинт его не сообщает. может отсутствовать |
| endpoint.{*}.data_age_s | number|null | s | Число секунд с события. может отсутствовать |
| endpoint.{*}.last_ok_at | number | ms | Метка времени. может отсутствовать |
| endpoint.{*}.fail_streak | number | count | Число неудачных проверок подряд; 0, если последняя проверка прошла успешно. может отсутствовать |
| endpoint.{*}.id | string | — | Идентификатор. может отсутствовать |
| endpoint.{*}.title | string | — | Отображаемое название категории эндпоинта (внутри `category`). может отсутствовать |
| endpoint.{*}.coin | string | — | Символ монеты в верхнем регистре (например, BTC). может отсутствовать |
| fields | array | — | Таблица полей ответа, выведенная из реальных ответов; null, если таблица не сформирована. |
| fields[] | object | — | Одно поле ответа: `path`, `type`, `unit`, `desc` и флаги. |
| fields[].path | string | — | Путь поля в ответе: `a.b` для вложенности, `[]` для элементов массива, `{*}` для значений словаря. |
| fields[].type | string | — | Тип. |
| fields[].unit | string|null | — | Единица значений в этом объекте. |
| fields[].desc | string | — | Описание поля; null, если оно не написано. |
| fields[].optional | boolean | — | Присутствует и равно true, если поле отсутствовало хотя бы в одном из отобранных ответов. может отсутствовать |
| fields[].map | boolean | — | Присутствует и равно true, если объект является словарём с ключами, зависящими от данных (монеты, биржи, даты), а не набором фиксированных полей. может отсутствовать |
| fields[].keys | array | — | Выборка ключей, встреченных в словаре; только у полей, где `map` равно true. может отсутствовать |
| fields[].keys[] | string | — | Один ключ из выборки. может отсутствовать |
| fields_generated_at | number | ms | Метка времени. |
| fields_generated_from | array | — | URL запросов, из реальных ответов на которые выведена таблица полей; null, если таблицы нет. |
| fields_generated_from[] | string | — | Один путь запроса из выборки со строкой запроса. |
| example | object | — | Последний успешный реальный ответ, сохранённый проверкой: `request`, `captured_at`, `truncated` (исходные длины сокращённых массивов) и `body`; null, если такого нет. |
| example.request | string | — | Запрос, на который получен сохранённый пример (путь и строка запроса). |
| example.captured_at | number | ms | Метка времени. |
| example.truncated | object | — | Что было сокращено в сохранённом примере: для каждого массива или словаря — число опущенных элементов. Его ключи зависят от документируемого эндпоинта. |
| example.body | object | — | Сохранённый ответ документируемого эндпоинта в сокращённом виде. Его структура описана в `fields`. |
| verified_samples | object|null | — | Результаты дополнительных пробных запросов проверки (`at`, `samples` с параметрами запроса, HTTP-статусом, задержкой, проверкой схемы); null, если они не выполнялись. |
| verified_samples.at | number | ms | Время последней проверки дополнительных пробных запросов. |
| verified_samples.samples | array | — | Число образцов. |
| verified_samples.samples[] | object | — | Число образцов. |
| verified_samples.samples[].query | object | — | Параметры строки запроса пробного запроса. |
| verified_samples.samples[].query.coin | string | — | Символ монеты в верхнем регистре (например, BTC). может отсутствовать |
| verified_samples.samples[].http | number | — | Возвращённый HTTP-статус. |
| verified_samples.samples[].ok | boolean | — | `true`, если пробный запрос вернул ожидаемое (HTTP 200 с корректным JSON либо ожидаемый статус ошибки). |
| verified_samples.samples[].latency_ms | number | ms | Время ответа на пробный запрос. |
| verified_samples.samples[].schema_ok | boolean|null | — | `true`, если ответ на пробный запрос соответствует документированной таблице полей; `null`, если проверка не выполнялась. |
| verified_samples.samples[].quality | null | — | `meta.quality`, указанное в ответе на пробный запрос; `null`, если не указано. |
| verified_samples.samples[].note | string|null | — | Примечание. |
| probe_detail | null | — | Расхождения схемы, найденные последней проверкой: пути полей `missing`, `mismatched` и `undocumented`; null, если расхождений нет. |
| uptime_30d | object | — | Проверки этого эндпоинта за последние 30 дней: итоги, процент успешных и разбивка по дням. |
| uptime_30d.checks | number | count | Число проверок эндпоинта за последние 30 дней (меньше дней, если отслеживание началось позже). |
| uptime_30d.ok | number | count | Число успешных проверок среди них. |
| uptime_30d.pct | number | % | Значение в процентах. |
| uptime_30d.days | array | — | Дневные значения или число дней. |
| uptime_30d.days[] | object | — | Дневные значения или число дней. |
| uptime_30d.days[].day | string | — | Календарный день (UTC). |
| uptime_30d.days[].checks | number | count | Число проверочных запросов за этот день. |
| uptime_30d.days[].ok | number | count | Число успешных проверочных запросов за этот день. |
| uptime_30d.days[].pct | number | % | Значение в процентах. |
| uptime_30d.days[].avg_ms | number | ms | Среднее время ответа за этот день; `null`, если проверок не было. |
| uptime_30d.days[].max_ms | number | ms | Самый медленный ответ за этот день. |
| errors | array | — | Коды ошибок, которые может вернуть API, каждый с HTTP-статусом, значением и рекомендацией по повтору. |
| errors[] | object | — | Один код ошибки. |
| errors[].code | string | — | Код. |
| errors[].http | number|string | — | HTTP-статус, отправляемый с этим кодом; строка вида `501 / 503`, если применимо несколько статусов. |
| errors[].meaning | string | — | Что означает ошибка. |
| errors[].retry | string | — | Рекомендация, стоит ли повторять запрос и как это делать. |
| errors[].legacy | boolean | — | Присутствует и равно true только для кода, используемого старыми эндпоинтами, которые отвечают HTTP 200 с `success: false`. может отсутствовать |
| rate_limit | object | — | Правила ограничения частоты запросов публичного API. |
| rate_limit.window_s | number | s | Длина окна подсчёта (60). |
| rate_limit.anonymous_per_min | number | count | Число запросов в минуту, разрешённое на один IP клиента, если API-ключ не передан. |
| rate_limit.scope | string | — | Текст, поясняющий, как считаются запросы: по IP клиента для анонимных запросов, по ключу — если передан заголовок `CB-API-KEY`. |
| rate_limit.key_tiers_per_min | object | — | Число запросов в минуту, разрешённое для каждого уровня API-ключа; ключи словаря — названия уровней. |
| rate_limit.key_tiers_per_min.hobbyist | number | count | Число запросов в минуту для ключей уровня `hobbyist`. |
| rate_limit.key_tiers_per_min.startup | number | count | Число запросов в минуту для ключей уровня `startup`. |
| rate_limit.key_tiers_per_min.standard | number | count | Число запросов в минуту для ключей уровня `standard`. |
| rate_limit.key_tiers_per_min.professional | number | count | Число запросов в минуту для ключей уровня `professional`. |
| rate_limit.exempt | array | — | Шаблоны путей, которые не учитываются в лимите. |
| rate_limit.exempt[] | string | — | Один шаблон пути-исключения, например `/api/coin-icon/*`. |
| rate_limit.headers | array | — | Имена заголовков ответа, сообщающих состояние лимита запросов. |
| rate_limit.headers[] | string | — | Имя одного заголовка, например `X-RateLimit-Remaining`. |
| rate_limit.on_exceed | object | — | Что возвращается при превышении лимита: статус `http` и код ошибки `code`. |
| rate_limit.on_exceed.http | number | — | HTTP-статус, возвращаемый при превышении лимита (429). |
| rate_limit.on_exceed.code | string | — | Код. |
| related | array | — | Все эндпоинты той же категории, включая этот. |
| related[] | object | — | Один эндпоинт: `id`, `path` и `title`. |
| related[].id | string | — | Идентификатор. |
| related[].path | string | — | Путь запроса эндпоинта. |
| related[].title | string | — | Краткое отображаемое название эндпоинта. |
| probe | object | — | Состояние проверки эндпоинтов, на которой основаны текущие статусы: время последнего запуска, его возраст, интервал и признак актуальности. |
| probe.last_run_at | number | ms | Метка времени. |
| probe.age_s | number | s | Число секунд с последнего обновления этой строки. |
| probe.interval_s | number | s | Плановый интервал между двумя запусками проверки (300). |
| probe.fresh | boolean | — | true, если с последнего запуска проверки прошло менее 20 минут; при false статусы эндпоинтов отдаются как `unknown`. |
| probe.error | null | — | Сообщение об ошибке (присутствует только при сбое). |
| meta | object | — | Обёртка этого ответа: идентификатор схемы, система-источник, метки времени, время жизни кеша и актуальность. |
| meta.schema | string | — | Идентификатор схемы этого ответа; то же значение, что и `schema` верхнего уровня. |
| meta.source | array | — | Откуда взято значение. |
| meta.source[] | object | — | Откуда взято значение. |
| meta.source[].system | string | — | Система, сформировавшая данные; для эндпоинтов центра разработчика всегда `coinboss`. |
| meta.source[].component | string | — | Компонент, стоящий за данными: проверка эндпоинтов и патруль качества данных. |
| meta.observed_at | null | — | Метка времени. |
| meta.received_at | number | ms | Метка времени. |
| meta.fetched_at | number | ms | Время, когда CoinBoss получил данные от источника. |
| meta.window | string | — | Окно. |
| meta.cache_ttl_s | number | s | Время жизни серверного кеша этого ответа. |
| meta.quality | string | — | `FRESH`, если этот эндпоинт проверялся в последние 20 минут, иначе `STALE`. |
| meta.is_stale | boolean | — | true, если строка старше окна актуальности; устаревшие строки в итогах не используются. |
| meta.fallback | string | — | Текстовое пояснение того, что возвращает этот эндпоинт, когда его входные данные устарели или отсутствуют. |
Сформировано 2026-11-11 23:03 UTC; использовано реальных ответов: 3.
Пример ответа
/api/meta/endpoint?id=sd-oi · Реальный ответ, получен 2026-11-13 03:59:28 UTC. Длинные массивы и словари сокращены для отображения: errors: элементов было 9; fields: элементов было 103; related: элементов было 6; endpoint: элементов было 35; uptime_30d.days: элементов было 3; verified_samples.samples: элементов было 4.
- "success"true
- "schema""coinboss.meta.endpoint/1"
- "now"1794542368241
- "endpoint"
- "id""sd-oi"
- "cat""open-interest"
- "fields"
- "fields_generated_at"1794438008862
- "fields_generated_from"
- "/api/sd/oi?coin=BTC"
- "/api/sd/oi?coin=ETH"
- "/api/sd/oi?coin=SOL"
- "/api/sd/oi?coin=ARKM"
- "example"
- "request""/api/sd/oi?coin=BTC"
- "captured_at"1794542259642
- "truncated"
- "body"
- "verified_samples"
- "at"1794542259642
- "samples"
- "probe_detail"
- "missing"
- "mismatched"
- "undocumented"
- "uptime_30d"
- "checks"411
- "ok"411
- "pct"100
- "days"
- "errors"
- "rate_limit"
- "window_s"60
- "anonymous_per_min"1200
- "scope""per client IP for anonymous requests; per key when a CB-API-KEY header is sent"
- "key_tiers_per_min"
- "exempt"
- "headers"
- "on_exceed"
- "related"
- "probe"
- "last_run_at"1794542029183
- "age_s"339
- "interval_s"300
- "fresh"true
- "error"null
- "meta"
- "schema""coinboss.meta.endpoint/1"
- "source"
- "observed_at"null
- "received_at"1794542259642
- "fetched_at"1794542368241
- "window""latest"
- "cache_ttl_s"30
- "quality""FRESH"
- "is_stale"false
- "fallback""field table comes from the last schema generation; example is the last successful real response"
Проверенные образцы
Помимо примера выше, автопроверка вызывает этот эндпоинт с указанными параметрами и каждый раз сверяет схему.
| Параметры | HTTP | Задержка | Результат |
|---|---|---|---|
| id=sd-funding | 200 | 3 ms | Пройдено FRESH |
| id=liquidations-overview | 200 | 2 ms | Пройдено FRESH |
| — | 400 | 1 ms | Пройдено возвращает ожидаемую ошибку |
Проверено: 2026-11-13 03:59:28 UTC
Сведения
- Аутентификация
- Не требуется. Публичный эндпоинт.
- Лимит запросов
- 1200 запросов в минуту на один IP
- Серверный кеш
- 30s
- Пограничный микрокеш
- 10s
- Источники данных
- Каталог эндпоинтов CoinBoss, схемы, сгенерированные автопроверкой API, sd_api_probe.
- Метки времени
- Миллисекунды эпохи Unix (UTC), если в описании поля не указано иное
- Формат ответа
- json
- Стабильность
- Стабильный
- Доступен с
- 2026-11-11
Текущий статус
Доступность за последние 30 дней
Пройдено 99.75% из 408 проверок
- Возвращается, но не документировано: probe_detail.missing, probe_detail.mismatched, probe_detail.undocumented, probe_detail.undocumented[]
Ошибки
Неудачные вызовы имеют одинаковую структуру на всех эндпоинтах. Полный список приведён на странице ошибок. Ошибки и лимиты запросов →
| Код | HTTP | Значение | Что делать |
|---|---|---|---|
| INVALID_PARAM | 400 | Отсутствует обязательный параметр, или значение не принимается. `param` называет параметр, если он известен. | Не повторяйте запрос без изменений; исправьте его. |
| UNAUTHORIZED | 401 | Заголовок `CB-API-KEY` был отправлен, но ключ неизвестен или отозван. Для публичных данных ключ не нужен — уберите заголовок или используйте действительный ключ. | Не повторяйте запрос без изменений. |
| FORBIDDEN | 403 | Маршрут не входит в публичный API (внутренний или только для аккаунта). | Не повторяйте запрос. |
| NOT_FOUND | 404 | Неизвестный маршрут, либо запрошенная монета / биржа / фонд не существует. | Не повторяйте запрос; сверьте путь и идентификаторы с каталогом. |
| RATE_LIMITED | 429 | Запросов больше, чем позволяет поминутный лимит. `Retry-After` указывает, сколько секунд нужно подождать. | Дождитесь истечения `Retry-After`, затем повторите запрос с нарастающей задержкой. |
| INTERNAL | 500 | Непредвиденная ошибка сервера. Сообщение намеренно общее; при обращении указывайте `request_id`. | Повторите запрос один раз через несколько секунд; если ошибка сохраняется, сообщите о ней, указав ID запроса. |
| UPSTREAM_FAILED | 503 | Источник данных, стоящий за этим эндпоинтом, не ответил вовремя. Устаревшие или подменные значения вместо него не возвращаются. | Повторите запрос с нарастающей задержкой; проверьте страницу статуса. |
| UNAVAILABLE | 501 / 503 | Набор данных временно не готов (прогрев кеша), либо у эндпоинта пока нет законного публичного источника. | Повторите запрос позже; каталог помечает эндпоинты, недоступные по проектному решению. |
| REQUEST_FAILED | 200 | Некоторые более старые эндпоинты отвечают HTTP 200 с `success: false`. Всегда проверяйте `success`, а не только статус HTTP. | Зависит от сообщения; считайте запрос неудачным. |
Попробовать
/api/meta/endpointДоступенstring — Endpoint id from the catalog (for example `sd-oi`). Unknown ids return 404.
https://www.coinboss.com/api/meta/endpoint?id=sd-oiДругие эндпоинты этой категории
- Матрица качества данных (представление коллекторов) /api/sd/quality
- Каталог API /api/meta/catalog
- Журнал изменений и политика версионирования /api/meta/changelog
- Документация эндпоинта /api/meta/endpoint
- Документ OpenAPI /api/meta/openapi
- Матрица качества данных /api/meta/quality
- Статус сервиса /api/meta/status
- Проверка, известен ли платформе символ монеты /api/coin-exists
- Соответствие символа монеты пути к локально размещённой иконке /api/coin-icons
- Агрегированная сводка для страницы монеты /api/content/coin
- Сводка по разделам сайта /api/content/summary
- Таблица курсов фиатных валют /api/currency/fx
- Соответствие идентификатора биржи пути к локально размещённой иконке /api/exchange-icons
- Проверка работоспособности /api/health
- Статистика для страниц исследований /api/research/stats