Инструкции Smart-Shop:API Smart-shop: различия между версиями
Radmir g (обсуждение | вклад) Нет описания правки Метка: визуальный редактор отключён |
Radmir g (обсуждение | вклад) Нет описания правки |
||
| (не показаны 4 промежуточные версии этого же участника) | |||
| Строка 178: | Строка 178: | ||
| Цена товара при поставке под заказ. | | Цена товара при поставке под заказ. | ||
|} | |} | ||
[[Файл:Аннотация_smart_shop_api_1.png|безрамки|435x435пкс]] | |||
=== Получение характеристик ETIM и статических данных === | |||
Метод позволяет получить характеристики ETIM и статические данные по одному или нескольким товарам: название, серию, вес, объем, неделимое и ссылку на сайт поставщика. | |||
Запрос выполняется методом: | |||
<pre> | |||
POST /v1/get-catalog-item | |||
</pre> | |||
Тело запроса: | |||
<pre> | |||
{ | |||
"items": [ | |||
{ | |||
"supplier_item_number": "77494", | |||
"brand": "КВТ" | |||
}, | |||
{ | |||
"supplier_item_number": "ЯЯС25256", | |||
"brand": "Узола" | |||
} | |||
] | |||
} | |||
</pre> | |||
Параметры тела запроса: | |||
{| class="wikitable" | |||
! Параметр | |||
! Описание | |||
|- | |||
| <code>items</code> | |||
| Массив товаров, по которым необходимо вернуть данные. | |||
|- | |||
| <code>supplier_item_number</code> | |||
| Номер товара поставщика. | |||
|- | |||
| <code>brand</code> | |||
| Бренд товара. | |||
|} | |||
Пример ответа: | |||
<pre> | |||
{ | |||
"found_items": [ | |||
{ | |||
"supplier_item_number": "ABB123", | |||
"brand": "ABB", | |||
"serias_name": "DO", | |||
"item_description": "Автоматический выключатель NXM-125S/3Р 100A 25кА (CHINT)", | |||
"unit": "шт.", | |||
"smallest_sales_unit": { | |||
"smallest_sales_unit_from_stock": 21.99, | |||
"smallest_sales_unit_from_vendor": 11 | |||
}, | |||
"delivery_time": 5, | |||
"vendor_link": "https://www.klemsan.com.tr/Terminal-blocks-and-automation-products-russia?urun=24", | |||
"weight": 0.00001, | |||
"volume": 0.00001, | |||
"etim_class": "EC000761", | |||
"etim_class_name": "Маркировка для клеммной колодки/ клеммного блока", | |||
"etim_features": [ | |||
{ | |||
"feature_code": "EF000001", | |||
"feature_name": "Номинальный ток", | |||
"value_code": "EV000005", | |||
"value_name": "Резьбовой держатель", | |||
"value": "\"100 ÷ 100\" или \"100\"", | |||
"unit_code": "EU000018", | |||
"unit_name": "кВА", | |||
"type": "R" | |||
} | |||
] | |||
} | |||
], | |||
"not_found_items": [ | |||
{ | |||
"supplier_item_number": "string", | |||
"brand": "string" | |||
} | |||
] | |||
} | |||
</pre> | |||
Поля ответа: | |||
{| class="wikitable" | |||
! Поле | |||
! Описание | |||
|- | |||
| <code>found_items</code> | |||
| Массив найденных товаров. | |||
|- | |||
| <code>not_found_items</code> | |||
| Массив товаров, по которым данные не были найдены. | |||
|- | |||
| <code>supplier_item_number</code> | |||
| Артикул поставщика. | |||
|- | |||
| <code>brand</code> | |||
| Бренд товара. | |||
|- | |||
| <code>serias_name</code> | |||
| Серия товара. | |||
|- | |||
| <code>item_description</code> | |||
| Описание товара. | |||
|- | |||
| <code>unit</code> | |||
| Единица измерения товара. | |||
|- | |||
| <code>smallest_sales_unit</code> | |||
| Объект с данными о неделимом количестве товара. | |||
|- | |||
| <code>smallest_sales_unit_from_stock</code> | |||
| Неделимое количество при заказе из наличия. | |||
|- | |||
| <code>smallest_sales_unit_from_vendor</code> | |||
| Неделимое количество при заказе под заказ. | |||
|- | |||
| <code>delivery_time</code> | |||
| Срок поставки в рабочих днях. | |||
|- | |||
| <code>vendor_link</code> | |||
| Ссылка на сайт поставщика. | |||
|- | |||
| <code>weight</code> | |||
| Вес товара. | |||
|- | |||
| <code>volume</code> | |||
| Объем товара. | |||
|- | |||
| <code>etim_class</code> | |||
| Код класса ETIM. | |||
|- | |||
| <code>etim_class_name</code> | |||
| Название класса ETIM. | |||
|- | |||
| <code>etim_features</code> | |||
| Массив характеристик ETIM. | |||
|- | |||
| <code>feature_code</code> | |||
| Код характеристики ETIM. | |||
|- | |||
| <code>feature_name</code> | |||
| Название характеристики ETIM. | |||
|- | |||
| <code>value_code</code> | |||
| Код значения характеристики. | |||
|- | |||
| <code>value_name</code> | |||
| Название значения характеристики. | |||
|- | |||
| <code>value</code> | |||
| Значение характеристики. | |||
|- | |||
| <code>unit_code</code> | |||
| Код единицы измерения характеристики. | |||
|- | |||
| <code>unit_name</code> | |||
| Название единицы измерения характеристики. | |||
|- | |||
| <code>type</code> | |||
| Тип характеристики: <code>L</code> — логический, <code>N</code> — цифровой, <code>R</code> — диапазон, <code>A</code> — буквенно-цифровой. | |||
|} | |||
[[Файл:Аннотация smart shop api 2.png|безрамки|843x843пкс]] | |||
[[Категория:Инструкции SS API]] | [[Категория:Инструкции SS API]] | ||
Текущая версия от 14:52, 18 мая 2026
Описание
API smart-shop.pro предназначено для автоматизированного обмена данными между вашей системой и каталогом Smart Shop. С его помощью вы можете получать актуальную информацию о товарах, остатках на складах и ценах без ручной выгрузки или обращения к менеджеру.
Данное техническое задание описывает основные принципы работы API, доступные методы, формат запросов и ответов, а также требования к авторизации и обработке данных. Документ предназначен для технических специалистов, которые будут выполнять интеграцию с сервисом smart-shop.pro.
Интеграция работает через стандартный HTTPS-протокол и описана с помощью Swagger.
Swagger
- Боевая среда - https://api.smart-shop.pro/
- Тестовая среда - https://api-test.smart-shop.pro/
Формат обмена данными
API работает только с форматом данных JSON.
Все запросы, должны передаваться с заголовком:
Content-Type: application/json
Доступ
В API предусмотрено два вида доступа:
- Базовый доступ — передается информация о наличии товара со сроком более 1 дня, срок поставки в рабочих днях и ваша цена на товар.
- Расширенный доступ — включает данные базового доступа, а также информацию о товаре по классификации ETIM.
Для запроса доступа необходимо обратиться по адресу: tishko@smart-shop.pro.
Вам будет выдан постоянный токен для аутентификации в API.
Аутентификация
Для работы с API необходимо получить временный Bearer-токен.
Запрос выполняется методом:
POST /auth
Параметры запроса:
| Параметр | Описание |
|---|---|
token
|
Постоянный токен, выданный при предоставлении доступа к API |
Пример ответа:
{
"bearer_token": "XXX",
"expires_at": "2024-01-01T00:00:00Z"
}
Полученный bearer_token необходимо использовать для дальнейших запросов к API.
Временный токен действителен в течение 24 часов.
Важно: при повторном получении временного токена ранее выданный bearer_token становится недействительным.
Получение информации о товарах
Получение остатков, цен и сроков поставки
Метод позволяет получить информацию по одному или нескольким товарам: остатки, цены и сроки поставки.
Запрос выполняется методом:
POST /v1/get-item-with-stock-and-price
Тело запроса:
{
"include_prices": 1,
"items": [
{
"supplier_item_number": "77494",
"brand": "КВТ"
},
{
"supplier_item_number": "ЯЯС25256",
"brand": "Узола"
}
]
}
Параметры тела запроса:
| Параметр | Описание |
|---|---|
include_prices
|
Определяет, нужно ли возвращать цены. Цены возвращаются для резервации из наличия и для поставки под заказ. |
items
|
Массив товаров, по которым необходимо вернуть данные. |
supplier_item_number
|
Номер товара поставщика. |
brand
|
Бренд товара. |
Пример ответа:
{
"found_items": [
{
"supplier_item_number": "ABB123",
"brand": "ABB",
"unit": "шт.",
"avaliable_ss": 21.99,
"avaliable_vendor": 11,
"delivery_time": 5,
"prices": {
"price_from_stock": 21.99,
"price_from_vendor": 11
}
}
],
"not_found_items": [
{
"supplier_item_number": "string",
"brand": "string"
}
]
}
Поля ответа:
| Поле | Описание |
|---|---|
found_items
|
Массив найденных товаров. |
not_found_items
|
Массив товаров, по которым данные не были найдены. |
supplier_item_number
|
Номер товара поставщика. |
brand
|
Бренд товара. |
unit
|
Единица измерения товара. |
avaliable_ss
|
Количество товара в наличии. |
avaliable_vendor
|
Количество товара, доступное под заказ у поставщика. |
delivery_time
|
Срок поставки в рабочих днях. |
prices
|
Объект с ценами товара. |
price_from_stock
|
Цена товара при резервации из наличия. |
price_from_vendor
|
Цена товара при поставке под заказ. |
Получение характеристик ETIM и статических данных
Метод позволяет получить характеристики ETIM и статические данные по одному или нескольким товарам: название, серию, вес, объем, неделимое и ссылку на сайт поставщика.
Запрос выполняется методом:
POST /v1/get-catalog-item
Тело запроса:
{
"items": [
{
"supplier_item_number": "77494",
"brand": "КВТ"
},
{
"supplier_item_number": "ЯЯС25256",
"brand": "Узола"
}
]
}
Параметры тела запроса:
| Параметр | Описание |
|---|---|
items
|
Массив товаров, по которым необходимо вернуть данные. |
supplier_item_number
|
Номер товара поставщика. |
brand
|
Бренд товара. |
Пример ответа:
{
"found_items": [
{
"supplier_item_number": "ABB123",
"brand": "ABB",
"serias_name": "DO",
"item_description": "Автоматический выключатель NXM-125S/3Р 100A 25кА (CHINT)",
"unit": "шт.",
"smallest_sales_unit": {
"smallest_sales_unit_from_stock": 21.99,
"smallest_sales_unit_from_vendor": 11
},
"delivery_time": 5,
"vendor_link": "https://www.klemsan.com.tr/Terminal-blocks-and-automation-products-russia?urun=24",
"weight": 0.00001,
"volume": 0.00001,
"etim_class": "EC000761",
"etim_class_name": "Маркировка для клеммной колодки/ клеммного блока",
"etim_features": [
{
"feature_code": "EF000001",
"feature_name": "Номинальный ток",
"value_code": "EV000005",
"value_name": "Резьбовой держатель",
"value": "\"100 ÷ 100\" или \"100\"",
"unit_code": "EU000018",
"unit_name": "кВА",
"type": "R"
}
]
}
],
"not_found_items": [
{
"supplier_item_number": "string",
"brand": "string"
}
]
}
Поля ответа:
| Поле | Описание |
|---|---|
found_items
|
Массив найденных товаров. |
not_found_items
|
Массив товаров, по которым данные не были найдены. |
supplier_item_number
|
Артикул поставщика. |
brand
|
Бренд товара. |
serias_name
|
Серия товара. |
item_description
|
Описание товара. |
unit
|
Единица измерения товара. |
smallest_sales_unit
|
Объект с данными о неделимом количестве товара. |
smallest_sales_unit_from_stock
|
Неделимое количество при заказе из наличия. |
smallest_sales_unit_from_vendor
|
Неделимое количество при заказе под заказ. |
delivery_time
|
Срок поставки в рабочих днях. |
vendor_link
|
Ссылка на сайт поставщика. |
weight
|
Вес товара. |
volume
|
Объем товара. |
etim_class
|
Код класса ETIM. |
etim_class_name
|
Название класса ETIM. |
etim_features
|
Массив характеристик ETIM. |
feature_code
|
Код характеристики ETIM. |
feature_name
|
Название характеристики ETIM. |
value_code
|
Код значения характеристики. |
value_name
|
Название значения характеристики. |
value
|
Значение характеристики. |
unit_code
|
Код единицы измерения характеристики. |
unit_name
|
Название единицы измерения характеристики. |
type
|
Тип характеристики: L — логический, N — цифровой, R — диапазон, A — буквенно-цифровой.
|