Изменения

Перейти к: навигация, поиск

API

183 байта убрано, 11:52, 20 апреля 2022
м
Передача только изменившихся статусов
=== Передача только изменившихся статусов ===
В нашем API предусмотрено очень удобное средство получения статусов всех заказов, без необходимости "бомбить" «бомбить» сервер запросами статусов по каждому заказу. Работает это так: раз в какое-то время, например, в 10 минут, вы посылаете запрос "А покажите «покажите все изменившиеся статусы"статусы». Пример запроса ниже. Система вам отдает ВСЕ заказы, статусы (или некоторые другие поля, см . ниже) которых изменились с момента последнего запроса. Вы разбираете полученный документ, по каждому заказу сохраняете его актуальный статус в своей системе, и если все хорошо, у вас все получилось, ваша система неожиданно не упала от наплыва информации, посылаете нам запрос подтверждения получения статусов (commitlaststatus). Мы у себя отмечаем, что эти статусы вами получены, и их не надо передавать повторно. Т.о. Таким образом, сколько бы заказов у вас не ни было, статусы по ним всем почти в реальном времени вы можете получать всего 2-мя двумя запросами.
Для получения только изменившихся статусов отправьте запрос:
<source lang="xml">
<?xml version="1.0" encoding="UTF-8" ?>
</source>
Система выдает все заказы, в которых, с момента последнего запроса в этом режиме, изменилось хотя бы одно из полей:
orderno
status
price
После успешной обработки ответа необходимо отметить полученные статусы успешно полученными, отправив запрос:
<source lang="xml">
<?xml version="1.0" encoding="UTF-8" ?>
'''Описание полей запроса'''
*'''auth''' - Авторизация — авторизация. Обязательный элемент.*'''streamid''' - Идентификатор  — идентификатор потока. Если у вас несколько интеграций и каждая нуждается в получении статусов, вы можете передавать данный параметр и тем самым разделять получение и отметку об успешном получении статусов по заказам. Значение должно входить в промежуток от 100 до 10000, включительно. Необязательный элемент. *'''client''' - Признак  — признак клиента или агента. Необязательный элемент.:* CLIENT - Признак CLIENT — признак клиента, значение по умолчанию:* AGENT - Признак AGENT — признак агента. В ответ отдается информация по заказам, переданным агенту на доставку
В случае успеха Вы вы получите ответ :
<source lang="xml">
<?xml version="1.0" encoding="UTF-8" ?>
</source>
Данный Такой способ передачи статусов гарантирует полную корректную передачу статусов, даже в случае, если в нашей системе статус изменился в промежутке времени между запросом статусов и подтверждением их получения. Если система не получила подтверждение успешной передачи статуса, она будет считать информацию не переданной, непереданной и выдаст ее при повторном запросе.
<div style="color: #a94442; background-color: #f2dede; border: 1px solid #ebccd1; padding: 3px 10px 10px;">
'''Обратите внимание!''' # При данном этом способе передачи (<changes>ONLY_LAST</changes>) система просматривает заказы, оформленные за последние 3 месяца. Если заказ сделан ранее - , изменение статуса по нему не попадет в результат выполнения данного запроса.# Система всегда выдает текущий статус. Т.е. Вы можете одним запросом получить статус "NEW"«NEW», а следующим - "COMPLETE"следующим — «COMPLETE». В промежутке между Между запросами отправление могло пройти через несколько промежуточных статусов. Если нужна гарантия получения всех промежуточных статусов, нужно анализировать блок statushistory (может не заполняться в следствии вследствие ограничений версии или тарифа конкретной службы доставки).# Система никогда не гарантирует последовательность прохождения заказом набора статусов. Т.е. Вы можете получить статус "COMPLETE"«COMPLETE», а следующим запросом - "NEW" - «NEW» — такое может произойти, например, если оператор ошибочно отметил заказ выполненным, а затем исправил ошибку.
</div>
<br />
== Трекинг заказа по номеру ==

Навигация