Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Данный метод используется для отправки зафиксированных рейсов в Максоптру с целью автоматизации ежедневных процессов. Для отправки расписаний API использует структуру application/xml и HTTP-метод POST.

Данный метот можно применять ко множеству рейсов. How many runs at a time max?

Входные данные запроса send 

#

Название атрибута

Тип

Обязательность

Описание

1sessionIDТекстДаИдентификатор сессии, полученный от сервера после запроса авторизации.

2

date

ДатаДаДата, на которую назначен(ы) рейс(ы).
3vehicleExternalIDТекстНетЕсли указан, то отошлются только рейсы, назначенные на данную машину.
4driverExternalIDТекстНетЕсли указан, то отошлются только рейсы, назначенные на данного водителя.
5dcNameТекстНетЕсли указан, то отошлются только рейсы для данного РЦ.
6runNumberЧислоНетЕсли указан, то отошлется только выбранный рейс.

Примечание В запросе достаточно указать один необязательный атрибут. Указание сразу нескольких атрибутов приводит к избыточности, и система отреагирует на это ошибкой (1020 "Redundant parameters" - Избыточные параметры). См. перечень возможных ошибок ниже.


Пример запроса send

Заголовки:

Метод: POST

URL: [account-name].maxoptra.com/rest/2/distribution-api/schedules/send?sessionID=ff58060757da43a7b94f2b341fec172e&dcName=London

Структура: application/x-www-form-urlencoded

Тело запроса: не должно содержать никакой информации


Ответ запроса send 

#

Название поля

Описание

1sendResponse
1.1sendResult

Ответ включает следующую информацию об отправленных рейсах:

  • vehicleExternalID - внешний идентификатор машины, на которую запланирован рейс
  • driverExternalID - внешний идентификатор водителя, на которого запланирован рейс
  • runNumber - номер рейса

Он также включает в себя результаты попытки отправки рейса:

  • SUCCESS - рейс был успешно отправлен
  • WAS_ALREADY_SENT - рейс был уже отправлен ранее
  • NOT_LOCKED_YET - рейс не зафиксирован, и потому не отправлен
  • ERROR - рейс не может быть отправлен по какой-то причине (см. перечень ошибок ниже).
  • FAILED - если отдельный рейс по какой-то причине не может быть отправлен, подробности должны быть указаны в разделе errorMessage


Пример ответа send

<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<apiResponse version="1.0">
<sendResponse>
<sendResult> vehicleExternalID="машина1" driverExternalID="водитель1" runNumber="1">SUCCESS</sendResult>
<sendResult vehicleExternalID="машина1" driverExternalID="водитель1" runNumber="2">WAS_ALREADY_SENT</sendResult>
<sendResult vehicleExternalID="машина1" driverExternalID="водитель1" runNumber="3">NOT_LOCKED_YET</sendResult>
</sendResponse>
</apiResponse>



Возможные ошибки

Ошибка

Описание

Описание
1009Invalid or unknown session IDНедействительный или неизвестный идентификатор сессии
1013Date in incorrect formatНекорректный формат даты
1014Expected parameter not providedОжидаемый параметр не представлен
1015Internal service errorВнутренняя ошибка
1020Redundant parametersИзбыточные параметры
1202Area of control not foundНе найдены распределительные центры
1206Performer not foundВодитель не найден
1304Vehicle is not foundМашина не найдена


Пример ошибки 

<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<apiResponse version="1.0">
<error>
<errorCode>1015</errorCode>
<errorMessage>
<![CDATA["Internal Service Error"]]>
</errorMessage>
</error>
</apiResponse>