Запрос getScheduleByAOCOnDate
Для получения расписания распределительного цента (области контроля) на определенную дату API использует структуру application/x-www-form-urlencoded и HTTP метод POST
Входные данные запроса getScheduleByAOCOnDate
Входные данные должны отправляться как атрибуты и не должны находиться в теле запроса. Список всех поддерживаемых атрибутов представлен ниже.
# | Название атрибута | Тип | Стиль | Обязательность | Описание |
1 | sessionID | Текст |
| Да | Идентификатор сессии, полученный от сервера после запроса авторизации. Срок жизни сессии – 5 минут. Если в течении этого времени в рамках сессии были проведены запросы, то срок жизни сессии увеличивается еще на 5 минут |
2 | date | Дата | Query | Да | Запрашиваемая дата. Формат зависит от локализации в конфигурации аккаунта. Например, для Англии формат – “DD/MM/YYYY”. Для России – “ДД.MM.ГГГГ” |
3 | aocID | Целое число | Query | Да | Идентификатор распределительного центра в приложении |
Пример запроса getScheduleByAOCOnDate
Заголовки:
URL: /rest/2/distribution-api/schedules/getScheduleByAOCOnDate?sessionID=8aa519d2c0af4f37a27a42a995528199&date=28/01/2014&aocID=101
Метод: POST
Структура: application/x-www-form-urlencoded
Тело запроса: не должно содержать никакой информации
Ответ getScheduleByAOCOnDate
Для получения расписания API использует структуру application/xml как структуры ответа
Выходные данные ответа getScheduleByAOCOnDate
# | Название поля | Описание |
1 | scheduleResponse |
|
1.1 | units |
|
| Атрибут “timeZone” | Часовой пояс аккаунта |
| Атрибут “currency” | Валюта аккаунта |
| Атрибут “distanceUnits” | Единицы измерения расстояния аккаунта |
| Атрибут “durationUnits” | Единицы измерения времени аккаунта |
| Атрибут “weightUnits” | Единицы измерения веса аккаунта |
1.2 | vehicles |
|
1.2.1 | vehicle |
|
| Атрибут “id” | Идентификатор машины в аккаунте, который может быть использован в дальнейших вопросах |
| Атрибут “name” | Имя машины |
| Атрибут “driverName” | Имя водителя |
| Атрибут “driverPhone” | Контактный телефон водителя |
| Атрибут “costByDistance” | Стоимость за милю/километр, значение зависит от единиц выбранных в «currency» |
| Атрибут “maxWeight” | Грузоподъемность транспортного средства, значение зависит от единиц, выбранных в “weightUnits” |
| Атрибут “aocId” | Идентификатор распределительного центра, которому принадлежит машина |
1.2.1.1 | run |
|
| Атрибут “runDay” | Дата поездки |
| Атрибут “runNumber” | Номер поездки |
| Атрибут “planDistance” | Планируемая дистанция поездки |
| Атрибут “planDuration” | Планируемая продолжительность поездки |
| Атрибут “runStartTime” | Планируемое время начала поездки |
| Атрибут “runEndTime” | Планируемое время окончания поездки |
| Атрибут “availabilityStartTime” | Время начала доступности водителя |
| Атрибут “availabilityEndTime” | Время окончания доступности водителя |
| Атрибут “planWeight” | Общий вез заказов в поездке |
| Атрибут “cost” | Стоимость поездки. Стоимость = ((стоимость за час) * (продолжительность в часах)) + ((стоимость за километр) * (дистанция поездки)) |
1.2.1.1.1 | location |
|
| Атрибут “number” | Порядковый номер расположения клиента в рейсе. Возможен только для locationType=DROP |
| Атрибут “locationType” | Тип расположения клиента. Возможные значения
|
| Атрибут “name” | Название расположения клиента |
| Атрибут “address” | Адрес расположения клиента |
| Атрибут “latitude” | Координаты широты расположения клиента |
| Атрибут “longitude” | Координаты долготы расположения клиента |
| Атрибут “planArrivalTime” | Планируемое время прибытия в расположение клиента |
| Атрибут “planDepartureTime” | Планируемое время отправления от клиента |
| Атрибут “factArrivalTime” | Фактическое время прибытия к клиенту |
| Атрибут “factDepartureTime” | Фактическое время отправления от клиента |
Атрибут "mileage" | Плановое расстояние до заказа. Выводится в зависимости от настроек аккаунта - в милях или километрах. | |
1.2.1.1.1.1 | order |
|
| Атрибут “orderReference” | Название заказа/Идентификатор |
| Атрибут “status” | Статус заказа. Возможные значения описаны в Приложении 3. |
| Атрибут “task” | Признак вида заказа. Возможные значения:
|
| Атрибут “duration” | Продолжительность разгрузки/погрузки у клиента |
| Атрибут “weight” | Первая единица измерения заказа, конфигурируется для каждого аккаунта отдельно. По умолчанию - Вес заказа |
| Атрибут “<dynamic_attribute_name>” | Данный метод позволяет получить значения дополнительных полей для заказов. Данные поля добавляются отдельно дл каждого конкретного аккаунта. <dynamic_attribute_name> - название дополнительно сконфигурированного для аккаунта поля заказа. |
Пример ответа getScheduleByAOCOnDate
<apiResponse version=”1.0”>
<scheduleResponse>
<units timeZone=”Greenwich Mean Time” timeZoneOffset="GMT+0:00" currency=”POUND” distanceUnits=”MILE” speedUnits="MILES_PER_HOUR" durationUnits=”MINUTE” weightUnits=”units” volumeUnits="m3"/>
<vehicles>
<vehicle id=”8930” name=”Kamaz” driverName=”Ivanov” costByDistance=”0.14” maxWeight=”1050” maxVolume="0" aocId=”190”>
<run runDay=”07/04/2015” runNumber=”1” planDistance=”810.6” planDuration=”1059” runStartTime=”07/04/2015 14:11” runEndTime=”08/04/2015 07:50” availabilityStartTime=”07/04/2015 00:00” availabilityEndTime=”07/04/2015 23:59” planWeight=”0” planVolume="0" cost=”298.88”>
<location locationType=”PICKUP” name=”ChippenhamZone” address=”Chippenham” latitude=”51.454212” longitude=”-2.149324” planArrivalTime=”07/04/2015 14:11” planDepartureTime=”07/04/2015 14:21” factArrivalTime=”07/04/2015 15:09” factDepartureTime=”07/04/2015 15:09” mileage="0"/>
<location number=”1” locationType=”DROP” name=”AARONS PETS LTD-BS48 1TA” address=”121 STATION ROAD,NAILSEA,NORTH SOMERSET,, BS48 1TA” latitude=”51.432906” longitude=”-2.758508” planArrivalTime=”07/04/2015 15:32” planDepartureTime=”07/04/2015 15:42” factArrivalTime=”07/04/2015 15:09” factDepartureTime=”07/04/2015 15:09” mileage="32.4">
<order orderReference=”mID1228845” status=”ALLOCATED” task=”DROP” duration=”10000” weight=”0” volume=""/>
</location>
<location number=”2” locationType=”DROP” name=”ABBEY PET SHOP-DD10 8JY” address=”52 MURRAY STREET,MONTROSE,SCOTLAND, DD10 8JY” latitude=”56.714949” longitude=”-2.467688” planArrivalTime=”08/04/2015 00:07” planDepartureTime=”08/04/2015 00:17” factArrivalTime=”08/04/2015 15:09” factDepartureTime=”08/04/2015 15:09” mileage="457">
<order orderReference=”mID1228892” status=”ALLOCATED” task=”DROP” duration=”10000” weight=”0” volume=""/>
</location>
<location locationType=”BACK_TO_HOME” name=”Derwent, Hope Valley, England, S33 0, GB” address=”Derwent, Hope Valley, England, S33 0, GB” latitude=”53.399707” longitude=”-1.724854” planArrivalTime=”08/04/2015 07:50” factArrivalTime=”08/04/2015 15:09” factDepartureTime=”08/04/2015 15:09” mileage="457"/>
</run>
</vehicle>
</vehicles>
</scheduleResponse>
</apiResponse>