Дистрибьюторы могут автоматизировать загрузку остатков продукции на сайт keaz.ru, настроив ее через API.
Скачать инструкцию получения API-ключа
Для работы с данными из ЛК необходимо получить API ключ, он доступен в информации о компании пользователям с ролью "Администратор дистрибьютора".
Общий вид запросов
url: /restapi/office/ресурс.дейстие.тип
Ресурс - объект над которым будут производится действия
Действие - стандартный набор функций: get, list, add, update, delete. Набор доступных действий различается в зависимости от конкретных ресурсов.
Тип - возвращаемый тип данных: json, xml. По умолчанию тип данных json
Данные для обработки передаются POST-запросом. Параметры передаются либо в стандартном POST-запросе, либо в формате JSON/XML. Обязательным параметром является hash, содержащий api-ключ пользователя Личного кабинета.
Api ключ
Для работы с данными необходимо получить API-ключ. Он доступен на странице "Информация о компании" пользователям Личного кабинета с ролью "Администратор дистрибьютора".
Примеры запросов
Ниже приведены примеры запросов в трех форматах, данные одни и те же - api ключ и фильтр по id равному 2916
POST
hash=jqtlkuvhik0o4ogg4wswk4ws0kwww4k&filter[id][0]=2916
Запрос перед отправкой необходимо кодировать через urlencode
hash=jqtlkuvhik0o4ogg4wswk4ws0kwww4k&filter%5Bid%5D%5B0%5D=2916
JSON
{ "hash": "jqtlkuvhik0o4ogg4wswk4ws0kwww4k", "filter": [ { "id": 2619 } ] }
XML
<request> <hash>jqtlkuvhik0o4ogg4wswk4ws0kwww4k</hash> <filter> <id>2619</id> </filter> </request>
Пример запроса для 1С 8.3
Строка JSON="строка, содержащая JSON-объект" HTTPСоединение=Новый HTTPСоединение("keaz.ru", , , , , , ); HTTPЗапрос=Новый HTTPЗапрос("POST"); HTTPЗапрос.АдресРесурса="/restapi/office/warehouses.list.json"; HTTPЗапрос.Заголовки.Вставить("Content-type", "application/json"); HTTPЗапрос.УстановитьТелоИзСтроки(СтрокаJSON, КодировкаТекста.UTF8, ИспользованиеByteOrderMark.НеИспользовать); HTTPСоединение.ОтправитьДляОбработки(HTTPЗапрос)
Общий вид ответов
xml
<p><?xml version="1.0" encoding="UTF-8"?> <response> <warehouses> <item> <code>3</code> <contacts>3</contacts> <address>Курск, ул. Луначарского, 8</address> </item> <item> <code>111111</code> <contacts>test</contacts> <address>Курск</address> </item> </warehouses> <status> <code>ok</code> <messages> <item>Склад `111111` уже существует!</item> </messages> </status> </response>
json
{ "warehouses": [ { "code": "3", "contacts": "3", "address": "\u041a\u0443\u0440\u0441\u043a, \u0443\u043b. \u041b\u0443\u043d\u0430\u0447\u0430\u0440\u0441\u043a\u043e\u0433\u043e 8" }, { "code": "111111", "contacts": "test", "address": "\u041a\u0443\u0440\u0441\u043a" } ], "status": { "code": "error", "messages": [ "Не корректные данные склада в строке `0`: `{"contacts":"test","address":"\u041a\u0443\u0440\u0441\u043a"}`" ] } }