API цен и остатков Хогарт

Обновить страницу Поддержка online@hogart.ru

Подробная документация с примерами

URL для подключения API цен, товаров и остатков

IP host - 89.111.54.152

Пример подключения:

https://89.111.54.152:5555/api/product/?[параметр1]=[значение1]&...&[параметрN]=[значениеN]

(Для обеспечения безопасности соединения сервис подписан самоподписанным сертификатом - его необходимо добавить в исключения!!! Так же необходимо предоставить информацию о Вашем IP адресе с которого будет производиться подключение к сервису. Протокол https)

Для получения информации необходимо указать по крайней мере обязательный параметр - это номер страницы
Метод возвращает данные разбитыми на страницы - на одной странице 1000 записей.

?page=[номер страницы] (нумерация начинается с нуля!!!)

Метод выдаёт до 1000 строк на одну страницу. Если строк больше, то необходимо читать следующую страницу. Пример – имеется 3234 строк, в данном случае количество страниц – четыре. Страницы необходимо читать до тех пор, пока последняя страница не выдаст пустой файл.

Ссылка с выбранной страницей выглядит как на примере
https://89.111.54.152:5555/api/product/?page=23

Необязательный параметр - token

Токен является кодом идентификации вашей компании в нашей базе.
Если необходимо подключиться по вашему токену, то вам нужно дополнительно в ссылке добавить следующий код (пример):

&token=[значение]

Ссылка с токеном будет выглядеть как на примере

https://89.111.54.152:5555/api/product/?page=0&token=11111111-1111-1111-1111-111111111111

Если токен указан верно, то товарные позиции, для которых в нашей учётной системе проставлена скидка будут отображаться с учётом вашей скидки, т. е. цена будет отличаться от основной цены.

Фильтрация
Для того, чтобы выводить информацию (фильтровать товарные позиции) по мере необходимости, есть следующие параметры.
Вы можете использовать несколько параметров одновременно, кроме параметров, которые отмечены как несовместимые (sku и brand не могут использоваться вместе в обращении к АПИ)

Опции перечислены ниже.

Показать товары только на складе –
instock (true, false)

Пример –

https://89.111.54.152:5555/api/product/?page=3&instock=true

page (число int) – обязательный (номер страницы - начинается с нуля)
token (строка) – необязательный (считает цену со скидкой, если она указана для товара для этого пользователя)
instock (bool — true:false) – в случае истины - только товары которые есть на складе сейчас, в случае ложь не учитываем это условие

Отбор (фильтр) по городу

Для вывода только тех позиций, которые есть в Санкт-Петербурге, используйте данную опцию.
isMoscow (bool - true:false - необязательный)

Пример –

https://89.111.54.152:5555/api/product/?page=1&token=11111111-1111-1111-1111-111111111111&isMoscow=false

Отборы (фильтр) по брендам и по артикулам

Если необходимо ограничить список товаров только одним брендом, то необходимо добавить параметр brand (строка)
Сохраняются все варианты отбора как в первом случае.
page (число int) - обязательный (номер страницы - начинается с нуля).
token (строка) - необязательный (считает цену со скидкой если она указана для товара для этого пользователя).
instock (bool - true:false - необязательный) в случае истины — выдаст только те товары, которые есть на складе сейчас. В случае ложь – не учитываем это условие.
brand (необязательный - строка не может применяться вместе с sku) - отбор по бренду остальные параметры работают так же.

Пример использования параметров фильтра –

https://89.111.54.152:5555/api/product/?page=1&token=11111111-1111-1111-1111-111111111111&instock=true&brand=Kermi+(otop)

sku - артикул - необязательный параметр.

page (число int) - обязательный (номер страницы - начинается с нуля) - он должен обязательно присутствовать но его значение не имеет значения )
token (строка) - необязательный (считает цену со скидкой если она указана для товара для этого пользователя)
sku (необязательный - строка не может применяться вместе со brand и instock)
остальные параметры работают так же.

Пример –

https://89.111.54.152:5555/api/product/?page=1&token=11111111-1111-1111-1111-11111111111&sku=KSN33007110211K

Кодирование специальных символов

Таблица символов кодирования URL
web-developer.name/urlcode/

При составлении url ссылки необходимо учитывать коды специальных символов. Пробелы, а также ряд других символов не считываются в своём прямом виде в адресе, нужно указывать их код.

Например, нам необходимо вывести бренд Villeroy&Boch

В данном случае спец. символ – &
Его код – %26

Пример
https://89.111.54.152:5555/api/product/?page=1&brand=Villeroy%26Boch+(sant)

Следующий пример, нам необходимо вывести бренд Carlo Poletti

В данном случае спец. символ – ”пробел”
Его код – +

Пример
https://89.111.54.152:5555/api/product/?page=1&brand=Carlo+Poletti+(sant)

Выводится JSON массив значений для каждого товара.

Свойства товара, возвращаемые в JSON –

"Id": ID в учетной системе Хогарта
"Description": Полное наименование
"Name": Короткое наименование
"Sku": артикул
"Unit": единицы измерения
"Brand": название бренда
"Cat": категория
"Stock": на складе сейчас в свободном остатке
"Reserved": в резерве
"Transit": везем от поставщика
"Price": цена
"Discount_price": цена с учетом скидки

Пример –

"Id": "f230b986-c0ea-11e1-84ea-00155d001e05",
"Description": "Конвектор напольный, Kermi, стальной, с экраном теплового излучения, KSN 33, глубина, мм-194, высота, мм-70, длина, мм-1100, тип подключения-№12, боковое слева, цвет-RAL 9016 (белый), рабочее давление, бар-6, с крышкой, мощность, Вт (75/65/20°C)-792",
"Name": "Конвектор, KSN 33, 194*70*1100, №12, RAL 9016 (белый), 6 бар, с крышкой, 792 Вт",
"Sku": "KSN33007110211K",
"Unit": "шт ",
"Brand": "Kermi (otop)",
"Cat": "",
"Stock": 1.0,
"Reserved": 0.0,
"Transit": 0.0,
"Price": 100.0,
"Discount_price": 50.0

Массив из 3-х товаров

Пример –

[
{
"Id": "fd8f68ba-dd15-11df-81ea-00155d0a5302",
"Description": "Конвектор напольный, Kermi, стальной, KNV 21, глубина, мм-72, высота, мм-280, длина, мм-1300, тип подключения-SOL, нижнее слева, с термостатическим вентилем, цвет-RAL 9016 (белый), рабочее давление, бар-6, с крышкой, мощность, Вт (75/65/20°C)-1052",
"Name": "Конвектор, KNV 21, 72*280*1300, SOL, RAL 9016 (белый), 6 бар, с крышкой, 1052 Вт",
"Sku": "KNV210281302SOL1K",
"Unit": "шт ",
"Brand": "Kermi (otop)",
"Cat": "",
"Stock": 1.0,
"Reserved": 0.0,
"Transit": 0.0,
"Price": 100.0,
"Discount_price": 50.0
},
{
"Id": "fd8f68bd-dd15-11df-81ea-00155d0a5302",
"Description": "Конвектор напольный, Kermi, стальной, KNV 54, глубина, мм-255, высота, мм-210, длина, мм-2200, тип подключения-SOR, нижнее справа, с термостатическим вентилем, цвет-RAL 9016 (белый), рабочее давление, бар-6, с крышкой, мощность, Вт (75/65/20°C)-4602",
"Name": "Конвектор, KNV 54, 255*210*2200, SOR, RAL 9016 (белый), 6 бар, с крышкой, 4602 Вт",
"Sku": "KNV540212202SOR1K",
"Unit": "шт ",
"Brand": "Kermi (otop)",
"Cat": "",
"Stock": 1.0,
"Reserved": 0.0,
"Transit": 0.0,
"Price": 100.0,
"Discount_price": 50.0
},
{
"Id": "feb2c37f-ad32-11e0-84e8-00155d0a5302",
"Description": "Радиатор панельный, Kermi, therm-x2 Profil-K, профильный, FK0 12, глубина, мм-64, высота, мм-600, длина, мм-3000, X2 Inside, боковое подключение, рабочее давление, бар-10, цвет-RAL 9016 (белый)",
"Name": "Радиатор, FK0 12, 64*600*3000, X2 Inside, RAL 9016 (белый)",
"Sku": "FK0120603001N2Z",
"Unit": "шт ",
"Brand": "Kermi (otop)",
"Cat": "",
"Stock": 1.0,
"Reserved": 0.0,
"Transit": 0.0,
"Price": 100.0,
"Discount_price": 50.0
}
]

Поддержка online@hogart.ru