Быстрый старт
Cedar API связывает товарный учёт с витринами: каталог, цены и остатки уезжают наверх, заказы и их статусы возвращаются обратно. Первая рабочая интеграция занимает вечер, ключ песочницы выдаётся сразу.
Что понадобится
- Ключ доступа. Создаётся в кабинете, отдельный для песочницы и для рабочего контура.
- Сервер, который умеет принимать входящие запросы. Без него не будет вебхуков, и статусы заказов придётся опрашивать по расписанию.
- Свои идентификаторы товаров. Мы храним ваш
skuкак есть и возвращаем его в каждом ответе, поэтому сопоставлять таблицы не нужно.
Установка
Клиент есть для Node.js и Python, отдельно есть утилита командной строки: ею удобно разово залить прайс или посмотреть, что о вашем каталоге знает сервис.
npm install @cedar/sdk # или pip install cedar-sdk
Текущая версия клиента - 1.9.2. Мажорная версия клиента и версия API связаны: клиент 1.x работает с путями /v1.
Ключ и авторизация
Ключ передаётся заголовком Authorization. Он даёт полный доступ к контуру, поэтому живёт в переменных окружения на сервере: в коде витрины, а тем более в браузере, ему делать нечего.
GET /v1/products?limit=50 HTTP/1.1 Authorization: Bearer $CEDAR_KEY Accept: application/json
sk_test_ и работает на тех же путях. Данные песочницы чистятся каждую ночь, лимит вдвое ниже рабочего: 60 запросов в минуту вместо 120.Первый запрос
import { Client } from '@cedar/sdk';
const api = new Client({ key: process.env.CEDAR_KEY });
const page = await api.products.list({ limit: 50, updatedSince: '2026-08-01' });
for (const item of page.data) {
console.log(item.sku, item.stock, item.price);
}Ответ приходит страницами. Курсор из поля cursor подставляется в следующий запрос, пока has_more не станет false. Смещений по номеру страницы у нас нет намеренно: на живом каталоге, где строки правятся прямо во время чтения, они пропускают и дублируют товары.
{
"data": [
{ "sku": "TRM-1180", "name": "Термокружка 400 мл", "price": 129000, "stock": 17, "updated_at": "2026-08-11T09:41:22Z" },
{ "sku": "TRM-1184", "name": "Термокружка 600 мл", "price": 149000, "stock": 0, "updated_at": "2026-08-10T18:02:05Z" }
],
"cursor": "b3M6MTIwNA",
"has_more": true
}Цена приходит целым числом в копейках: 129000 - это 1290 рублей. Дробных денег в ответах нет нигде, чтобы округление не зависело от языка, на котором написана витрина.
Залить остатки
Разовую выгрузку проще сделать утилитой. Она читает CSV, проверяет его на вашей стороне и показывает, что изменится, до того как что-то отправит.
cedar stock push --file stock.csv --dry-run
Что именно считается изменением и как не затереть резервы - в руководстве Остатки и цены.