API каталога: выгрузка прайса с остатками
Автоматическая выгрузка вашего прайс-листа: розничная цена, ваша дилерская цена по индивидуальному соглашению и остатки по 10 складам. Один HTTP-запрос — и у вас всегда актуальные данные в учётной системе, на сайте или в Excel.
Быстрый старт
-
Получите API-ключ
Ключ выдаёт ваш менеджер Терморос. Он персональный: по нему API определяет вашу компанию и считает цены по вашему соглашению. Не публикуйте ключ; при утечке менеджер отзовёт его и выдаст новый.
-
Сделайте первый запрос
bashcurl -H "X-Api-Key: ВАШ_КЛЮЧ" \ "https://www.termoros.com/api/v1/catalog/?format=json"
Система не умеет передавать заголовки (Excel, 1С, браузер)? Передайте ключ параметром:
URLhttps://www.termoros.com/api/v1/catalog/?api_key=ВАШ_КЛЮЧ&format=csv
-
Настройте ежедневную синхронизацию
Данные меняются один раз в сутки после ночного обмена с 1С — достаточно одного запроса в день после 11:00 МСК.
Готовая коллекция для Postman
12 запросов со всеми сценариями и автотестами: выгрузки во всех форматах, фильтры, кэширование по ETag, обработка ошибок. Импортируйте файл в Postman, впишите свой ключ в переменную коллекции partnerApiKey — и запускайте.
Справочник API
https://www.termoros.com/api/v1/catalog/Аутентификация
Заголовок X-Api-Key: <ключ> (рекомендуется) или параметр ?api_key=<ключ>.
Параметры запроса
| Параметр | Значения | По умолчанию |
|---|---|---|
format | json — для интеграций · csv — открывается в Excel · xml — для учётных систем | json |
brand | бренды через запятую, например Danfoss,Baxi | все |
type | ID разделов каталога через запятую | все |
store | ID складов через запятую (таблица ниже) | все |
Склады
| ID | Город | ID | Город |
|---|---|---|---|
| 1 | Москва | 6 | Санкт-Петербург |
| 2 | Екатеринбург | 7 | Уфа |
| 3 | Казань | 8 | Ростов-на-Дону |
| 4 | Краснодар | 9 | Пятигорск |
| 5 | Новосибирск | 10 | Нижний Новгород |
Пример ответа
{
"meta": {
"generated_at": "2026-08-02T11:05:12+03:00",
"data_date": "2026-08-02",
"partner": "Ваша компания",
"currency": "RUB",
"items_count": 36199
},
"items": [
{
"id": 241335,
"xml_id": "aebc5068-c864-11eb-a2d2-3cecef424a55",
"article": "MH 6287",
"name": "Датчик температуры настенный проводной My Heat",
"brand": "My Heat",
"product_type": "Датчики, реле и термостаты",
"unit": "шт",
"url": "https://www.termoros.com/product/datchik_temperatury_my_heat/",
"price_retail": 1650.00,
"price_partner": 1105.50,
"discount_percent": 33,
"stocks": {"Москва": 19, "Казань": 2}
}
]
}Поля позиции
| Поле | Описание |
|---|---|
article | артикул |
xml_id | идентификатор номенклатуры в 1С (GUID) |
name, brand, product_type, unit | наименование, бренд, вид продукции, единица измерения |
url | карточка товара на termoros.com |
price_retail | розничная цена, без округления |
price_partner | ваша цена по соглашению (= розничная − ваша скидка) |
discount_percent | ваша скидка на товар, % |
stocks | остатки: город → количество (только выбранные склады) |
CSV приходит в UTF-8 c BOM и разделителем «;» — открывается в Excel двойным кликом, остатки разложены колонками по городам. XML — плоская структура <catalog><item>… с теми же полями.
Ещё примеры
# прайс по двум брендам сразу в Excel-файл curl -H "X-Api-Key: ВАШ_КЛЮЧ" -o price.csv \ "https://www.termoros.com/api/v1/catalog/?format=csv&brand=Danfoss,Baxi" # остатки только по Москве и Санкт-Петербургу, XML curl -H "X-Api-Key: ВАШ_КЛЮЧ" \ "https://www.termoros.com/api/v1/catalog/?store=1,6&format=xml"
Совет: кэшируйте по ETag
Сохраните заголовок ETag из ответа и передавайте его в следующем запросе в заголовке If-None-Match. Если данные не менялись, придёт короткий ответ 304 Not Modified без тела — вы не качаете мегабайты зря, а выгрузка обновится ровно тогда, когда обновятся данные.
Ошибки
Любая ошибка — это JSON {"error": {"code", "message"}} с корректным HTTP-статусом:
| HTTP | Код | Что делать |
|---|---|---|
| 401 | unauthorized | ключ не передан, неверный или отозван — обратитесь к менеджеру |
| 400 | bad_format / bad_filter | неверный формат или фильтры; в details указано, что именно исправить |
| 503 | snapshot_not_ready | данные ещё готовятся — повторите запрос позже |
Вопросы по интеграции — вашему менеджеру Терморос.








