Запрос 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” | Единицы измерения веса аккаунта |
Атрибут "volumeUnits" | Единицы измерения объема аккаунта | |
1.2 | vehicles |
|
1.2.1 | vehicle |
|
| Атрибут “id” | Идентификатор машины в аккаунте, который может быть использован в дальнейших вопросах |
| Атрибут “name” | Имя машины |
| Атрибут “driverName” | Имя водителя |
Атрибут "driverExternalID" | Внешний идентификатор водителя | |
| Атрибут “driverPhone” | Контактный телефон водителя |
| Атрибут “costByDistance” | Стоимость за милю/километр, значение зависит от единиц выбранных в «currency» |
| Атрибут “maxWeight” | Грузоподъемность транспортного средства, значение зависит от единиц, выбранных в “weightUnits” |
Атрибут "maxVolume" | Максимальная вместимость (объем) транспортного средства, значение зависит от единиц, выбранных в "volumeUnits" | |
| Атрибут “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" | Плановое расстояние до заказа. Выводится в зависимости от настроек аккаунта - в милях или километрах. | |
Атрибут "factMileage" | Фактический пробег (измеряется в милях или километрах в зависимости от настроек аккаунта) | |
Атрибут "factDuration" | Фактическое время вождения в минутах | |
1.2.1.1.1.1 | order |
|
| Атрибут “orderReference” | Название заказа/Идентификатор |
| Атрибут “status” | Статус заказа. Возможные значения описаны в Приложении 3. |
| Атрибут “task” | Признак вида заказа. Возможные значения:
|
| Атрибут “duration” | Продолжительность разгрузки / погрузки у клиента |
| Атрибут “weight” | Первая единица измерения заказа, конфигурируется для каждого аккаунта отдельно. По умолчанию - Вес заказа |
| Атрибут “<dynamic_attribute_name>” | Данный метод позволяет получить значения дополнительных полей для заказов. Данные поля добавляются отдельно для каждого конкретного аккаунта. <dynamic_attribute_name> - название дополнительно сконфигурированного для аккаунта поля заказа. |
Пример ответа getScheduleByAOCOnDate
<?xml version="1.0" encoding="UTF-8"?> <apiResponse version="1.0"> <scheduleResponse> <units timeZone="GMT+06:00" timeZoneOffset="GMT+6:00" currency="ROUBLE" distanceUnits="KILOMETRE" speedUnits="KILOMETERS_PER_HOUR" durationUnits="MINUTE" weightUnits="кг" volumeUnits="m3" /> <vehicles> <vehicle id="8930" name="Kamaz" driverName="Ivanov" driverExternalId="1234567890йцукен2qwerty" costByDistance="0.14" maxWeight="1050" maxVolume="0" aocId="190"> <run runDay="24.04.2015" runNumber="1" planDistance="810.6" planDuration="1059" runStartTime="24.04.2015 14:11" runEndTime="25.04.2015 07:50" availabilityStartTime="24.04.2015 00:00" availabilityEndTime="24.04.2015 23:59" planWeight="0" planVolume="0" cost="298.88"> <location locationType="PICKUP" name="ChippenhamZone" address="Chippenham, SN14 0XH, UK" latitude="51.454212" longitude="-2.149324" planArrivalTime="24.04.2015 14:11" planDepartureTime="24.04.2015 14:21" factArrivalTime="24.04.2015 15:09" factDepartureTime="24.04.2015 15:09" mileage="0" factMileage="" factDuration="" /> <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="24.04.2015 15:32" planDepartureTime="24.04.2015 15:42" factArrivalTime="24.04.2015 15:09" factDepartureTime="24.04.2015 15:09" mileage="32.4" factMileage="" factDuration=""> <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="25.04.2015 00:07" planDepartureTime="25.04.2015 00:17" factArrivalTime="25.04.2015 15:09" factDepartureTime="25.04.2015 15:09" mileage="457" factMileage="8" factDuration="7"> <order orderReference="mID1228892" status="ALLOCATED" task="DROP" duration="10000" weight="0" volume="" dynamic_attribute1="100" /> </location> <location locationType="BACK_TO_HOME" name="ChippenhamZone" address="Chippenham, SN14 0XH, UK" latitude="51.454212" longitude="-2.149324" planArrivalTime="25.04.2015 09:19" mileage="1.9" factMileage="12" factDuration="17" /> </run> </vehicle> </vehicles> </scheduleResponse> </apiResponse>