Skip to main content
GET
Full price-list snapshot (gzipped NDJSON)
Эндпоинт snapshot отдаёт полный список цен CSBoard в виде одного gzip-сжатого файла NDJSON. Каждая распакованная строка — это один JSON-объект PriceRow, той же схемы, что возвращает GET /v1/prices. Это рекомендуемый путь для потребителей полного каталога: сайтов сравнения, арбитражных ботов или дата-пайплайнов, которым нужна полная локальная копия списка цен. Для точечных запросов по подмножеству товаров используйте GET /v1/prices. Требуется аутентификация. Отправьте ключ как Authorization: Bearer csb_pub_.... Лимит запросов: 1 запрос в минуту, отдельно от общего лимита 30 запросов/мин. Планируйте интервал опроса соответствующе.

Заголовки запроса

string
Передайте значение ETag из предыдущего ответа snapshot, чтобы сделать условный запрос. Если снимок не изменился с момента этого ETag, сервер вернёт 304 Not Modified без тела, экономя трафик и избегая повторной загрузки.

Заголовки ответа

Тело ответа

Поток, сжатый gzip. После распаковки каждая строка (разделитель — перевод строки) представляет собой валидный JSON-объект, соответствующий схеме PriceRow:

Пример: загрузка и просмотр

Пример распакованного вывода:

Пример: условный запрос с ETag

При первой загрузке вы получаете заголовок ETag. Передавайте его обратно в последующих запросах, чтобы не скачивать неизменённый снимок повторно:
Ответ 304 Not Modified означает, что снимок идентичен уже имеющемуся у вас — повторная загрузка не нужна.

Коды ошибок

Всегда сохраняйте ETag из каждой успешной загрузки и отправляйте его обратно в If-None-Match при следующем запросе. Ответ 304 не расходует квоту лимита запросов и позволяет поддерживать локальную копию в актуальном состоянии без лишних повторных загрузок.
Этот эндпоинт предназначен для массовой загрузки полного каталога. Если вам нужны цены только для конкретного товара или отфильтрованного подмножества, используйте GET /v1/prices — он поддерживает фильтры по search, category и wear и не учитывается в лимите snapshot.

Авторизации

Authorization
string
header
обязательно

Send your key as a Bearer token on every request: Authorization: Bearer csb_pub_.... Generate keys in your CSBoard profile.

Заголовки

If-None-Match
string

Conditional request. Pass the ETag from a previous snapshot to receive 304 if unchanged.

Ответ

Gzipped NDJSON stream. Each decompressed line is one PriceRow JSON object. Sets an ETag header.

The response is of type file.