мета-данные страницы
Документация по Api (УСТАРЕВШИЕ)
Обновленное API находится по адресу https://doc.agb.is/api
Api Личного кабинета версии 1.4
Оглавление
Описание API
Формат команд
Примеры интеграции
Коды ошибок API
Авторизация
Пример работы с обсуждениями
Работа с выездами
Работа со статистикой ЛК
Устаревшие команды
Устаревшие команды
Описание API
Api позволяет реализовать Личный кабинет клиента, используя клиентскую сессию(авторизованного пользователя) (SessionID), получая информацию только по этому клиенту.
На основе полученной сессии, команды возвращают информацию Только по одному текущем клиенту.
Время «жизни» клиентской сессии неограниченно.
Api личного кабинета Не позволяет реализовать синхронизацию всех заказов/клиентов и др. со сторонними сервисами. Т.к. это может привести к избыточной нагрузке и большому количеству запросов.
Для реализации таких целей, правильно использовать Коммерческое API (УСТАРЕВШИЕ).
В нем есть поддержка загрузки Изменившихся заказов за период (с выводом подробной информации по заказу), изменившихся клиентов, создание и изменение заказов.
Схема работы API
Формат команд
Все команды выполняются методом GET. Ответ на запрос приходит в json формате.
Все значения параметров команд должны быть преобразованы, через js encodeURIComponent или подобные функции.
Пример:
//www.himinfo.ru/cl/{Path}/api/?command={"key":"value"}&SessionID=...&callback=...
где:
- {Path} - имя для Химчистки. Полный путь предоставляется отдельно, после настройки API;
- command - название выполняемой команды;
- {«key»: «value»} - параметры команды (значение=ключ). Представляет собой текстовую аналогию записи объекта на JS;
- SessionID - в зависимости от команды обязательный параметр. Указывает ID сессии для выполнения команды. Выдается при выполнении команды авторизации;
- callback - необязательный параметр. Указывает на имя процедуры для jsonP, которое вернется в ответе с json строкой.
В ответе на запрос могут присутствовать поля, не описанные в настоящей документации. Приложению следует их игнорировать.
Примеры интеграции
Пример запросов на php:
$curl = curl_init(); curl_setopt_array($curl, [ CURLOPT_URL => "//himinfo.ru/cl/{Path}/api/?command=".urlencode('{"param1": "{$param1}", "param2": "{$param2}", "param3": "{$param3}"}'), CURLOPT_RETURNTRANSFER => true, CURLOPT_ENCODING => "", CURLOPT_MAXREDIRS => 10, CURLOPT_TIMEOUT => 30, CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1, CURLOPT_CUSTOMREQUEST => "GET", CURLOPT_POSTFIELDS => "", ]); $response = curl_exec($curl); $err = curl_error($curl); curl_close($curl); if ($err) echo "cURL Error #:" . $err; else echo $response;
Пример запросов на JavaScript:
const data = null; const xhr = new XMLHttpRequest(); xhr.withCredentials = true; xhr.addEventListener("readystatechange", function () { if (this.readyState === this.DONE) console.log(this.responseText); }); xhr.open("GET", '//himinfo.ru/cl/{Path}/api/?command=' + encodeURIComponent('{"param1": "' + param1.val() + '", "param2": "' + param2.val() + '", "param3": "' + param3.val()+ '"}'); xhr.send(data);
Пример запросов на jQuery:
Функция encodeURIComponent выполняется для всех значений параметров команды:
'//himinfo.ru/cl/{Path}/api/?command=' + encodeURIComponent('{"param1": "' + param1.val() + '", "param2": "' + param2.val() + '", "param3": "' + param3.val()+ '"}'),
1) в данном случае метод $.ajax сам выполнит encodeURL:
$.ajax({ 'url': '//himinfo.ru/cl/{Path}/api/', 'data': {'command': '{"param1": "' + param1.val() + '", "param2": "' + param2.val() + '", "param3": "' + param3.val() + '"}'}, 'dataType': 'jsonp', 'success': function(response, ioArgs){}, 'error': function(XMLHttpRequest, textStatus, errorThrown){}, 'josnpCallback': 'callback', 'timeout': 30000 });
2)
$.ajax({ 'url': '//himinfo.ru/cl/{Path}/api/?command=' + encodeURIComponent('{"param1": "' + param1.val() + '", "param2": "' + email.val() + '", "param1": "' + name.val()+ '"}'), 'dataType': 'jsonp', 'success': function(response, ioArgs){}, 'error': function(XMLHttpRequest, textStatus, errorThrown){}, 'josnpCallback': 'callback', 'timeout': 30000 });
Коды ошибок API
Код ошибки | Текст ошибки | Описание |
100 | Ошибка подключения к БД1 | |
101 | Ошибка выполнения запроса1 | |
102 | Слишком частые запросы | |
103 | Отсутствуют команды на выполнение. | Не правильно была сформирована API команда или такой не существует. |
104 | Отсутствуют параметры команды | Не правильно указаны параметры в команде API. |
105 | Некорректные данные | Не правильный формат данных в параметрах команды API. |
106 | Недействительный SessionID |
1 - обратиться к разработчикам Агбис.
Авторизация
Для регистрации используется команда ModernRegistration.
Для авторизации используется команда ModernLogin.
Для восстановления пароля команда ModernRememberPwd.
Пример работы с обсуждениями
1) TitleMessages - получить список обсуждений происходит по сессии, т.е. только конкретно для авторизованного клиента. вернет:
//www.himinfo.ru/cl/{Path}/api/?TitleMessages&SessionID=
Ответ json:
{ "error": 0, "Messages": [ { "id": "10045", "doc_num": "", "dttm": "16.03.2015 5:48:19", "comment": "test", "user": "1", "star": "0", "message_type": "5", "new_mes_count": "0", "status_message": "0" } ] }
2) MessageList - вернет сообщения для конкретной темы (если в теме нет сообщений от пользователей или самого клиента то запрос будет пустой) по ее ID полученной с помощью команды TitleMessages.
//www.himinfo.ru/cl/{Path}/api/?MessageList={"id": "10045"}&SessionID=
Ответ json:
{ "error": 0, "childNode_comments": [ { "dttm": "16.03.2015+21:09:31", "comment": "test", "user": "0", "status_message": 1 } ] }
3) SendMessage - добавит сообщение в существующую тему по ее ID полученной с помощью команды TitleMessages, либо без ID создаст новую тему.
Отправка сообщения в существующее обсуждение:
//www.himinfo.ru/cl/{Path}/api/?SendMessage={"id": "10045", "dttm": "25.03.2015 12:52", "mes_type": "3", "comment": "%D1%82%D0%B5%D1%81%D1%82"}&SessionID=
Создание нового обсуждения на примере отзыва о заказе
//www.himinfo.ru/cl/{Path}/api/?SendMessage={"dor_id": "102577", "dttm": "25.03.2015 12:52", "mes_type": "1", "star": "5", "comment": "%D1%82%D0%B5%D1%81%D1%82"}&SessionID=3213A4C7-6FD5-4ABC-8CAD-24FFA77726E9
4) CountNewMessages - кол-во новых сообщения в теме по ее ID полученной с помощью команды TitleMessages либо без ID создаст новую тему.
//www.himinfo.ru/cl/{Path}/api/?CountNewMessages={"id": "10045"}&SessionID=
Ответ json:
{ "error": 0, "count_new": "3" }
Работа с выездами
Получение списка журнала выездов используется команда Trips.
Для резервирование или редактирования времени выезда используется команда TripOrder.
При резервировании выезда, для указания корректного времени начала и окончания выезда, выполняется команда TripsHr (возвращает список свободного времени начала выезда, на которое можно зарезервировать время), далее выполнятся команда TripsHrTo с указанием предполагаемой даты окончания выезда (вернет список времени окончания, на которое можно завершить выезд).
После резервирования выезда, команда Trips вернет обновленный список выездов.
Работа со статистикой ЛК
Для работы отчета «Отчёт обращений в «Личный кабинет» клиентами.
Используемые команды:
Entry - статистика входа в ЛК (0 - зарегестрировался, 1 - авторизовался);
EntranceSite - статистика заходов в ЛК;
OpenOrders - статистика открытия заказа в ЛК;
OpenHistory - статистика открытия истории в ЛК.
Команды API
Версия API. api_version
Команда: api_version
Вернет версию api. Параметры команды отсутствуют.
Метод отправки: GET
Формат запроса: api_version
Строка запроса:
.../api/?api_version
Ответ json:
{"api_version": "1.4"}
Авторизация. ModernLogin
Команда: ModernLogin
Авторизация по номеру телефона. Используется вместе с командой регистрации ModernRegistration.
Метод отправки: GET
Формат запроса: ModernLogin={"phone": "+79123456789", "pwd": "7110eda4d09e062aa5e4a390b0a572ac0d2c0220"}
Строка запроса:
.../api/?ModernLogin=%7B%22phone%22%3A%20%22%2B79123456789%22%2C%20%22pwd%22%3A%20%227110eda4d09e062aa5e4a390b0a572ac0d2c0220%22%7D
где
phone - номер телефона клиента, обязательный параметр;
pwd – пароль, преобразованный с помощью SHA1, обязательный параметр.
Ответ json:
{ "error":0, "Session_id":"F3967266-DDAE-4524-A8AB-7BCDF79A97F1", "contr_id":"10013", "promo_code_friend":"" }
где
error - код выполнения, 0 - успешно, 1 - ошибка;
Msg - текст сообщения в случае ошибки.
Session_id - ID сессии авторизованного клиента;
contr_id - ID клиента;
promo_code_friend - промо-код.
Проверка валидности сессии. ValidSessionID
Команда: ValidSessionID
Проверка валидности SessionID.
Метод отправки: GET
Формат запроса: ValidSessionID&SessionID=
Строка запроса:
.../api/?ValidSessionID&SessionID=...
где
SessionID – GUID проверяемой сессии.
Ответ json:
{ "error": 0, "contr_id": "123" }
где
contr_id – ID клиента, которому принадлежит сессия.
Регистрация. ModernRegistration
Команда: ModernRegistration
Регистрация клиента в личном кабинете химчистке.
Метод отправки: GET
Формат запроса: ModernRegistration={"fio": "Тест Тестовый", "phone": "+79123456789", "email": "test@test.com"}
Строка запроса:
.../api/?ModernRegistration=%7B%22phone%22%3A%22%2B79123456789%22%2C%22fio%22%3A%22%D0%A2%D0%B5%D1%81%D1%82%20%D0%A2%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D1%8B%D0%B9%22%7D
где
phone - логин, телефон клиента, обязательный параметр;
fio - ФИО клиента, обязательный параметр;
email - Email клиента, не обязательный параметр.
Ответ json:
// При успешной регистрации { "error": 0, "Msg": "СМС сообщение с кодом отправлено" } // При нахождении телефона на другом клиенте { "error": 1, "Msg": "Данный номер телефона уже зарегистрирован. Попробуйте восстановить пароль" "contr_id": "1234", "exists": "1" }
где
error - код выполнения, 0 - успешно, 1 - ошибка;
Msg - текст сообщения;
Если текст сообщения «Вы зарегистрированы», значит для Вас не настроен шаблоны СМС для ЛК, обратитесь в клиентский сервис.
contr_id - ID клиента;
exists - признак что телефон уже занят другим клиентом.
Восстановление пароля. ModernRememberPwd
Команда: ModernRememberPwd
Восстановление пароля зарегистрированного клиента.
Метод отправки: GET
Формат запроса: ModernRememberPwd={"phone":"+79123456789"}
Строка запроса:
.../api/?ModernRememberPwd=%7B%22phone%22%3A%20%22%2B79123456789%22%7D
где
phone - телефон клиента, обязательный параметр.
Ответ json:
{ "error": 0, "Msg": "СМС сообщение с кодом отправлено" }
где
error - код выполнения, 0 - успешно, 1 - ошибка;
Msg - текст сообщения.
Если текст сообщения «Вы зарегистрированы», значит для Вас не настроен шаблоны СМС для ЛК, обратитесь в клиентский сервис.
Выход из Личного кабинета. Logout
Команда: Logout
Выход из Личного кабинета, завершение работы сессии
Метод отправки: GET
Формат запроса: Logout&SessionID=
Строка запроса:
.../api/?Logout&SessionID=...
где
SessionID - ID сессии, обязательный параметр. Возвращает команда авторизации ModernLogin.
Ответ json:
{"error": 0}
где
error - код выполнения, 0 - успешно, 1 - ошибка;
Msg - текст сообщения в случае ошибки.
Информация по клиенту. ContrInfo
Команда: ContrInfo
Информация по авторизированному клиенту.
Метод отправки: GET
Формат запроса: ContrInfo&SessionID=
Строка запроса:
.../api/?ContrInfo&SessionID=...
где
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "contr_id": "12345", "name": "%D0%98%D0%B2%D0%B0%D0%BD%D0%BE%D0%B2%20%D0%98%D0%B2%D0%B0%D0%BD%20%D0%98%D0%B2%D0%B0%D0%BD%D0%BE%D0%B2%D0%B8%D1%87", "short_name": "%D0%98%D0%B2%D0%B0%D0%BD%D0%BE%D0%B2%20%D0%98.%D0%98.", "fone": "111-11-11", "fone_cell": "%2B79990009900", "email": "example@example.com", "agree_to_receive_sms": "0", "agree_to_receive_adv_sms": "0", "address": "%D0%94%D1%80%D1%83%D0%B6%D0%B1%D1%8B%201-1", "barcode": "123456789000", "discount": "5", "last_order_discount":"0", "last_discount": "15", "discount_scheme_name": "", "gender": "0", "sp": "2", "source": "", "region_id": "", "full_orders_cost": "1648370,24", "is_active": "1", "loyalty": "0", "order_not_pay": "266", "order_count": "457", "deposit": "50", "bonus": "5371", "dolg": "1273565,62", "promo_code": "P2HZ3", "birth_day": "01.01.1900" }
где
error - успешность выполнения команды;
contr_id – ID клиента;
name - ФИО клиента;
short_name - краткое ФИО клиента;
fone - обычный телефон;
fone_cell - сотовый телефон;
email - электронная почта;
agree_to_receive_sms - согласен получать СМС о готовности заказов;
agree_to_receive_adv_sms - согласен получать рекламные и поздравительные СМС;
address - адрес клиента;
barcode - номер карточки клиента;
discount - процент скидки клиента;
last_order_discount - скидка из последнего заказа;
last_discount - Последняя скидка по ДС;
discount_scheme_name - название ДС клинта;
gender – пол клиента (0-мужской, 1-женский);
sp – тип клиента (1- организация, 2- физическое лицо);
source - любой текст;
region_id – район;
full_orders_cost – сумма заказов клиента;
is_active – активность карточки клиента (0 - не активен, 1 - активен);
loyalty – лояльность клиента (0 - нейтральный, 1 - положительный/лояльный, 2 - отрицательный/конфликтный, 3 - VIP);
order_not_pay – количество не оплаченных заказов;
order_count – количество заказов;
deposit – остаток депозита клиента;
bonus – остаток бонуса клиента;
dolg – сумма долга клиента;
promo_code – используемый промо-код;
birth_day – дата рождения.
Сохранение информации по клиенту. SaveInfo
Команда: SaveInfo
Сохранение информации по клиенту.
Метод отправки: GET
Формат запроса: SaveInfo={"Name": "Агбис Тест Тестович", "birth_day": "01.10.1974", "Teleph_cell": "+79990009900", "Email": "", "Address": "Новокузнецк, 123- 4", "gender": "0", "agree_to_receive_sms": "1", "agree_to_receive_adv_sms": "0"}&SessionID=
Строка запроса:
.../api/?SaveInfo=%7B%22Name%22%3A%20%22%D0%90%D0%B3%D0%B1%D0%B8%D1%81%20%D0%A2%D0%B5%D1%81%D1%82%20%D0%A2%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D0%B8%D1%87%22%2C%20%22birth_day%22%3A%20%2201.10.1974%22%2C%20%22Teleph_cell%22%3A%20%22%2B79990009900%22%2C%20%22Email%22%3A%20%22%22%2C%20%22Address%22%3A%20%22%D0%9D%D0%BE%D0%B2%D0%BE%D0%BA%D1%83%D0%B7%D0%BD%D0%B5%D1%86%D0%BA%2C%20123-%204%22%2C%20%22gender%22%3A%20%220%22%2C%20%22agree_to_receive_sms%22%3A%20%221%22%2C%20%22agree_to_receive_adv_sms%22%3A%20%220%22%7D&SessionID=D5DEC8D0-707C-4757-90C3-C3DC4240010D&SessionID=...
где
Name – ФИО клиента, не обязательный параметр;
Teleph_cell – сотовый телефон, не обязательный параметр;
Fone – обычный телефон, не обязательный параметр;
birth_day – день рождения (пример: 01.04.1954), не обязательный параметр;
Email – E-mail адрес, не обязательный параметр;
Address – адрес клиента, не обязательный параметр;
gender – пол клиента (0 – м, 1 - ж), не обязательный параметр;
agree_to_receive_sms - согласие на смс о готовности заказа, не обязательный параметр;
agree_to_receive_adv_sms - согласие на рекламную смс, не обязательный параметр;
source - любой текст, не обязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "Msg": "%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B8%20%D1%81%D0%BE%D1%85%D1%80%D0%B0%D0%BD%D0%B5%D0%BD%D1%8B", "contr_id": "10013" }
где
error - успешность выполнения команды;
Msg - сообщение;
contr_id - ID клиента;
need_confirm_phone - признак что, измененный телефон нужно подтвердить.
Клиенту на новый телефон уходит смс с кодом подтверждения. Для подтверждения телефона используется команда ConfirmCellPhone.
Сохранение пароля. SavePass
Команда: SavePass
Сохранение нового пароля клиента.
Метод отправки: GET
Формат запроса: SavePass={"old":"40bd001563085fc35165329ea1ff5c5ecbdbbeef","new":"7110eda4d09e062aa5e4a390b0a572ac0d2c0220","IsDigitPass":"1"}&SessionID=
Строка запроса:
.../api/?SavePass=%7B%22old%22%3A%2240bd001563085fc35165329ea1ff5c5ecbdbbeef%22%2C%22new%22%3A%227110eda4d09e062aa5e4a390b0a572ac0d2c0220%22%2C%22IsDigitPass%22%3A%221%22%7D&SessionID=...
где
old - старый пароль, обязательный параметр;
new - новый пароль, обязательный параметр;
IsDigitPass - признак, если пароль содержит только цифры, не обязательный параметр;
SessionID - ID сессии, обязательный параметр;
old и new должны быть преобразованы с помощью алгоритма SHA1.
Ответ json:
{ "error": 0 }
Подтверждение номера телефона. ConfirmCellPhone
Команда: ConfirmCellPhone
Подтверждение номера телефона по клиенту.
При успешном подтверждении новый телефон будет применен в карточке клиента.
Метод отправки: GET
Формат запроса: ConfirmCellPhone={"contr_id": "10013", "code": "1234"}&SessionID=
Строка запроса:
.../api/?ConfirmCellPhone={"contr_id": "10013", "code": "1234"}&SessionID=...
где
contr_id - ID клиента, обязательный параметр;
code - код подтверждения из смс, не обязательный параметр. Если не указать будет повторная смс с кодом подтверждения, не чаще 1 раза в 5мин;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "code": "223", "phone": "+79990009900", "contr_id": "10013" }
где
error - успешность выполнения команды;
code - новый код подтверждения из смс при повторной отправке;
phone - телефон на который ушла смс;
contr_id - ID клиента.
Остаток бонусов клиента. Bonus
Команда: Bonus
Метод отправки: GET
Остаток бонусов авторизированного клиента. Обязательный параметр SessionID.
Формат запроса: Bonus&SessionID=
Строка запроса:
.../api/?Bonus&SessionID=...
где
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error":0, "bonus_rest":"1956" }где
bonus_rest - остаток бонуса клиента.
Остаток депозита клиента. Deposit
Команда: Deposit
Метод отправки: GET
Остаток депозита авторизированного клиента. Обязательный параметр SessionID.
Формат запроса: Deposit&SessionID=
Строка запроса:
.../api/?Deposit&SessionID=...
где
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error":0, "deposit_rest":"206" }
где
deposit_rest - остаток депозита клиента.
Список заказов клиента. Orders
Команд: Orders
Метод отправки: GET
Список текущих заказов (кроме выданных) авторизированного клиента.
Формат запроса: Orders={"sclad": 1, "need_serv": 1}&SessionID=
Строка запроса:
.../api/?Orders=%7B%22sclad%22%3A1%2C%22need_serv%22%3A1%7D&SessionID=...
где
sclad - информация по складу, необязательный параметр. Указывает нужно ли в ответе указывать информацию по складу(принимает значение 0 и 1);
need_serv - детализация по услугам заказа, необязательный параметр. Указывает нужно ли в ответ записывать детализацию по услугам заказа, в противном случае блок «services» будет отсутствовать(принимает значение 0 и 1);
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "orders":[ { "dor_id": 150708, "doc_num": "001476", "kredit": "1056", "debet": "801,93", "doc_date": "15.07.2013", "date_out": "19.07.2013 15:14:22", "status": "1", "photo_exist": "0", "discount": "5", "sclad_name": "%D0%A7%D0%B8%D1%81%D1%82%D0%BA%D0%B0", "sclad_adr": "%D0%94%D1%80%D1%83%D0%B6%D0%B1%D1%8B%201-1", "sclad_hours": "8:00-20:00", "condition_id": "", "condition_name": "", "services":[ { "dos_id": "100230799", "tov_id": "100644", "service": "%D0%94%D1%83%D0%B1%D0%BB%D0%B5%D0%BD%D0%BA%D0%B0", "code": "060104", "status_id": "1", "status_name": "%D0%9D%D0%BE%D0%B2%D1%8B%D0%B9", "barcode": "271800000786781001", "price": "1320", "qty": "1", "kfx": "1", "discount": "20", "nursery_id": "0", "nurseries_name": "%D0%9D%D0%B5+%D0%B4%D0%B5%D1%82%D1%81%D0%BA%D0%B0%D1%8F", "nurseries_discount": "0", "serv_weight": "1", "dirty_id": "0", "dirty_name": "%D0%9E%D0%B1%D1%89%D0%B5%D0%B5", "dirty_kfx": "1", "kredit": "1056", "ext_info": "", "shop_description": "", "group_tov": "%D0%90%D1%82%D0%B5%D0%BB%D1%8C%D0%B5", "addons":[ { "id": "3", "descr": "%D0%98%D0%B7%D0%BD%D0%BE%D1%81%20%D0%B2%20%25", "value_type": "1", "aos_id": "1009302", "aos_value": "%D0%98%D0%B7%D0%BD%D0%BE%D1%81%2050%25" } ] } ] } ] }
где
orders - массив объектов заказов:
dor_id – ID заказа;
doc_date – дата заказа;
doc_num – номер заказа;
date_out – дата выдачи;
kredit – сумма заказа;
debet – сумма оплаты заказа;
discount – скидка по заказу;
kind_id – тип заказа (0 – Заказ для химчистки, 1 - Заказ для прачечной, 2 – Продажа товаров, 3 – Выездной заказ);
photo_exist – содержит фотографии;
sclad_to – ID склад приема;
sclad_name – название склада;
sclad_adr – адрес склада;
sclad_hours – время работы склада;
current_sclad_id – текущий склад;
status – статус заказа (1 - Новый, 2 - На хранении, 3 - В исполнении, 4 - Исполненный, 5 - Выданный, 6 - Закрытый, 7 - Отменённый);
waiting_confirm – признак подтверждения заказа от клиента (0 - не требует подтверждения, по умолчанию; 1- требует подтверждения от клиента; 2 – клиент согласился, подтвержден; 3 - клиент НЕ согласился, отменен);
is_not_confirmed - признак подтверждения сотрудником химчистки (0 - если сотрудник химчистки уже подтвердил заказ или мы не ждем подтверждения от него, по умолчанию; 1 - если сотрудник химчистки еще не подтвердил заказа, но мы ждем это);
condition_id - ID состояния, с версии Агбис.Химчистки 4.4.0;
condition_name - наименование состояния, с версии Агбис.Химчистки 4.4.0;
services - массив объектов услуг:
dos_id – ID услуги в заказе;
tov_id – ID номенклатурной услуги;
service - название услуги;
code - артикул;
status_id – ID статуса;
status_name - название статуса;
barcode - штрих-код услуги;
price - цена;
qty - количество;
kfx - коэффициент;
discount - скидка;
nursery_id - ID детской скидки;
nurseries_name - название детской скидки;
nurseries_discount - значение детской скидки;
serv_weight - вес;
dirty_id - ID наценки;
dirty_name - название наценки;
dirty_kfx - коэффициент наценки;
kredit - стоимость услуги;
ext_info - описание;
shop_description - описание цеха;
group_tov - группа номенклатуры.
addons - массив объектов доп реквизитов:
id – ID реквизита;
descr - название реквизита;
value_type - тип реквизита;
aos_id – ID значения реквизита;
aos_value - значение реквизита.
История заказов клиента. OrdersHistory
Команда: OrdersHistory
Метод отправки: GET
Список выполненных (выданных) заказов клиента.
Формат запроса: OrdersHistory={"mon": 1, "need_serv": 1}&SessionID=
Строка запроса:
.../api/?OrdersHistory=%7B%22mon%22%3A1%2C%22need_serv%22%3A1%7D&SessionID=...
где
mon - период отображения истории, необязательный параметр. Принимает значение 0 - за последний квартал, 1 – за последние полгода, 2 - за год;
sclad - информация по складу, необязательный параметр. Указывает нужно ли в ответе указывать информацию по складу(принимает значение 0 и 1);
need_serv - детализация по услугам заказа, необязательный параметр. Указывает нужно ли в ответ записывать детализацию по услугам заказа, в противном случае блок «services» будет отсутствовать(принимает значение 0 и 1);
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": "0", "orders_history": [ { "dor_id": "159214", "doc_num": "0000023", "kredit": "1056", "debet": "1056", "doc_date": "15.07.2013", "date_out": "19.07.2013 15:14:22", "status": "5", "discount": "0", "date_out_fast": "20.06.2016 10:08:23", "condition_id": "", "condition_name": "", "services": [ { "dos_id": "100230799", "tov_id": "100644", "service": "%D0%94%D1%83%D0%B1%D0%BB%D0%B5%D0%BD%D0%BA%D0%B0", "code": "060104", "status_id": "1", "status_name": "%D0%9D%D0%BE%D0%B2%D1%8B%D0%B9", "barcode": "271800000786781001", "price": "1320", "qty": "1", "kfx": "1", "discount": "20", "nursery_id": "0", "nurseries_name": "%D0%9D%D0%B5+%D0%B4%D0%B5%D1%82%D1%81%D0%BA%D0%B0%D1%8F", "nurseries_discount": "0", "serv_weight": "1", "dirty_id": "0", "dirty_name": "%D0%9E%D0%B1%D1%89%D0%B5%D0%B5", "dirty_kfx": "1", "kredit": "1056", "ext_info": "", "shop_description": "", "group_tov": "%D0%90%D1%82%D0%B5%D0%BB%D1%8C%D0%B5", "addons": [ { "id": "3", "descr": "%D0%98%D0%B7%D0%BD%D0%BE%D1%81%20%D0%B2%20%25", "value_type": "1", "aos_id": "1009302", "aos_value": "%D0%98%D0%B7%D0%BD%D0%BE%D1%81%2050%25" } ] } ] } ] }
где
orders_history - массив объектов заказов:
dor_id – ID заказа;
doc_date – дата заказа;
doc_num – номер заказа;
date_out – дата выдачи;
date_out_fast – дата выдачи фактическая;
kredit – сумма заказа;
debet – сумма оплаты заказа;
discount – скидка по заказу;
status – статус заказа.
condition_id - ID состояния, с версии Агбис.Химчистки 4.4.0;
condition_name - наименование состояния, с версии Агбис.Химчистки 4.4.0;
services - массив объектов услуг:
dos_id – ID услуги;
tov_id – ID номенклатуры;
service - название услуги;
code - артикул;
status_id – ID статуса;
status_name - название статуса;
barcode - штрих-код услуги;
price - цена;
qty - количество;
kfx - коэффициент;
discount - скидка;
nursery_id - ID детской скидки;
nurseries_name - название детской скидки;
nurseries_discount - значение детской скидки;
serv_weight - вес;
dirty_id - ID наценки;
dirty_name - название наценки;
dirty_kfx - коэффициент наценки;
kredit - стоимость услуги;
ext_info - описание;
shop_description - описание цеха;
group_tov - группа номенклатуры.
addons - массив объектов доп. реквизитов:
id – ID реквизита;
descr - название реквизита;
value_type - тип реквизита;
aos_id – ID значения реквизита;
aos_value - значение реквизита.
Полная информация по заказу. FullOrderInfo
Команда: FullOrderInfo
Получение полной информации по заказу.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: FullOrderInfo={"dor_id":"1"}&SessionID=...
Строка запроса:
.../api/?FullOrderInfo=%7B%22dor_id%22%3A%221001464%22%7D&SessionID=...
где
dor_id – ID заказа, обязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "dor_id": "1001464", "order_dop_info": { "kind_id": "0", "doc_num": "000098", "kredit": "1", "debet": "0", "barcode": "280000000001001464", "firm_id": "11", "doc_date": "24.05.2021", "date_out": "25.05.2021%2017:00:00", "current_sclad_id": "1", "status_id": "1", "photo_exist": "0", "discount": "20", "sclad_to": "1", "fast_exec_id": "0", "sclad_name": "%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D0%BE%D0%B9", "sclad_adr": "%D0%BF%D1%80-%D1%82%20%D0%9C%D0%B5%D1%82%D0%B0%D0%BB%D0%BB%D1%83%D1%80%D0%B3%D0%BE%D0%B2%2043-23", "sclad_hours": "", "discount_extrnl_id": "", "sclad_kredit_id": "1", "is_not_confirmed": "0", "waiting_confirm": "0" }, "order_services": [ { "dos_id": "100231018", "parent_id": "", "qty_kredit": "1", "kredit": "1", "name": "%D0%91%D0%B5%D1%80%D0%BC%D1%83%D0%B4%D1%8B", "status_id": "1", "unitname": "%D1%88%D1%82.", "serv_num": "1", "barcode_read": "%5B0%5D%2098%20(1)", "photo_exist": "0" } ], "order_payments": [ { "doc_id": "100156", "doc_type": "91", "kassa_debet": "0", "bank_debet": "0", "card_debet": "0", "bonus_debet": "1940", "deposit_debet": "0" } ], "order_comments": [], "order_plans": [], "order_signs": [] }
где
dor_id - ID заказа;
order_dop_info – Массив доп. информация по заказу:
kind_id - тип заказа (0 - Заказ для химчистки, 1 - Заказ для прачечной, 2 - Продажа товаров, 3 - Выездной заказ, 5 - Заказ для клининга);
doc_num - номер заказа;
kredit – сумма заказа;
debet – сумма оплаты заказа;
barcode – штрих-код заказа;
firm_id – ID фирмы;
doc_date – дата заказа;
date_out – дата выдачи;
current_sclad_id – ID текущего склада;
status_id – статус заказа (1 - Новый, 2 - На хранении, 3 - В исполнении, 4 - Исполненный, 5 - Выданный, 6 - Закрытый, 7 - Отменённый);
photo_exist – заказ содержит фотографии (0 - нет фотографий, 1 - содержит фотографии);
discount – скидка по заказу;
sclad_to – ID склада приема;
fast_exec_id - ID срочности;
sclad_name – название склада;
sclad_adr – адрес склада;
sclad_hours – время работы склада;
discount_extrnl_id - ID ВДС;
sclad_kredit_id - ID склада приема;
waiting_confirm – признак подтверждения заказа от клиента (0 - не требует подтверждения, по умолчанию; 1- требует подтверждения от клиента; 2 – клиент согласился, подтвержден; 3 - клиент НЕ согласился, отменен);
is_not_confirmed - признак подтверждения сотрудником химчистки (0 - если сотрудник химчистки уже подтвердил заказ или мы не ждем подтверждения от него, по умолчанию; 1 - если сотрудник химчистки еще не подтвердил заказа, но мы ждем это);
order_services – массив услуг в заказе(ID услуги, кол-во конкретной услуги, стоимость конкретной услуги, наименование услуги, статус услуги, ед. измерения услуги);
dos_id - ID услуги;
parent_id - ID родительской услуги;
qty_kredit - количество;
kredit - сумма услуги;
name - наименование услуги;
status_id - статус услуги;
unitname - наименование единицы измерения;
serv_num - номер услуги;
barcode_read - бирка услуги
photo_exist - услуга содержит фотографии (0 - нет фотографий, 1 - содержит фотографии);
order_payments - массив оплат:
doc_id - ID документа оплаты;
doc_type - тип документа оплаты (3 - Кассовый документ (без фискализации), 4 - Банковский документ, 9 - Оплата банковской картой, 31 - Кассовый чек оплата покупателем (с фискализацией), 32 - Кассовый чек возврат денег покупателю (с фискализацией), 91 - Бонус, 92 - Оплата депозитом);
kassa_debet - сумма оплаты кассового документа;
bank_debet - сумма оплаты банковского документа;
card_debet - сумма оплаты банковской картой;
bonus_debet - сумма оплаты бонусом;
deposit_debet - сумма оплаты депозитом;
order_comments – массив комментариев услуг в заказа:
id - ID комментария;
descript - комментарий;
order_plans – массив выездов по заказу; Только в статусах 0 - новый, 3 - Принял, 4 - В пути
id - ID выезда;
tp - тип выезда;
dt - дата выезда;
hr - час выезда;
mn - минуты выезда;
to_hr - час до которого длится выезд;
to_mn - минуты до которого длится выезда;
address - адрес выезда;
comment - комментарий;
sclad_id - ID склада выезда;
mp_status_id - ID статус выезда (0 - новый, 3 - Принял, 4 - В пути);
order_signs – массив подписанных квитанций по заказу(вн. номер подписанной квитанции, дата подписания, название квитанции):
id - ID подписанной квитанции;
dttm - дата подписанной квитанции;
name - наименование квитанции.
Краткая информация по услугам заказа. Services
Команда: Services
Запрос краткой информации по услугам заказа
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: Services={"dor_id":"1"}&SessionID=...
Строка запроса:
.../api/?Services=%7B%22dor_id%22%3A%221001464%22%7D&SessionID=...
где
dor_id – ID заказа, обязательный параметр;
info - дополнительная информация по услуге, обязательный параметр. Принимает значения 0 и 1;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "order_servises": [ { "dos_id": "100231286", "tov_id": "10018", "service": "%D0%91%D0%B5%D1%80%D0%BC%D1%83%D0%B4%D1%8B", "status_id": "1", "unit_name": "%D1%88%D1%82.", "serv_num": "1", "parent_id": "", "kredit": "880", "ext_info": "", "qty_kredit": "1" } ] }
где
order_servises - массив услуг заказа:
dos_id – ID услуги;
tov_id – ID товара;
service – название услуги;
status_id - статус услуги;
unit_name - единица измерения;
serv_num – последовательный номер услуги;
parent_id – ID родительской услуги;
kredit – стоимость услуги;
ext_info – дополнительное описание;
qty_kredit – количество услуги.
Полная информация по услугам заказа. FullService
Команда: FullService
Получение полной информации по услугам заказа.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: FullService={"dor_id":"1"}&SessionID=...
Строка запроса:
.../api/?FullService=%7B%22dor_id%22%3A%221001464%22%7D&SessionID=...
где
dor_id – ID заказа, обязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "order_services": [ { "dos_id": "100231286", "parent_id": "", "tov_id": "10018", "service": "%D0%91%D0%B5%D1%80%D0%BC%D1%83%D0%B4%D1%8B", "code": "01.18", "status_id": "1", "status_name": "%D0%9D%D0%BE%D0%B2%D1%8B%D0%B9", "serv_num": "1", "barcode": "272100000002241001", "price": "880", "qty": "1", "kfx": "1", "discount": "12", "nursery_id": "0", "nurseries_name": "%D0%9D%D0%B5%20%D0%B4%D0%B5%D1%82%D1%81%D0%BA%D0%B0%D1%8F", "nurseries_discount": "0", "serv_weight": "1", "dirty_id": "0", "dirty_name": "%D0%9E%D0%B1%D1%89%D0%B5%D0%B5", "dirty_kfx": "1", "kredit": "880", "ext_info": "", "shop_description": "", "group_tov": "1.%20%D0%A2%D0%B5%D0%BA%D1%81%D1%82%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE-%D1%82%D1%80%D0%B8%D0%BA%D0%BE%D1%82%D0%B0%D0%B6%D0%BD%D0%B0%D1%8F%20%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0", "discount_type": "10", "addons": [] } ] }
где
order_services - массив услуг заказа:
dos_id – ID услуги;
parent_id – ID родительской услуги;
tov_id – ID услуги;
service – название услуги;
code – артикул;
status_id – ID статус;
status_name – название статуса;
serv_num – последовательный номер услуги;
barcode – штрих код;
price – цена из прайс листа;
qty – количество;
kfx – коэффициент;
discount – скидка;
nursery_id – ID детской наценки;
nurseries_name – наименование детской наценки;
nurseries_discount – скидка детской наценки;
serv_weight – ширина;
dirty_id – ID наценки за загрязнение;
dirty_name – название наценки за загрязнение;
dirty_kfx – коэффициент наценки за загрязнение;
kredit – сумма услуги;
ext_info - описание;
shop_description – описание склада;
addons – массива дополнительных реквизитов услуги;
id – ID дополнительного реквизита;
descr – наименование;
value_type – тип реквизита;
aos_id – ID значения реквизита;
aos_value – значение реквизита.
Квитанция. ReceiptOnline
Команда: ReceiptOnline
Получение квитанции по заказу.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: ReceiptOnline={"dor_id":"12345", "typeExport": "png"}&SessionID=
Строка запроса:
.../api/?ReceiptOnline=%7B%22dor_id%22:%2212345%22%7D&SessionID=...
где
dor_id – ID заказа, обязательный параметр;
typeExport – тип формата файла, pdf (по умолчанию), png, svg, не обязательный параметр;
sign – если указан, то при наличии квитанции с подписью, вернется квитанция в формате svg (работает только в паре с параметром typeExport=svg);
SessionID - ID сессии, обязательный параметр.
В зависимости от typeExport будет содержать определенный документ с соответствующим Content-Type.
Для typeExport=pdf, Content-Type=application/pdf;
typeExport=png, Content-Type=image/png;
typeExport=svg, Content-Type=image/svg+xml.
В ответ возвращаются двоичные данные
Квитанция. Receipt
Команда: Receipt
Получение квитанции по заказу. Устаревший вариант, больше не поддерживается.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: Receipt={"dor_id":"12345", "typeExport": "png"}
Строка запроса:
.../api/?Receipt=%7B%22dor_id%22:%2212345%22%7D&SessionID=...
где
dor_id – ID заказа, обязательный параметр;
typeExport – тип формата файла, pdf (по умолчанию), png, svg, не обязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "png": "EB831E9B-472E-4D30-9AAF-20296E6D0017", "dor_id": "12345" }
Где
png – имя документа png.
Стандартный путь открытия квитанции:
https://www.himinfo.ru/upload_files/EB831E9B-472E-4D30-9AAF-20296E6D0017.pdf
Подписанная квитанция. SingReceipt
Команда: SignReceipt
Получение подписанной квитанции по заказу
Метод отправки: GET
Формат запроса: SignReceipt={"id":"12345"}&SessionID=
Строка запроса:
.../api/?SignReceipt=%7B%22id%22:%2212345%22%7D&SessionID=...
где
id – ID подписанной квитанции, обязательный параметр. Можно получить из команды FullOrderInfo;
SessionID - ID сессии, обязательный параметр.
Ответ будет содержать документ с соответствующим Content-Type: image/svg+xml
Список фотографий по заказу. OrderImagesModern
Команда: OrderImagesModern
Команда получения списка всех картинок по заказу, использовать с параметром only_photo_id=1.
Для получения самой фотографии, используется команда PhotoOnline.
Метод отправки: GET
Формат запроса: OrderImagesModern={"dor_id":"12345"}&SessionID=
Строка запроса:
.../api/?OrderImagesModern=%7B%22dor_id%22:%2212345%22%7D&SessionID=...
где
dor_id – ID заказа, обязательный параметр;
only_photo_id - в ответе будет список без картинок (0 - с фотографиями, 1 - без фотографий, обязательный параметр;
SessionID - ID клиентской или пользовательской сессии, обязательный параметр.
Ответ json:
{ "error":0, "photos":[ { "dos_id": "100229859", "photo_id": "1004", "img": "R0lGODlhEgAMAOZaACtTezxtnyBEaI2t0lNzlVZ1lzZbgpSz1zJYgJOx1lJ+rS1VfT5ih0p4qIipz1Bwk1Fxkz9voYanzoKkyyxUfFRzlWOLt0BxokdpjTFYfy9WfpCv1GuSvXSZw0Jlik5ukUVojFV0lkRzpEFxonGXwUx6qVZ1lkNzo0l3p46t01qFsn6hyFmEsjhdhDZcgj9jiFSAro+u0zhqnSpSeoeozmKLtzNZgExtkD1unzhdg3GXwFN/rVZ0llN/rl+JtWSNuUlrjn+iykxtkS5WfZKx1jZcg5Kx1Xufx5Kw1TprnVaBr3mdxUh3pzxhhjlehUpsj2OMuFeCsD5iiDdcgylRejpfhSZPeDNmmZWz11d2l////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH/C05FVFNDQVBFMi4wAwEAAAAh/wtYTVAgRGF0YVhNUDw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMy1jMDExIDY2LjE0NTY2MSwgMjAxMi8wMi8wNi0xNDo1NjoyNyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNiAoV2luZG93cykiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NjQyQjc1OThCRUJEMTFFNUFDRkVGNDdBMzUyNUUwMjQiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NjQyQjc1OTlCRUJEMTFFNUFDRkVGNDdBMzUyNUUwMjQiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo2NDJCNzU5NkJFQkQxMUU1QUNGRUY0N0EzNTI1RTAyNCIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo2NDJCNzU5N0JFQkQxMUU1QUNGRUY0N0EzNTI1RTAyNCIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PgH//v38+/r5+Pf29fTz8vHw7+7t7Ovq6ejn5uXk4+Lh4N/e3dzb2tnY19bV1NPS0dDPzs3My8rJyMfGxcTDwsHAv769vLu6ubi3trW0s7KxsK+urayrqqmop6alpKOioaCfnp2cm5qZmJeWlZSTkpGQj46NjIuKiYiHhoWEg4KBgH9+fXx7enl4d3Z1dHNycXBvbm1sa2ppaGdmZWRjYmFgX15dXFtaWVhXVlVUU1JRUE9OTUxLSklIR0ZFRENCQUA/Pj08Ozo5ODc2NTQzMjEwLy4tLCsqKSgnJiUkIyIhIB8eHRwbGhkYFxYVFBMSERAPDg0MCwoJCAcGBQQDAgEAACH5BAXSAFoALAAAAAASAAwAAAd6gFZXg4SFhleCATpYjI2OjCQBgxIXUI+PPxcSg1gDKEpElwlRTANYnFhGMA0pjjElO0iMqIw1IzSMDic+B420WB09AStBOAodjqgHFhETR0kySxMRFr2nV1gbCg2mjwMNChvXDiIqCZeMCSwiDoMBHOiPHJKCh/aDVoEAIfkEBTwAWgAsAAAAABIADAAAB3eAAlaDhIWGVoIAIFmMjY6MIACDDwtSj48vCw+DWQQZOQWXBS0ZBFmcWSZTCBWOFTYuPIyojAyajBBDTY60WRhFADdCAAYYvFaNDBQfTzNUQB8UDI2cIQYIpo8ECAYhp1YQGlWhl1kFThoQgwAe5Y8ekoKH84MCgQA7" } ] }
где
photos – массив объектов картинок:
dos_id - ID услуги;
photo_id - ID фотографии;
img – фотография услуги в строке Base64, устаревший параметр.
Фотографии по заказу. PhotoOnline
Команда: PhotoOnline
Команда получения фотографии по заказу
Метод отправки: GET
Формат запроса: PhotoOnline={"photo_id":"12345","dos_id":"1234567"}&SessionID=
Строка запроса:
.../api/?PhotoOnline=%7B%22photo_id%22:%2212345%22,%22dos_id%22:%221234567%22%7D&SessionID=...
где
photo_id - ID фото из услуги, обязательный параметр;
dos_id - ID услуги из заказа, обязательный параметр;
SessionID - сессия, обязательный параметр.
В ответ вернется картинка с типом заголовка: Content-Type: image/png
Оплата депозитом. DepositPay
Команда: DepositPay
Оплата заказа депозитом.
Метод отправки: GET
Формат запроса: DepositPay={"dor_id":"123","amount":"12"}&SessionID=
Строка запроса:
.../api/?DepositPay=%7B%22dor_id%22%3A%221001490%22,%22amount%22%3A%2212%22%7D&SessionID=...
где
dor_id – ID заказа, обязательный параметр;
amount - сумма депозита, обязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "Msg": "%D0%97%D0%B0%D0%BA%D0%B0%D0%B7%20%D0%BE%D0%BF%D0%BB%D0%B0%D1%87%D0%B5%D0%BD" }
Оплата бонусом. BonusPay
Команда: BonusPay
Оплата заказа бонусом.
Метод отправки: GET
Формат запроса: BonusPay={"dor_id":"123","amount":"12"}&SessionID=
Строка запроса:
.../api/?BonusPay=%7B%22dor_id%22%3A%221001490%22,%22amount%22%3A%2212%22%7D&SessionID=...
где
dor_id – ID заказа, обязательный параметр;
amount - сумма бонуса, обязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "Msg": "%D0%97%D0%B0%D0%BA%D0%B0%D0%B7%20%D0%BE%D0%BF%D0%BB%D0%B0%D1%87%D0%B5%D0%BD" }
Статистика входа в ЛК. Entry
Команда: Entry
Статистика входа в ЛК.
Метод отправки: GET
Формат запроса: Entry={"type":"1"}&SessionID=
Строка запроса:
.../api/?Orders=%7B%22type%22%3A%221%22%7D&SessionID=...
где
type - тип входа в ЛК. 0 - при регистрации, 1 - при авторизации. Обязательный параметр
Ответ json:
{"error":0}
Статистика заходов в ЛК. EntranceSite
Команда: EntranceSite
Статистика заходов в ЛК (Обновление страницы/вход по сохранной сессии, без авторизации).
Метод отправки: GET
Формат запроса: EntranceSite&SessionID=
Строка запроса:
.../api/?EntranceSite&SessionID=...
Ответ json:
{"error":0}
Статистика открытия заказа в ЛК. OpenOrders
Команда: OpenOrders
Статистика открытия заказа в ЛК (получение информации по заказу).
Метод отправки: GET
Формат запроса: OpenOrders=&SessionID=
Строка запроса:
.../api/?OpenOrders&SessionID=...
Ответ json:
{"error":0}
Статистика открытия истории в ЛК. OpenHistory
Команда: OpenHistory
Статистика открытия истории в ЛК (получение информации по заказу).
Метод отправки: GET
Формат запроса: OpenHistory&SessionID=
Строка запроса:
.../api/?OpenHistory&SessionID=...
Ответ json:
{"error":0}
Дополнительные реквизиты. AddonTypes
Команда: AddonTypes
Получение доп. реквизитов.
Метод отправки: GET
Формат запроса: AddonTypes
Строка запроса:
.../api/?AddonTypes
Ответ json:
{ "error":0, "addon_types":[ { "id":"90", "group_id":"1", "table_name":"DOC_ORDER_SERVICES", "descr":"%D0%A1%D0%BB%D0%BE%D0%B6%D0%BD%D0%B0%D1%8F%20(%D1%80%D1%83%D1%87%D0%BD%D0%B0%D1%8F)%20%D0%BE%D0%B1%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%BA%D0%B0", "value_type":"2", "default_int":"", "default_str":"", "default_bool":"0", "default_date":"", "default_flt":"", "is_default_need":"1", "if_null_message":"", "print_if_empty":"0", "change_price":"2", "num":"1,5", "is_combo":"0", "fullcol":"0", "multisel":"0", "font_color":"", "font_bold":"", "multipl":"", "hide_item_groups":"", "auto_item_groups":"", "auto_maximize":"", "not_manual_editing":"", "change_pr_serv":"", "dont_disc_value":"", "chang_value":"", "affect_user":"", "show_display":"", "show_difaddon":"", "specify_wp":"", "comments":"", "only_manager":"", "addon_str_values":[ ] }, ... ], ... }где
addon_types - Массив объектов доп. реквизитов:
id - ID доп. реквизита;
group_id- ID группы доп. реквизита (1 - Описание изделия, 2 - Дефекты изделия, 3 - Дефекты сырья, 4 - Предупреждения, 5 - Иные дефекты);
descr - наименование доп. реквизита;
value_type - тип доп. реквизита (0 - целое, 1 - строка, 2 - логическое, 3 - дата, 5 - вещественное, 6 - метка, 7 - строковые с ценой и количеством, 8 - Строковые с коэффициентом, 9 - Фигура);
default_int - числовое значение по умолчанию (при value_type = 0);
default_str - сроковое значение по умолчанию (при value_type = 1);
default_bool - логическое значение по умолчанию (при value_type = 2);
default_date - дата по умолчанию (при value_type = 3);
default_flt - вещественное значение по умолчанию (при value_type = 5);
comments - комментарий;
font_color - цвет текста;
font_bold - жирный шрифт;
specify_wp - реквизит для уточнения на рабочем месте;
addon_str_values - Массив для выбора строк у доп. реквизита:
id - ID строки;
value_str - строковое описание;
value_flt - числовое значение.
Комплекты доп. реквизитов. AddonPacks
Команда: AddonPacks
Получение комплектов доп. реквизитов.
Метод отправки: GET
Формат запроса: AddonPacks
Строка запроса:
.../api/?AddonPacks
Ответ json:
{ "error":0, "addon_packs":[ { "id":"60", "name":"16.%20%D0%9C%D0%B5%D0%BB%D0%BA%D0%B8%D0%B9%20%D1%80%D0%B5%D0%BC%D0%BE%D0%BD%D1%82%20%D1%88%D0%B2%D0%B5%D0%B9%D0%BD%D1%8B%D1%85%20%D0%B8%D0%B7%D0%B4%D0%B5%D0%BB%D0%B8%D0%B9", "addon_types":[ 2, 109, 181, 225, 226, 227, 228 ] }, ... ], ... }где
addon_packs - массив объектов комплектов:
id - ID комплекта;
name - наименование комплекта;
addon_types - Массив ID доп. реквизитов, входящих в комплект, из команды AddonTypes.
Прайс-лист. PriceList
Команда: PriceList
Получение прайс-листа.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: PriceList={"price_id":"12"}
Строка запроса:
.../api/?PriceList=%7B%22price_id%22:%2212%22%7D
где
price_id – ID прайс-листа, необязательный параметр. Если не указан, то по умолчанию выдается розничный прайс-лист;
tovar_type - тип отображаемой позиции, необязательный параметр (0 - все товары и услуги, 1 - только товары, 2 - только услуги).
Ответ json:
{ "error": 0, "price_list":[ { "id": "1", "folder_id": "10026", "tovar_type": "2", "code": "0", "name": "%D0%91%D0%BB%D1%83%D0%B7%D0%BA%D0%B0", "unit": "1%20%D1%88%D1%82", "price": "132,69", "group_p": "%D0%A0%D1%83%D0%B1%D0%B0%D1%88%D0%BA%D0%B8", "top_parent":"%D0%A2%D0%B5%D0%BA%D1%81%D1%82%D0%B8%D0%BB%D1%8C", "order_addon_pack_id": "5", "is_price_editable": "1", "is_not_for_discount": "0", "is_repair": "0", "is_percent_price": "0", "additional_text": "", "short_name": "", "index": "", "image_id": "0", "price_id": "0" } ] }
где
price_list - содержит строки прайс-листа:
id – ID услуги/товара в прайс листе;
folder_id – ID группы услуги/товара;
tovar_type - тип позиции (1 - товары, 2 - услуги);
code – артикул;
name – наименование услуги;
unit – единица измерения;
price – цена;
group_c – группа, где лежит услуга;
group_p – родительская группа, группы услуги;
top_parent – верхняя группа;
order_addon_pack_id – номер комплекта доп. реквизитов;
price_id - ID прайс-листа;
is_price_editable - признак цена редактируемая в заказе;
is_not_for_discount - признак не распространять скидки;
is_repair - признак ремонт;
is_percent_price - рассчитывать цену как процент от другой услуги;
additional_text - дополнительная информация;
short_name - краткое наименование;
image_id - ID картинки услуги;
index - индекс.
Группы прайс-листа. PriceTree
Команда: PriceTree
Группы прайс-листа.
Метод отправки: GET.
Заголовок запроса (Header): не требуется.
Формат запроса: PriceTree={"id":"12"}
Строка запроса:
.../api/?PriceTree=%7B%22id%22:%2212%22%7D
где
id – ID прайс-листа, обязательный параметр.
Ответ json:
{ "error": 0, "error":0, "price":[ { "folder_id":"10025", "parent":"10024", "name":"1.+%D0%9A%D0%BE%D0%B6%D0%B0+(%D0%BF%D0%BE%D0%BA%D1%80%D0%B0%D1%81%D0%BA%D0%B0)", "comm":"", "sort_index":"" } ] }
Где
price - содержит строки группы прайс листа:
folder_id – ID группы;
parent – ID родительской группы;
name – название группы;
comm – комментарий.
Склады. ReceptionCenters
Команда: ReceptionCenters
Получение списка складов (приёмные пункты).
Метод отправки: GET
Формат запроса: ReceptionCenters={"with_photo":"1","folders":"1,2,3","lang_id":"0"}
Строка запроса:
.../api/?ReceptionCenters=%7B%22with_photo%22%3A%221%22%2C%22folders%22%3A%221%2C2%2C3%22%2C%22lang_id%22%3A%220%22%7D
где
with_photo - признак получать список приемных пунктов с фото (не обязательный);
folders - список групп приёмных пунктов (не обязательный);
lang_id - язык перевода (не обязательный);
Ответ json:
{ "error":0, "list":[ { "id":"1", "name":"%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D0%BD%D0%BE%D0%B9", "address":"%D0%BF%D1%80-%D1%82%20%D0%9C%D0%B5%D1%82%D0%B0%D0%BB%D0%BB%D1%83%D1%80%D0%B3%D0%BE%D0%B2%2043-23", "working_hours":"", "phone":"999-999-999-999", "group":"%D0%92%D0%BD%D0%B5%20%D0%B3%D1%80%D1%83%D0%BF%D0%BF", "location":"53.764419,87.117967", "cabinet": "0", "folder_id":"1" "name_for_clients": "%D0%A5%D0%B8%D0%BC%201", "use_himinfo": "1", "city": "%D0%9D%D0%BE%D0%B2%D0%BE%D0%BA%D1%83%D0%B7%D0%BD%D0%B5%D1%86%D0%BA", "comment": "", "metro": "", "district_id":"1002", "working_days": "1%7C%7C1%7C%7C-%7C%7C-%7C%7C-%7C%7C-%7C%7C%7C2%7C%7C1%7C%7C-%7C%7C-%7C%7C-%7C%7C-%7C%7C%7C3%7C%7C1%7C%7C-%7C%7C-%7C%7C-%7C%7C-%7C%7C%7C4%7C%7C1%7C%7C-%7C%7C-%7C%7C-%7C%7C-%7C%7C%7C5%7C%7C1%7C%7C-%7C%7C-%7C%7C-%7C%7C-%7C%7C%7C6%7C%7C1%7C%7C-%7C%7C-%7C%7C-%7C%7C-%7C%7C%7C7%7C%7C1%7C%7C-%7C%7C-%7C%7C-%7C%7C-", "is_work_shop": "0", "sclad_is_mobil": "0", "sclad_not_automated": "0", "photo": "" }, ... ], ... }
где
list - массив объектов складов:
id - ID склада;
name - наименование склада;
address - адрес склада;
working_hours - время работы;
phone - телефон склада;
group - группа склада;
location - геолокация, если вкл. определение геолокации;
cabinet - признак склад Чистомат;
folder_id - ID группы склада;
name_for_clients - название склада для ХимИнфо;
use_himinfo - признак отображения склада на Химинфо, значение 0 или 1;
city - город склада;
comment - комментарий по складу;
metro - ближайшее метро до склада;
district_id - номер района;
working_days - рабочие дни склада;
is_work_shop - признак склад является цехом;
sclad_is_mobil - признак мобильный приемный пункт;
sclad_not_automated - признак неавтоматизированный приемный пункт;
photo - фото склада в строке base64.
Регионы (районы). Regions
Команда: Regions
Получение списка регионов.
Метод отправки: GET.
Заголовок запроса (Header): не требуется.
Формат запроса: Regions
Строка запроса:
.../api/?Regions
Ответ json:
{ "error":0, "regions":[ { "id":"1002", "name":"test" }, ... ] }
где
regions - массив объектов регионов:
id – ID региона;
name – наименование региона.
Список выездов. Trips
Команда: Trips
Получение списка выездов.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: Trips={"date":"01.01.2020"}&SessionID=
Строка запроса:
.../api/?Trips=%7B%22date%22%3A%2201.01.2020%22%7D&SessionID=...
где
date – дата, за которую отобразить данные, обязательный параметр;
id – ID региона, необязательный параметр;
detail - отображать выезды с детальной информацией, необязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "trips": [ { "hour": "00", "engaged": "0" }, { "hour": "01", "engaged": "0" }, { "hour": "02", "engaged": "0" }, { "hour": "03", "engaged": "1" } ] }
где
hour – час;
engaged – признак занятости часа(1 – занято, 0 – свободно).
Получение детальных выездов на день:
Формат запроса: Trips={"date":"01.01.2020","detail":"1"}&SessionID=
Строка запроса:
.../api/?Trips=%7B%22date%22%3A%2201.01.2020%22%2C%22detail%22%3A%221%22%7D&SessionID=...
Ответ json:
{ "error": 0, "trips": [ { "id": "10090", "dt": "22.04.2021", "hr": "7", "mn": "0", "to_hr": "8", "to_mn": "0", "tp": "1", "contr_id": "100484065", "contr_name": "%D0%9A%D0%BE%D1%87%D0%B5%D1%82%D0%BE%D0%B2%20%D0%90%D0%BD%D0%B0%D1%82%D0%BE%D0%BB%D0%B8%D0%B9", "contr_tel": "%2B79505840311", "contr_adr": "", "dor_id": "1001448", "scl_name": "%D0%9C%D0%BE%D0%B1%D0%B8%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9%20%D1%81%D0%BA%D0%BB%D0%B0%D0%B4", "sclad_plan_name": "", "mp_status": "0", "car_scl_id": "10010", "comment": "%D0%97%D0%B0%D0%BA%D0%B0%D0%B7%20%D0%B8%D0%B7%20%D0%BC%D0%BE%D0%B1%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE%D0%B3%D0%BE%20%D0%BF%D1%80%D0%B8%D0%BB%D0%BE%D0%B6%D0%B5%D0%BD%D0%B8%D1%8F%20%D0%B4%D0%BB%D1%8F%20%D0%BA%D1%83%D1%80%D1%8C%D0%B5%D1%80%D0%B0", "address": "", "region_id": "", "region_name": "", "doc_num": "000082", "dolg": "850", "dor_status_id": "1", "dor_status_name": "%D0%9D%D0%BE%D0%B2%D1%8B%D0%B9", "kredit": "850", "debet": "0", "contr_fio_text": "", "contr_tel_text": "", "house": "", "room": "", "level": "", "stamp_num": "" }, ... ] }
где
id - ID выезда;
dt - дата выезда;
hr и mn - час и минута начала выезда;
to_hr и to_mn - час и минута окончания выезда;
tp - тип выезда (0 - забрать, 1 - доставить);
contr_id – связанный ID клиента по бд;
contr_tel - связанный телефон клиента по бд;
contr_adr - связанный адрес клиента по бд;
doc_num - номер заказа, если выезд по заказу;
dor_id - ID заказа, если выезд по заказу;
scl_name - мобильный склад (узнать список можно через команду Cars);
car_scl_id – ID мобильного склада;
sclad_plan_name - склад для выезда, если выезд по складу;
mp_status - статус выезда (0 - новый, 1 – совершен, 2 - отменён);
contr_fio_text – имя клиента, указанное при заполнении выезда;
contr_tel_text – телефон клиента, указанный при заполнении выезда;
region_name – название региона;
region_id – ID региона (команда Regions).
user_id - ID экспедитора;
user_name - Название экспедитора;
Информация по выезду. Trip
Команда: Trip
Получение информации по выезду.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: Trip={"id":"1234"}&SessionID=
Строка запроса:
.../api/?Trip=%7B%22id%22%3A%221234%22%7D&SessionID=...
где
id - ID выезда.
Ответ json:
{ "error": 0, "id": "10090", "tp": "2", "dt": "22.04.2021", "hr": "7", "sclad_id": "10010", "address": "", "comment": "", "sclad_plan_to": "", "kind_id": "1", "contr_id": "", "control_user_id": "", "region_id": "", "mn": "", "to_hr": "8", "to_mn": "", "house": "", "room": "", "level_room": "", "geo_location": "", "entrance": "", "intercom": "", "contr_address_id": "", "messages": [ { "mess_id": "10085", "parent_id": "", "user_id": "", "message_type_id": "7", "barcode": "45893254", "dttm": "24.12.2019%2018:05:53", "comm": "", "contr_id": "10013", "sclad_id": "10010", "firm_id": "", "warn_group_id": "", "count_things": "", "sms_tel": "", "dor_id": "1001091" } ], "orders": [ { "dor_id": "1001448", "debet": "0", "kredit": "850", "date_out": "22.04.2021%2017:00:00", "kind_id": "3", "order_num": "", "status_id": "1", "sclad_kredit_id": "10010", "message_id": "", "doc_num": "000082", "contragent_id": "100484065", "firm_id": "11" } ] }
где
id - ID выезда;
tp - тип выезда (0 - забрать, 1 - доставить);
dt - дата выезда;
hr и mn - час и минута начала выезда;
to_hr и to_mn - час и минута окончания выезда;
sclad_id – ID мобильного склада;
address - адрес выезда;
comment - комментарий к выезду;
sclad_plan_to – ID склада для выезда;
kind_id - тип выезда (1 - Выезд по заказу, 2 - выезд по клиенту, 3 - выезд по складу);
contr_id – ID клиента;
control_user_id - ID диспетчера;
region_id – ID региона (команда Regions);
house - дом;
room - квартира;
level_room - этаж;
geo_location - координаты;
entrance - подъезд;
intercom - домофон;
contr_address_id - ID адреса клиента;
messages - информация по мешкам у выезда, массив объектов:
mess_id - ID мешка;
user_id - ID пользователя;
message_type_id - тип сообщения (7 - мешок);
barcode - номер мешка;
dttm - дата принятия мешка;
comm - комментарий;
contr_id - ID клиента;
sclad_id - ID склада;
firm_id - ID фирмы;
warn_group_id - группа предупреждения;
count_things - количество вещей;
sms_tel - телефон клиента из заказа;
dor_id - ID заказа;
orders - список заказов, массив объектов:
dor_id - ID заказа;
kredit - сумма заказа;
debet - оплачено;
date_out - дата выдачи;
kind_id – тип заказа (0 – заказ химчистки, 1- прачечный заказ, 2 – продажа товаров, 4 – выездной заказ);
order_num - номер БСО;
status_id – ID статуса заказа (1 – новый, 3 – в исполнении, 4 – исполненный, 5 - выданный);
sclad_kredit_id - ID склад приема заказа;
message_id - ID сообщения, на основе которого создан заказ;
doc_num - номер заказа;
contragent_id - ID клиента;
firm_id - ID фирмы.
Свободное время начала выезда на дату. TripsHr
Команда: TripsHr
Свободное время начала выезда на дату. Для задания корректного времени параметра hr для команды TripOrder.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: TripsHr={"date": "01.01.2020", "car_id": "2", "id": "123"}
Строка запроса:
.../api/?TripsHr=%7B%22date%22%3A%2201.01.2020%22%2C%22car_id%22%3A%222%22%2C%22id%22%3A%22123%22%7D
где
date – дата, на которую создается резерв (формат 21.12.2020), обязательный параметр;
id – ID выезда (команда Trips), необязательный параметр. Указывается при редактировании выезда;
region_id – ID региона, необязательный параметр. С учетом по региону;
car_id – мобильный склад, необязательный параметр. С учетом по мобильному складу.
Ответ json:
{ "error": 0, "hr": [ "00:00", "01:00", "02:00", "03:00", "04:00", "05:00", "06:00", "07:00", "08:00", "12:00", "13:00", "14:00", "15:00", "16:00", "18:00", "19:00", "22:00", "23:00" ] }
где
hr - массив строк не занятым временем выезда.
Свободное время окончания выезда на дату. TripsHrTo
Команда: TripsHrTo
Свободное время окончания выезда на дату. Для задания корректного времени параметра hr_to для команды TripOrder.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: TripsHrTo={"date": "01.01.2020", "hr_to": "12:00", "car_id": "2", "id": "123"}
Строка запроса:
.../api/?TripsHrTo=%7B%22date%22%3A%2201.01.2020%22%2C%22hr_to%22%3A%2212%3A00%22%2C%22car_id%22%3A%222%22%2C%22id%22%3A%22123%22%7D
где
date – дата, на которую создается резерв (формат 21.12.2020), обязательный параметр;
hr_to – предполагаемое время окончания (Формат – «10:00», «07:00»), обязательный параметр;
id – ID выезда (команда Trips), необязательный параметр. Указывается при редактировании выезда;
region_id – ID региона, необязательный параметр. С учетом по региону;
car_id – мобильный склад, необязательный параметр. С учетом по мобильному складу.
Ответ json:
{ "error": 0, "hr_to": [ "12:00", "13:00", "14:00", "15:00", "16:00", "17:00", "18:00", "19:00", "20:00", "21:00", "22:00", "23:00", "23:59" ] }
где
hr_to - массив строк не занятым временем окончания выезда.
Список выездных машин. Cars
Команда: Cars
Список выездных машин (выездные ПП)
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: Cars
Строка запроса:
.../api/?Cars
Ответ json:
{ "error": 0, "cars": [ { "id": "10010", "name": "%D0%9C%D0%BE%D0%B1%D0%B8%D0%BB%D1%8C%D0%BD%D1%8B%D0%B9%20%D1%81%D0%BA%D0%BB%D0%B0%D0%B4", "address": "", "phone": "", "price_list_id": "" } ] }
где
cars - массив складов/пп:
id – ID склада/пп;
name – название склада/пп;
address - адрес склада/пп;
phone - телефон склада/пп;
price_list_id - ID прайс листа склада/пп.
Создание выезда. TripOrder
Команда: TripOrder
Создание выезда в назначенное время.
Можно создать 5 выездов в день.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: TripOrder={"tp": "1", "date": "07.07.2020", "hr": "11:00", "hr_to": "12:00", "address": "тест", "region_id": "1", "car_id": "2", "comment": "тест", "fio": "Тест", "tel": "+79876543210", "mp_status": "1"}&SessionID=
Строка запроса:
.../api/?TripOrder=%7B%22tp%22%3A%20%221%22%2C%20%22date%22%3A%20%2207.07.2020%22%2C%20%22hr%22%3A%20%2211%3A00%22%2C%20%22hr_to%22%3A%20%2212%3A00%22%2C%20%22address%22%3A%20%22%D1%82%D0%B5%D1%81%D1%82%22%2C%20%22region_id%22%3A%20%221%22%2C%20%22car_id%22%3A%20%222%22%2C%20%22comment%22%3A%20%22%D1%82%D0%B5%D1%81%D1%82%22%2C%20%22fio%22%3A%20%22%D0%A2%D0%B5%D1%81%D1%82%22%2C%20%22tel%22%3A%20%22%2B79876543210%22%2C%20%22mp_status%22%3A%20%221%22%7D&SessionID=...
где
id - ID выезда, необязательный параметр. Задается для редактирования выезда (команда Trips);
tp - тип выезда (1 - забрать, 2 - доставить по умолчанию), необязательный параметр;
contr_id - ID клиента, необязательный параметр;
date – дата, на которую создается резерв (формат 21.12.2020), обязательный параметр;
hr – время, на которое создается резерв (формат «11:30»), обязательный параметр;
hr_to – время окончания выезда (формат «11:30»), обязательный параметр;
address – адрес выезда, если выезд по клиенту, обязательный параметр;
region_id – ID региона (из команды Regions), необязательный параметр;
car_id - ID мобильного склада, обязательный параметр;
comment – комментарий, необязательный параметр;
tel - телефон клиента, обязательный параметр;
fio - фио клиента, необязательный параметр;
mp_status - статус выезда (0 - новый, 1 – совершен, 2 – завершен), обязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error":0, "Msg": "%D0%97%D0%B0%D1%80%D0%B5%D0%B7%D0%B5%D1%80%D0%B2%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%BE" }
Создание выездного заказа(курьера). SaveOrder
Команда: SaveOrder
Создание выездного заказа(курьера).
Данный выезд можно найти в программе химчистке в меню Документы – Маркетинг – Сообщения, тип сообщения выездной заказ.
Такое сообщение предварительно вручную обрабатывается приемщиком и на основе него создается заказ.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: SaveOrder={"zakaz_address_out": "1", "zakaz_address_in": "1", "zakaz_take_away_date": "12.03.2019", "zakaz_take_away_time": "12:23", "zakaz_get_date": "", "zakaz_get_time": "", "services": "1|2|2|||2|3|4|||2|2|1"}&SessionID=
Строка запроса:
.../api/?SaveOrder=%7B%22zakaz_address_out%22%3A%221%22%2C%22zakaz_address_in%22%3A%221%22%2C%22zakaz_take_away_date%22%3A%2212.03.2019%22%2C%22zakaz_take_away_time%22%3A%2212%3A23%22%2C%20%22zakaz_get_date%22%3A%22%22%2C%22zakaz_get_time%22%3A%22%22%2C%22services%22%3A%20%221%7C2%7C2%7C%7C%7C2%7C3%7C4%7C%7C%7C2%7C2%7C1%22%7D&SessionID=...
где
zakaz_address_out – ID адрес забора вещей, обязательный параметр. Из команды AddressContr;
zakaz_address_id - ID адрес доставки вещей, обязательный параметр. Из команды AddressContr;
zakaz_take_away_date - дата забора вещей, обязательный параметр. Формат «21.06.2019»;
zakaz_take_away_time - время забора вещей, обязательный параметр. Формат «11:20»;
zakaz_get_date – дата доставки вещей, не обязательный параметр. Формат «21.06.2019»;
zakaz_get_time – время доставки вещей, не обязательный параметр. Формат «11:20»;
services - список ID услуг, обязательный параметр. Передаются в виде 1|2|2|||2|3|4|||2|2|1, разделитель «|||» разделяет услуги. «|» - внутренний разделитель. 1 цифра - ID товара, 2 цифра - ID прайс листа, 3 цифра - количество;
com - текст сообщения или комментарий для выездного заказа, не обязательный параметр;
source - любой текст, обязательный параметр.
Ответ json:
{ "error": 0, "Msg": "%D0%97%D0%B0%D0%BA%D0%B0%D0%B7%20%D0%BF%D1%80%D0%B8%D0%BD%D1%8F%D1%82" }
Промо-код. PromoCode
Команда: PromoCode
Проверка промо-кода. Вернет список рабочих адресов для существующего промо-кода, если они указаны.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: PromoCode={"promo":"123"}
где
promo - проверяемый промо-код.
Строка запроса:
.../api/?PromoCode=%7B%22promo%22%3A%22123%22%7D
Ответ json:
{ "error": 0, "promo_code_id": "10021", "working_address": [ { "id": 1004, "promo_code_id": 10021, "address": "%D0%90%D0%B4%D1%80%D0%B5%D1%81%201" }, { "id": 1005, "promo_code_id": 10021, "address": "%D0%90%D0%B4%D1%80%D0%B5%D1%81%202" } ] }
где
id – ID адреса промо-кода;
promo_code_id – ID промо-кода;
address – адрес промо-кода.
Используемый промо-код. PromoCodeUse
Команда: PromoCodeUse
Вернет используемый текущим клиентом промо-код.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: PromoCodeUse&SessionID=...
Строка запроса:
.../api/?PromoCodeUse&SessionID=...
Ответ json:
{ "error": 0, "promo_code": "123", "discount_extrnl": "%D0%B1%D0%BE%D0%BD%D1%83%D1%81%20400", "discount": "0", "address": "" }
где
promo_code – промо-код клиента;
discount_extrnl - наименование привязанной ВДС (внешней дисконтной схемы) к промо-коду;
discount - скидка ВДС;
address – выбранный адрес используемого промо-кода.
Активация промо-кода. PromoCodeActivate
Команда: PromoCodeActivate
Активирует промо-код клиенту.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: PromoCodeActivate={"PromoCode":"123", "dor_id":"12345"}&SessionID=...
где
PromoCode - активируемый промо-код, обязательный параметр;
dor_id – ID заказа (для проверки кол-ва заказов клиента), необязательный параметр.
Строка запроса:
.../api/?PromoCodeActivate=%7B%22PromoCode%22%3A%22123%22%7D&%7B%22dor_id%22%3A%2212345%22%7D&SessionID=...
Ответ json:
{ "error": 0, "Msg": "%D0%9F%D1%80%D0%BE%D0%BC%D0%BE-%D0%BA%D0%BE%D0%B4%20%D0%B0%D0%BA%D1%82%D0%B8%D0%B2%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD" }
Список изменившихся ID заказов. LastChangeOrder
Команда: LastChangeOrder
Получение списка изменившихся ID заказов.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: LastChangeOrder=&SessionID=
Строка запроса:
.../api/?LastChangeOrder&SessionID=...
Ответ json:
{ "error": 0, "last_orders": [ { "dor_id": "123456", "status_id": "1", "contr_id": "123456789" "cur_sclad_id": "12333" }, { "dor_id": "258963", "status_id": "3", "contr_id": "1234567" "cur_sclad_id": "12334" }, ... ] }
где
last_orders – массив изменившихся заказов:
dor_id – ID заказа;
contr_id – ID клиента;
status_id – статус заказа (1 – новый, 3 – в исполнении, 4 – исполненный, 5 - выданный);
cur_sclad_id – текущий ID склад заказа на момент изменения в заказе.
Подтверждение заказа. OrderConfirm
Команда: OrderConfirm
Подтверждение клиентом заказа. Устаревший вариант, больше не поддерживается.
Обновленная команда OrderAppConfirm.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: OrderConfirm={"dor_id":"12345"}&SessionID=
Строка запроса:
.../api/?OrderConfirm=%7B%22dor_id%22%3A%2212345%22%7D&SessionID=...
где
dor_id - ID заказа, обязательный параметр;
SessionID - ID сессии, обязательный параметр;
Ответ json:
{ "error": 0, "Msg": "%D0%9E%D0%BA" }
где
Msg - сообщение.
Подтверждение заказа. OrderAppConfirm
Команда: OrderAppConfirm
Подтверждение клиентом заказа. Обновленная команда.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: OrderAppConfirm={"dor_id":"12345"}&SessionID=
Строка запроса:
.../api/?OrderAppConfirm=%7B%22dor_id%22%3A%2212345%22%7D&SessionID=...
где
dor_id - ID заказа, обязательный параметр;
SessionID - ID сессии, обязательный параметр;
Ответ json:
{ "error": 0, "Msg": "%D0%97%D0%B0%D0%BA%D0%B0%D0%B7%20%D0%BF%D0%BE%D0%B4%D1%82%D0%B2%D0%B5%D1%80%D0%B6%D0%B4%D0%B5%D0%BD" }
где
Msg - сообщение.
Отмена подтверждения заказа. CancelOrderApp
Команда: CancelOrderApp
Отмена подтверждение клиентом заказа. Обновленная команда.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: CancelOrderApp={"dor_id":"12345"}&SessionID=
Строка запроса:
.../api/?CancelOrderApp=%7B%22dor_id%22%3A%2212345%22%7D&SessionID=...
где
dor_id - ID заказа, обязательный параметр;
SessionID - ID сессии, обязательный параметр;
Ответ json:
{ "error": 0, "Msg": "%D0%97%D0%B0%D0%BA%D0%B0%D0%B7%20%D0%BE%D1%82%D0%BC%D0%B5%D0%BD%D1%91%D0%BD" }
где
Msg - сообщение.
Статус заказа. GetStatusOrder
Команда: GetStatusOrder
Поиск статуса заказа по номеру заказа.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: GetStatusOrder={"doc_num":"12345"}&SessionID=
Строка запроса:
.../api/?GetStatusOrder=%7B%22doc_num%22%3A%2212345%22%7D&SessionID=...
где
doc_num – номер заказа, обязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "Msg": "%D0%98%D1%81%D0%BF%D0%BE%D0%BB%D0%BD%D0%B5%D0%BD%D0%BD%D1%8B%D0%B9", "sclad_to": "123", "status_id": "4" }
где
Msg – статус;
sclad_to – склад приема;
status_id – ID статуса.
Отмена заказа. CancelOrder
Команда: CancelOrder
Перевод статуса заказа в отменённый.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: CancelOrder={"dor_id ":"12345"}&SessionID=
Строка запроса:
.../api/?CancelOrder=%7B%22dor_id %22%3A%2212345%22%7D&SessionID=...
где
dor_id – ID заказа, обязательный параметр;
comment - комментарий, необязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{"error": 0}
Темы обсуждений клиента. TitleMessages
Команда: TitleMessages
Запрос списка тем обсуждений (переписки) по клиенту.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: TitleMessages&SessionID=
Строка запроса:
.../api/?TitleMessages&SessionID=...
где
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "Messages": [ { "id": "1001", "dor_id": "", "doc_num": "", "dttm": "07.09.2017 11:03:50", "comment": "", "user": "1", "star": "0", "message_type": "7", "new_mes_count": "0", "status_message": "0" } ] }
где
id – ID темы сообщения;
dor_id – номер заказ (если привязан по заказу);
doc_num – номер заказа;
dttm – дата/время создания;
comment – главное сообщение темы;
user – признак кому принадлежит сообщение, 1 – клиент, 0 – сотрудник химчистки;
star – оценка (от 1 до 5);
message_type – тип сообщения (1- отзыв, 2 – жалоба, 3 – пожелание, 4 – некорректные данные, 5 - вопрос);
new_mes_count – количество новых сообщений;
status_message – признак что сообщение новое.
Список сообщений темы. MessageList
Команда: MessageList
Список сообщений темы (переписки) клиента.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: MessageList={"id":"123"}&SessionID=
Строка запроса:
.../api/?MessageList=%7B%22id%22%3A%22123%22%7D&SessionID=...
где
id – ID переписки;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "childNode_comments": [ { "id": 124, "dttm": "10.10.2021%2015:47:41", "comment": "%D0%A2%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D0%BE%D0%B5%20%D1%81%D0%BE%D0%BE%D0%B1%D1%89%D0%B5%D0%BD%D0%B8%D0%B5", "user": 1, "status_message": 0 } ] }
где
childNode_comments - массив сообщений темы:
id – ID сообщения;
dttm – дата/время;
comment – текст сообщения;
user – признак кому принадлежит сообщение, 1 – клиент, 0 – сотрудник химчистки;
status_message – признак что сообщение новое.
Количество новых сообщений в теме. CountNewMessages
Команда: CountNewMessages
Количество новых сообщений в теме(переписке).
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: CountNewMessages={"id":"123"}&SessionID=
Строка запроса:
.../api/?CountNewMessages=%7B%22id%22%3A%22123%22%7D&SessionID=...
где
id – ID обсуждения;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "count_new": "2" }
где
count_new – количество новых сообщений оставленных сотрудниками химчистки. Обнулиться после выполнения MessageList.
Отправка сообщения темы. SendMessage
Команда: SendMessage
Отправка сообщения в тему (переписки) или создание новой темы (переписки).
В модуле Агбис.Химчистка сообщение отображается в Сервис - Общение с Клиентами в «Журнал Оперативного общения с клиентами» или в «Сообщения из ЛК»
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Новое сообщение в обсуждении:
Формат запроса: SendMessage={"id":"1001","dttm":"21.12.2021 12:00","mes_type":"3","comment":"Проверка"}&SessionID=
Строка запроса:
.../api/?SendMessage=%7B%22id%22%3A%221001%22,%22dttm%22%3A%2221.12.2021%2012%3A00%22,%22mes_type%22%3A%223%22,%22comment%22%3A%22%D0%9F%D1%80%D0%BE%D0%B2%D0%B5%D1%80%D0%BA%D0%B0%22%7D&SessionID=...
Новое обсуждение(отзыв с оценкой):
Формат запроса: SendMessage={"dttm":"21.12.2021 12:00","mes_type":"1","comment":"Проверка","star": "4"}&SessionID=
Строка запроса:
.../api/?SendMessage=%7B%22dttm%22%3A%2221.12.2021%2012%3A00%22,%22mes_type%22%3A%221%22,%22comment%22%3A%22%D0%9F%D1%80%D0%BE%D0%B2%D0%B5%D1%80%D0%BA%D0%B0%22,%22star%22%3A%20%224%22%7D&SessionID=...
где
dttm – дата/время(формат записи «01.01.2015 12:00»), обязательный параметр;
mes_type – тип сообщения(1 – отзыв, 2 – Жалоба, 3 – Пожелание, 4 - Некорректные данные, 5 – Вопрос), обязательный параметр;
comment – текст, обязательный параметр;
dor_id – ID заказа для создания отзыва о заказе, не обязательный параметр;
id – ID переписки, если новое сообщение в обсуждении или без него, если новое обсуждение, не обязательный параметр;
star – оценка (1 – ужасно, 2 – плохо, 3 – средне, 4 – хорошо, 5 – отлично, по умолчанию 0), не обязательный параметр;
call_back_me – просит перезвонить (0 – нет, 1 – да, по умолчанию 0), не обязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "fl": 0, "id": "123" }
где
fl – признак, что сообщение было создано как новая переписка (0), либо добавлено в существующую (1);
id – ID нового обсуждения, вернется если было создано новое осуждение.
Список акций. GetActionList
Команда: GetActionList
Получение списка акций.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Получение списка акций:
Формат запроса: GetActionList={"act":"1"}&SessionID=
Строка запроса:
.../api/?GetActionList=%7B%22act%22%3A%221%22%7D&SessionID=...
где
Обязательный параметр
act - тип акции (1 – список акций, 2 – картинка акции сертификата), обязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "actions": [ { "action_id": "1003", "act_type_id": "1", "date_begin": "24.04.2018", "date_end": "11.05.2022", "name": "1234", "short_detail": "%D0%BA%D1%80%D0%B0%D1%82%D0%BA%D0%B8%D0%B9%20%D1%82%D0%B5%D0%BA%D1%81%D1%82", "full_detail": "%D0%9F%D0%BE%D1%81%D0%BB%D0%BD%D1%8B%D0%B9%20%D1%82%D0%B5%D0%BA%D1%81%D1%82", "sclads_id": "1,1009,10015" } ] }
где
action_id – ID акции;
act_type_id – тип акции (1 – распродажи, 2 – сертификаты, 3 – пакеты, 4 – бонусные пакеты);
date_begin – дата начала действия акции;
date_end – дата окончания действия акции;
name – наименование акции;
short_detail – краткое описание;
full_detail – полное описание.
Получение картинки акции сертификата:
Формат запроса: GetActionList={"act":"2","action_id":"123"}&SessionID=
Строка запроса:
.../api/?GetActionList=%7B%22act%22%3A%222%22%2C%22action_id%22%3A%22123%22%7D&SessionID=...
где
act - тип акции (1 – список акций, 2 – картинка акции сертификата), обязательный параметр;
action_id – ID акции для act = 2, обязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "actions": [ { "action_id": "1002", "act_type_id": "3", "photo": "" } ] }
где
action_id – ID акции;
act_type_id – тип акции (1 – распродажи, 2 – сертификаты, 3 – пакеты, 4 – бонусные пакеты);
photo – картинка в Base64.
Список сертификатов. Certificate
Команда: Certificate
Получение списка сертификатов.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: Certificate={"id":"123"}&SessionID=
Строка запроса:
.../api/?Certificate=%7B%22id%22%3A%22123%22%7D&SessionID=...
где
id – ID сертификата, обязательный параметр. Если указан, то будет выбран конкретный сертификат;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "certificate": [ { "id": "1002", "name": "%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D1%8B%D0%B9%20%D1%81%D0%B5%D1%80%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%82", "dt_first": "03.05.2018", "dt_last": "03.05.2022", "comments": "", "price": "1800", "lines": [ { "id": "1003", "tov_name": "%D0%91%D0%B5%D1%80%D0%BC%D1%83%D0%B4%D1%8B", "discount": "76,6", "qty": "2", "price_before": "1000", "price_after": "234" } ] } ] }
где
certificate - массив сертификатов:
id – ID сертификата;
name – названия сертификата;
dt_first – дата начала действия;
dt_last – дата окончания действия;
comments – комментарий;
price – стоимость (из активирующей услуги);
lines – массив строк сертификатов (5 первых строк попадают):
id – ID строки сертификата;
tov_name – название услуги;
discount – скидка;
qty – количество;
price_before – цена до применения сертификата;
price_after – цена после применения сертификата.
Список строк сертификатов. CertificateLines
Команда: CertificateLines
Получение списка строк сертификатов.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: CertificateLines ={"id":"123"}&SessionID=
Строка запроса:
.../api/?CertificateLines=%7B%22id%22%3A%22123%22%7D&SessionID=...
где
id – ID сертификата, обязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "certificate_lines": [ { "id": "1003", "tov_name": "%D0%91%D0%B5%D1%80%D0%BC%D1%83%D0%B4%D1%8B", "discount": "76,6", "qty": "2", "price_before": "1000", "price_after": "234" } ] }
где
id – ID строки сертификата;
tov_name – название услуги;
discount – скидка;
qty – количество;
price_before – цена до применения сертификата;
price_after – цена после применения сертификата.
Список активных сертификатов. ActiveCertificates
Команда: ActiveCertificates
Получение списка активных сертификатов клиента.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: ActiveCertificates&SessionID=
Строка запроса:
.../api/?ActiveCertificates&SessionID=...
где
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "active_certificates": [ { "id": "1002", "certificate_id": "1002", "promo_code": "9990000999", "cer_name": "%D1%82%D0%B5%D1%81%D1%82%D0%BE%D0%B2%D1%8B%D0%B9%20%D1%81%D0%B5%D1%80%D1%82%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%82" } ] }
где
id – ID активного сертификата клиента;
certificate_id – ID сертификата;
promo_code – промо-код активного сертификата;
cer_name – название сертификата.
Создание оплаты сертификата. CreatePayCertificate
Команда: CreatePayCertificate
Создание оплаты сертификата на клиента.
При выполнении команды, выбирается активирующая услуга сертификата, создается заказ, в которой будет эта услуга. Увидеть заказ можно через команду Orders.
Оплачивается как обычный заказ на сумму сертификата.
Требуется предварительная настройка сертификата в программе и глобальных опций
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: CreatePayCertificate={"id":"123"}&SessionID=
Строка запроса:
.../api/?CreatePayCertificate=%7B%22id%22%3A%22123%22%7D&SessionID=...
где
id – ID сертификата, обязательный параметр;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "dor_id": "10023", "doc_num": "00012-5" }
где
dor_id – ID заказа, который нужно оплатить;
doc_num – номер заказа, который нужно оплатить.
Рекламные объявления. Advertisment
Команда: Advertisment
Получение списка рекламных объявлений (Акции, Новости, Поздравления, Специальное предложение).
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: Advertisment={"id":"123"}&SessionID=
Строка запроса:
.../api/?Advertisment=%7B%22id%22%3A%22123%22%7D&SessionID=...
где
id – ID объявления (если указано, то вернется конкретное объявление), не обязательный параметр;
type – тип объявления (1 – Новости, 2 – Акция, 3 - Специальное предложение, 4 - Поздравление), не обязательный параметр;
date_first – начало периода, не обязательный параметр;
date_last – конец периода, не обязательный параметр;
not_load_pic – не выгружать картинки (для быстрой обработки команды можно использовать равным 1, и в ответ не будут добавляться картинки. По-умолчанию 0), не обязательный параметр;
По умолчанию будут возвращены все объявления, которые действуют на сегодняшний день
Ответ json:
{ "error": 0, "advertisments": [ { "id": "10015", "type": "1", "description": "%D0%9D%D0%BE%D0%B2%D0%BE%D1%81%D1%82%D1%8C%201", "mes": "%D0%9D%D0%BE%D0%B2%D0%BE%D1%81%D1%82%D1%8C%201", "sub_mes": "%D0%9D%D0%BE%D0%B2%D0%BE%D1%81%D1%82%D1%8C%201", "barcode": "0", "img": [ { "adv_id": "10015", "path": "img1.gif", "img64": "" } ] } ] }
где
advertisments – массив объявлений:
id – ID объявления;
type – тип;
description – описание;
mes – текст в формате HTML (кодированный encodeURIComponent);
sub_mes – дополнительный текст;
barcode – штрихкод;
img – массив картинок:
adv_id – ID объявления, которому принадлежит картинка;
path – название картинки (по этому параметру, можно найти к какому тегу «img» в HTML принадлежит эта картинка);
img64 – картинка (картинка кодирована в строку Base64).
Картинки рекламных объявлений. AdvertismentImg
Команда: AdvertismentImg
Вернет все картинки, которые есть в объявлении.
Метод отправки: GET
Заголовок запроса (Header): не требуется.
Формат запроса: AdvertismentImg={"id":"123"}&SessionID=
Строка запроса:
.../api/?AdvertismentImg=%7B%22id%22%3A%22123%22%7D&SessionID=...
где
id – ID объявления (если указано, то вернется конкретное объявление), обязательный параметр;
Ответ json:
{ "error": 0, "advertisments_img": [ { "adv_id": "10015", "path": "img1.gif", "img64": "" } ] }
где
adv_id – ID объявления, которому принадлежит картинка;
path – название картинки (по этому параметру, можно найти к какому тегу «img» в HTML принадлежит эта картинка);
img64 – картинка (картинка кодирована в строку Base64).
Устаревшие команды
В данном разделе находятся уже устаревшие команды, но еще работающие.
Через несколько лет они будут удалены.
Для избежания поломки уже интегрированных устаревших команд, рекомендуется сделать переход на соответствующую актуальную команду.
Фотографии заказа. OrderImages
Команда: OrderImages
Фотографии заказа.
Метод отправки: GET
Формат запроса: OrderImages={"dor_id":"12345"}&SessionID=
Строка запроса:
.../api/?OrderImages=%7B%22dor_id%22:%2212345%22%7D&SessionID=...
где
dor_id – ID заказа;
SessionID - ID сессии, обязательный параметр.
Ответ json:
{ "error": 0, "img": [ ] }
где
img – массив строк картинок в Base64.
Список команд
Команда | Описание |
AddressContr | Получение списка адресов клиента. Параметры команды отсутствуют. Обязательный параметр «SessionID». Задаются в карточке клиента. Пример: //www.himinfo.ru/cl/{Path}/api/?AddressContr&SessionID= Ответ в json формате: {«error»: 0, «address_contr»: [{«id»: «40», «city_id»: «2», «street»: »%D1%82%D0%B5%D1%81%D1%82«, «house»: »%D1%82%D0%B5%D1%81%D1%82«, «housing»: »%D1%82%D0%B5%D1%81%D1%82«, «room»: »%D1%82%D0%B5%D1%81%D1%82«, «office»: »%D1%82%D0%B5%D1%81%D1%82«, «com»: »%D1%82%D0%B5%D1%81%D1%82«}]} где id – ID адреса, city_id – город, street – удлица, house – дом, housing – корпус, room – квартира, office – офис, com – комментарий. |
ActionOverAddressContr | Изменение адресов клиента. Обязательный параметр команды «type» - тип операции, принимает значения «add» - добавить новый адрес, «change» - изменить текущий адрес, «del» - удалить текущий адрес. Обязательный параметр: «city_id» - город Необязательные параметры «id» - при удалении и изменении указывает, какой адрес используется, , «street» - улица, «house» - дом, «housing» - корпус, «room» - квартира, «office» - офис, «comment» - комментарий. Обязательный параметр «SessionID». «source» не обязательный параметр, любой текст. Пример: //www.himinfo.ru/cl/{Path}/api/?ActionOverAddressContr={«type»: «add», «city_id»: »«, «street»: »«, «house»: »«, «housing»: »«, «room»: »«, «office»: »«, «comment»: »«}&SessionID= |
CityContr | Список городов. Устаревшая команда. Пример: //www.himinfo.ru/cl/{Path}/api/?CityContr Ответ в json формате: {«error»: 0, «city»: [{«id»: «1», «city»: «Moscow»}]} |
LastOrders | Список заказов за день. Обязательные параметры команды «SessionID». Пример: //www.himinfo.ru/cl/{Path}/api/?LastOrders={«inc »: «5», «part»: «day»}&SessionID= Ответ в json формате: {«error»: 0, «last_orders»: [{«dor_id»: «157105», «contr_id»: «44381»},{«dor_id»: «157106», «contr_id»: «44381»}]} где «dor_id» – ID заказа, «contr_id» – ID клиента. |
AddCallInPlan | Добавить звонок в журнал запланированных вызовов (Агбис Колцентр) Пример добавления запланированного звонка: //www.himinfo.ru/cl/{Path}/api/?AddCallInPlan={«contr_id»:«1»,”phone”:”1”,”comment”:”1”} Ответ в json формате: {«error»:0} где contr_id – вн. номер контрагента; phone – номер телефона; comment – комментарий; |
AddFamily | Изменить головную организацию у клиента, Пример: //www.himinfo.ru/cl/{Path}/api/?AddFamilia= {«only_reg»:«1»,»only_one«:«1»,»not_change«:«1»,»not_parent«:«1»,»phone«:«12345”}&SessionID=1 Ответ в json формате: {«error»:0,»Msg»:””,«result_number»:«»} где only_reg – если 1 то ищем клиента среди ранее зарегистрированных, если 0 – то по базе всех клиентов; only_one – если 1 то клиент который добавляет к себе в семью не должен быть головной организацией у других клиентов; not_change – если 1 то мы не изменяем головную организацию у клиента, которого нашли, если у него уже кто то есть в качестве головной организации (т.е. мы не меняем головную организацию у клиента); not_parent – если 1 то у клиента который добавляет к себе в семью не должно быть указана другой головной организации; result_number=1 – не прошли проверку only_one result_number=2 – не прошли проверку not_parent result_number=3 – не нашли клиента в базе вообще, в этом случае выполняется процедура в базе данных SP_NOTIFY_AFTER_ADDFAMILY у которой в качестве входных параметров: ID контрагента который хотел добавить члена семьи и номер телефона который он добавлял (процедуру можно использовать чтобы запомнить кто кого искал) result_number=4 – не прошли проверку not_change |