/api/meta/catalog
GETДоступенFRESH

Каталог API

Все публичные эндпоинты с категорией, заявленным и текущим статусом, TTL кеша и результатом последней автопроверки, а также лимиты запросов и таблица кодов ошибок.

GET/api/meta/catalog

Запрос

У этого эндпоинта нет параметров.

Пример запроса

curl -s "https://www.coinboss.com/api/meta/catalog"

Поля ответа

Таблица полей формируется из реальных ответов, поэтому в ней перечислено ровно то, что возвращает эндпоинт. В путях a[] обозначает элементы массива, а {*} — объекты с динамическим ключом, например монетой или биржей.

ПолеТипЕдиницаОписание
successboolean—true, если запрос выполнен успешно. При ошибке тело ответа имеет вид `{ success: false, code, error, request_id }`.
schemastring—Идентификатор схемы этого ответа (`coinboss.meta.catalog/1`).
nownumbermsВремя сервера в момент формирования ответа.
api_versionstring—Версия публичного API (`v1`).
catalog_versionstring—Версия каталога эндпоинтов — дата релиза, например `2026.11.11`.
base_pathstring—Префикс пути, общий для всех эндпоинтов (`/api`).
summaryobject—Блок сводки.
summary.totalnumber—Всего.
summary.availablenumber—Доступны ли данные.
summary.partialnumber—true, если присутствует только часть ожидаемых данных.
summary.degradednumbercountЧисло эндпоинтов с текущим статусом `degraded`.
summary.downnumbercountЧисло эндпоинтов с текущим статусом `down`.
summary.unavailablenumber—Элементы, по которым нет данных, с указанием причин. Никогда не сообщаются как 0.
summary.unknownnumbercountЧисло эндпоинтов с текущим статусом `unknown` (нет недавнего результата проверки).
probeobject—Состояние проверки эндпоинтов, на которой основаны текущие статусы: время последнего запуска, его возраст, интервал и признак актуальности.
probe.last_run_atnumbermsМетка времени.
probe.age_snumbersЧисло секунд с последнего обновления этой строки.
probe.interval_snumbersПлановый интервал между двумя запусками проверки (300).
probe.freshboolean—true, если с последнего запуска проверки прошло менее 20 минут; при false статусы эндпоинтов отдаются как `unknown`.
probe.errornull—Сообщение об ошибке (присутствует только при сбое).
categoriesarray—Категории эндпоинтов, содержащие хотя бы один эндпоинт, с числом эндпоинтов по каждому статусу.
categories[]object—Одна категория: `id`, `title`, `desc` и число её эндпоинтов в каждом статусе.
categories[].idstring—Идентификатор.
categories[].titlestring—Отображаемое название категории.
categories[].descstring—Описание категории в одном предложении; null, если оно не написано.
categories[].totalnumber—Всего.
categories[].availablenumber—Доступны ли данные.
categories[].partialnumber—true, если присутствует только часть ожидаемых данных.
categories[].degradednumbercountЧисло эндпоинтов категории с текущим статусом `degraded`.
categories[].downnumbercountЧисло эндпоинтов категории с текущим статусом `down`.
categories[].unavailablenumber—Элементы, по которым нет данных, с указанием причин. Никогда не сообщаются как 0.
categories[].unknownnumbercountЧисло эндпоинтов категории с текущим статусом `unknown`.
endpointsarray—Все документированные эндпоинты с их текущим статусом.
endpoints[]object—Один эндпоинт: идентификация, путь, заявленный и текущий статус, время жизни кеша, имена параметров и результат последней проверки.
endpoints[].idstring—Идентификатор.
endpoints[].catstring—Идентификатор категории, к которой относится эндпоинт.
endpoints[].kindstring—Вид.
endpoints[].methodstring—Примечания о формуле / методе.
endpoints[].pathstring—Путь запроса эндпоинта; сегменты `:name` — параметры пути.
endpoints[].titlestring—Краткое отображаемое название эндпоинта.
endpoints[].summarystring—Блок сводки.
endpoints[].declaredstring—Статус, заявленный в каталоге, не зависящий от проверок: `available`, `partial` или `unavailable`.
endpoints[].statusstring—Статус.
endpoints[].status_reasonstring|null—Текстовое пояснение, почему `status` не равен `available`; null, если равен.
endpoints[].stabilitystring—`stable`, `beta` (набор полей может измениться без уведомления за 90 дней) или `legacy` (продолжает работать, есть замена).
endpoints[].sincestring|null—Начало периода.
endpoints[].ttl_snumber|nullsВремя жизни серверного кеша ответов эндпоинта; null, если он не кешируется или это неприменимо.
endpoints[].paramsarray—Имена всех параметров, которые принимает эндпоинт. пусто в образцах, по которым построена таблица
endpoints[].params[]string—Имя одного параметра.
endpoints[].requiredarray—Имена параметров, которые необходимо передавать. пусто в образцах, по которым построена таблица
endpoints[].probeobject—Результат последней проверки эндпоинта: время проверки, HTTP-статус, `ok`, `schema_ok`, задержка, размер, возраст данных, последний успех и серия сбоев; null, если проверка ни разу не выполнялась.
endpoints[].probe.checked_atnumbermsМетка времени.
endpoints[].probe.httpnumber—HTTP-статус последнего проверочного запроса.
endpoints[].probe.okboolean—`true`, если последний проверочный запрос вернул HTTP 200 с корректным телом JSON.
endpoints[].probe.schema_okboolean—`true`, если проверенный ответ соответствует документированной таблице полей; `null`, если таблицы полей нет.
endpoints[].probe.latency_msnumbermsВремя ответа на последний проверочный запрос.
endpoints[].probe.bytesnumberbytesРазмер тела проверенного ответа.
endpoints[].probe.qualitynull—`meta.quality`, указанное в проверенном ответе (FRESH / PARTIAL / STALE …); `null`, если эндпоинт его не сообщает.
endpoints[].probe.data_age_snumber|nullsЧисло секунд с события.
endpoints[].probe.last_ok_atnumbermsМетка времени.
endpoints[].probe.fail_streaknumbercountЧисло неудачных проверок подряд; 0, если последняя проверка прошла успешно.
endpoints[].required[]string—Имя одного обязательного параметра.
rate_limitobject—Правила ограничения частоты запросов публичного API.
rate_limit.window_snumbersДлина окна подсчёта (60).
rate_limit.anonymous_per_minnumbercountЧисло запросов в минуту, разрешённое на один IP клиента, если API-ключ не передан.
rate_limit.scopestring—Текст, поясняющий, как считаются запросы: по IP клиента для анонимных запросов, по ключу — если передан заголовок `CB-API-KEY`.
rate_limit.key_tiers_per_minobject—Число запросов в минуту, разрешённое для каждого уровня API-ключа; ключи словаря — названия уровней.
rate_limit.key_tiers_per_min.hobbyistnumbercountЧисло запросов в минуту для ключей уровня `hobbyist`.
rate_limit.key_tiers_per_min.startupnumbercountЧисло запросов в минуту для ключей уровня `startup`.
rate_limit.key_tiers_per_min.standardnumbercountЧисло запросов в минуту для ключей уровня `standard`.
rate_limit.key_tiers_per_min.professionalnumbercountЧисло запросов в минуту для ключей уровня `professional`.
rate_limit.exemptarray—Шаблоны путей, которые не учитываются в лимите.
rate_limit.exempt[]string—Один шаблон пути-исключения, например `/api/coin-icon/*`.
rate_limit.headersarray—Имена заголовков ответа, сообщающих состояние лимита запросов.
rate_limit.headers[]string—Имя одного заголовка, например `X-RateLimit-Remaining`.
rate_limit.on_exceedobject—Что возвращается при превышении лимита: статус `http` и код ошибки `code`.
rate_limit.on_exceed.httpnumber—HTTP-статус, возвращаемый при превышении лимита (429).
rate_limit.on_exceed.codestring—Код.
errorsarray—Коды ошибок, которые может вернуть API, каждый с HTTP-статусом, значением и рекомендацией по повтору.
errors[]object—Один код ошибки.
errors[].codestring—Код.
errors[].httpnumber|string—HTTP-статус, отправляемый с этим кодом; строка вида `501 / 503`, если применимо несколько статусов.
errors[].meaningstring—Что означает ошибка.
errors[].retrystring—Рекомендация, стоит ли повторять запрос и как это делать.
errors[].legacyboolean—Присутствует и равно true только для кода, используемого старыми эндпоинтами, которые отвечают HTTP 200 с `success: false`. может отсутствовать
status_legendobject—Текстовое определение каждого статуса эндпоинта.
status_legend.availablestring—Доступны ли данные.
status_legend.partialstring—true, если присутствует только часть ожидаемых данных.
status_legend.degradedstring—Определение статуса `degraded`.
status_legend.downstring—Определение статуса `down`.
status_legend.unavailablestring—Элементы, по которым нет данных, с указанием причин. Никогда не сообщаются как 0.
status_legend.unknownstring—Определение статуса `unknown`.
metaobject—Обёртка этого ответа: идентификатор схемы, система-источник, метки времени, время жизни кеша и актуальность.
meta.schemastring—Идентификатор схемы этого ответа; то же значение, что и `schema` верхнего уровня.
meta.sourcearray—Откуда взято значение.
meta.source[]object—Откуда взято значение.
meta.source[].systemstring—Система, сформировавшая данные; для эндпоинтов центра разработчика всегда `coinboss`.
meta.source[].componentstring—Компонент, стоящий за данными: проверка эндпоинтов и патруль качества данных.
meta.observed_atnull—Метка времени.
meta.received_atnumbermsМетка времени.
meta.fetched_atnumbermsВремя, когда CoinBoss получил данные от источника.
meta.windowstring—Окно.
meta.cache_ttl_snumbersВремя жизни серверного кеша этого ответа.
meta.qualitystring—`FRESH`, если проверка эндпоинтов отчиталась в последние 20 минут, иначе `STALE`.
meta.is_staleboolean—true, если строка старше окна актуальности; устаревшие строки в итогах не используются.
meta.fallbackstring—Текстовое пояснение того, что возвращает этот эндпоинт, когда его входные данные устарели или отсутствуют.

Сформировано 2026-11-11 23:01 UTC; использовано реальных ответов: 1.

Пример ответа

/api/meta/catalog · Реальный ответ, получен 2026-11-13 03:59:27 UTC. Длинные массивы и словари сокращены для отображения: errors: элементов было 9; endpoints: элементов было 299; categories: элементов было 21.

  • {
    • "success": true,
    • "schema": "coinboss.meta.catalog/1",
    • "now": 1794542367982,
    • "api_version": "v1",
    • "catalog_version": "2026.11.12",
    • "base_path": "/api",
    • "summary": {
      • "total": 299,
      • "available": 256,
      • "partial": 19,
      • "degraded": 17,
      • "down": 6,
      • "unavailable": 1,
      • "unknown": 0
      },
    • "probe": {
      • "last_run_at": 1794542029183,
      • "age_s": 339,
      • "interval_s": 300,
      • "fresh": true,
      • "error": null
      },
    • "categories": [
      • { … 10 },
      • { … 10 }
      ],
    • "endpoints": [
      • { … 16 },
      • { … 16 }
      ],
    • "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": { … 4 },
      • "exempt": [ … 1 ],
      • "headers": [ … 4 ],
      • "on_exceed": { … 2 }
      },
    • "errors": [
      • { … 4 },
      • { … 4 }
      ],
    • "status_legend": {
      • "available": "last probe returned HTTP 200 and the response matched the documented schema",
      • "partial": "works, but exchange / field coverage is incomplete (see status_reason)",
      • "degraded": "responding, but schema drift or stale data was detected by the last probe",
      • "down": "last probe failed",
      • "unavailable": "documented for completeness; no lawful public source yet, the endpoint returns nulls or is not served",
      • "unknown": "no probe result within the last 20 minutes"
      },
    • "meta": {
      • "schema": "coinboss.meta.catalog/1",
      • "source": [ … 1 ],
      • "observed_at": null,
      • "received_at": 1794542029183,
      • "fetched_at": 1794542367982,
      • "window": "latest",
      • "cache_ttl_s": 30,
      • "quality": "FRESH",
      • "is_stale": false,
      • "fallback": "when the probe has not reported within 20 minutes every endpoint status becomes \"unknown\""
      }
    }

Сведения

Аутентификация
Не требуется. Публичный эндпоинт.
Лимит запросов
1200 запросов в минуту на один IP
Серверный кеш
30s
Пограничный микрокеш
10s
Частота обновления
Перестраивается при запросе из файла каталога и последних результатов автопроверки (автопроверка выполняется каждые 5 минут).
Источники данных
Каталог эндпоинтов CoinBoss + sd_api_probe (результаты реальных вызовов, выполненных автопроверкой API).
Метки времени
Миллисекунды эпохи Unix (UTC), если в описании поля не указано иное
Формат ответа
json
Стабильность
Стабильный
Доступен с
2026-11-11

Текущий статус

ДоступенПроверено: 2026-11-13 03:59:27 UTCHTTP 20010 msСхема совпадаетВозраст самой новой точки данных: 6m

Доступность за последние 30 дней

Пройдено 100% из 409 проверок

Ошибки

Неудачные вызовы имеют одинаковую структуру на всех эндпоинтах. Полный список приведён на странице ошибок. Ошибки и лимиты запросов →

КодHTTPЗначениеЧто делать
INVALID_PARAM400Отсутствует обязательный параметр, или значение не принимается. `param` называет параметр, если он известен.Не повторяйте запрос без изменений; исправьте его.
UNAUTHORIZED401Заголовок `CB-API-KEY` был отправлен, но ключ неизвестен или отозван. Для публичных данных ключ не нужен — уберите заголовок или используйте действительный ключ.Не повторяйте запрос без изменений.
FORBIDDEN403Маршрут не входит в публичный API (внутренний или только для аккаунта).Не повторяйте запрос.
NOT_FOUND404Неизвестный маршрут, либо запрошенная монета / биржа / фонд не существует.Не повторяйте запрос; сверьте путь и идентификаторы с каталогом.
RATE_LIMITED429Запросов больше, чем позволяет поминутный лимит. `Retry-After` указывает, сколько секунд нужно подождать.Дождитесь истечения `Retry-After`, затем повторите запрос с нарастающей задержкой.
INTERNAL500Непредвиденная ошибка сервера. Сообщение намеренно общее; при обращении указывайте `request_id`.Повторите запрос один раз через несколько секунд; если ошибка сохраняется, сообщите о ней, указав ID запроса.
UPSTREAM_FAILED503Источник данных, стоящий за этим эндпоинтом, не ответил вовремя. Устаревшие или подменные значения вместо него не возвращаются.Повторите запрос с нарастающей задержкой; проверьте страницу статуса.
UNAVAILABLE501 / 503Набор данных временно не готов (прогрев кеша), либо у эндпоинта пока нет законного публичного источника.Повторите запрос позже; каталог помечает эндпоинты, недоступные по проектному решению.
REQUEST_FAILED200Некоторые более старые эндпоинты отвечают HTTP 200 с `success: false`. Всегда проверяйте `success`, а не только статус HTTP.Зависит от сообщения; считайте запрос неудачным.

Попробовать

GET/api/meta/catalogДоступен
Параметры

Параметров нет.

URL запросаhttps://www.coinboss.com/api/meta/catalog
Выберите эндпоинт и нажмите «Отправить запрос». Здесь появятся ответ, заголовки и время выполнения.