Versions Compared

Key

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

запрос importPerformers

Запрос используется для импорта водителей (Performers) в систему. Для импорта водителей по API используется структура application/xml и HTTP-метод POST.

...

URL: /rest/2/distribution-api/objects/importPerformers

 


Список поддерживаемых атрибутов:

Название поляТипДлинаОбязательноеОписание
1performer
   



Блок информации о водителе
1.1

externalId

Текст255НетВнешний идентификатор водителя.
1.2login Текст255ДаЛогин водителя для входа в систему. Логин должен быть уникальным для каждого водителя.
1.3password  Текст255ДаПароль пароль для входа в систему
1.4nameТекст255ДаИмя водителя
1.5emailТекст255ДаАдрес электронной почты водителя
1.6phoneТекст255НетНомер телефона водителя
1.7commentsТекст255НетДополнительная информация о водителе
1.8priceForOneHourЧисло255ДаСтоимость одного часа работы
1.9breakShiftЧисло255ДаВеличина на которую обед может быть автоматически сдвинут при составлении маршрута. Данный параметр обязателен только если аккаунт настроен на работу со статическими обедами.
1.10areaOfControlТекст255ДаНаименование распределительного центра, которому принадлежит водитель
1.11

allowDailyDrivingLimit

Логическийtrue / falseНет

Признак использования для данного водителя индивидуальных настроек максимально допустимой длительности вождения, возможные значения:

  • 1 (иcпользуется)
  • 0 (не используется)
1.12

dailyDrivingLimit

Число[1;4320]НетМаксимально допустимая длительность вождения в минутах
1.13

allowDailyWorkingLimit

Логическийtrue / falseНет

Признак использования для данного водителя индивидуальных настроек максимально допустимой продолжительности работы, возможные значения:

  • 1 (иcпользуется)
  • 0 (не используется )
1.14

dailyWorkingLimit

Число[1;4320]НетМаксимально допустимая длительность рабочего дня за смену в минутах
1.15

scheduleZonesId

Число255НетИдентификатор территории планирования, которую может обслуживать данный водитель
2availability
  


ДаБлок информации о графике работы водителя
2.1weekDayТекст255ДаДень работы. Возможные значения: sunday, monday, tuesday, wednesday, thursday, friday, saturday
2.2fromВремя[00:00;23:59]ДаВремя начала рабочего дня водителя: с ... часов
2.3toВремя[00:00;23:59]ДаВремя окончания рабочего дня водителя: до ... часов
2.4startDayShift Число255Нет

День начала рабочей смены относительно заданного в атрибуте “weekDay” дня недели. Возможные значения:

  • -1 (предыдущий день)
  • 0 (текущий день)
  • если не задан, то считается что выбран текущий день.
2.5endDayShiftЧисло255Нет

День окончания рабочей смены относительно заданного в атрибуте “weekDay” дня недели. Возможные значения:

  • 0 (текущий день)
  • 1 (следующий день)
  • 2 (день после следующего)
  • если не задан, то считается что выбран текущий день.
2.6breakFrom   Число[00:00;23:59]Да*Время начала обеда. Данный параметр обязателен только, если аккаунт настроен на работу со статическими обедами. Данный параметр обязателен, если заполнен параметр “breakTo”. Означает - Обед с ...
2.7breakTo     Число[00:00;23:59]Да*Время окончания обеда. Данный параметр обязателен только, если аккаунт настроен на работу со статическими обедами. Данный параметр обязателен, если заполнен параметр “breakFrom”. Означает - Обед до ...
2.8fixedDayStart 
 

[0;1]НетФиксированное начало рабочего дня
3zone
  


НетБлок, в котором указывается территория, в которой может работать водитель
3.1nameТекст255НетНазвание территории
4startLocation
 

255НетБлок информации об адресе начала рабочего дня. Если start location не используются, не заполнять данный блок.
4.1addressТекст255ДаАдрес начала рабочего дня.
4.2latitudeЧисло[-90;90]НетДолгота
4.3longitude Число[-180;180]НетШирота
4.4onlyWithDeliveriesЛогическийtrue/falseНетFalse является эквивалентом значения Посетить перед первой Доставкой в форме водителя . False используется по умолчанию.
5homeLocation
  


НетБлок информации об адресе возврата в конце дня. Если home location не используются, не заполнять данный блок.
5.1addressТекст255ДаАдрес возврата в конце дня.
5.2latitudeЧисло[-90;90]НетДолгота
5.3longitude Число[-180;180]НетШирота
5.4onlyWithCollectionsЛогическийtrue/falseНетFalse является эквивалентом значения Посетить после последнего сбора в форме водителя . False используется по умолчанию.
5.5endDayOnLastOrderЛогическийtrue/falseНетИспользуется, если маршрут заканчивается на последнем заказе. False используется по умолчанию. Если не указан адрес возврата в конце дня (address), маршрут закончится в распределительном центре (areaOfControl).

 Значение полей dailyDrivingLimit и dailyDrivingLimit имеют смысл только при наличии включенных полей allowDailyDrivingLimit и allowDailyWorkingLimit соответственно 


Пример (перечислены все доступные поля):

Code Block
languagexml
<?xml version="1.0" encoding="UTF-8"?>
<apiRequest>
   <sessionID>6345e0588e384fc4acc3a2e63e9a4d39</sessionID>
   <performersDetails>
      <units />
      <performers>
         <performer name="Водитель Иванов" phone="555-437-82" email="ivanov_magenta_voditel@gmail.com" login="Driver_API_3782387121" password="123456" comments="Высокий, носит очки." priceForOneHour="10.5" breakShift="30" dailyDrivingLimit="720" allowDailyDrivingLimit="1" dailyWorkingLimit="720" allowDailyWorkingLimit="1" areaOfControl="chippenhamzone" scheduleZonesId="71" externalId="1234567890qwerty">
            <startLocation address="10 Bishops Park Road, London, SW6 6DZ" latitude="" longitude="" />
            <homeLocation address="Drake Crescent, Chippenham, Wiltshire, SN14, GB" latitude="51.453891" longitude="-2.148895" />
            <availabilities>
               <availability weekDay="monday" from="05:00" to="19:00" breakFrom="10:00" endDayShift="0" breakTo="10:45" />
               <availability weekDay="thursday" from="04:30" to="19:00" breakFrom="10:00" breakTo="10:45" />
               <availability weekDay="friday" from="06:30" to="19:00" breakFrom="10:00" breakTo="10:45" />
               <availability weekDay="saturday" from="05:00" to="19:00" breakFrom="10:00" breakTo="10:45" />
               <availability weekDay="sunday" from="05:00" to="19:00" breakFrom="10:00" breakTo="10:45" />
            </availabilities>
            <zones>
               <zone name="Center" />
            </zones>
         </performer>
      </performers>
   </performersDetails>
</apiRequest>

 


Ответ при успешном импорте:

Code Block
languagexml
<?xml version="1.0" encoding="UTF-8"?>
<apiResponse version="1.0">
   <performers>
      <performer>
         <name>Водитель Иванов</name>
         <login>Driver_API_3782387121</login>
      </performer>
   </performers>
</apiResponse>

 


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

 

причина

ошибка

1

При указании некорректного sessionID

1009 - "Provided credentials are invalid"

2

При отсутствии обязательного параметра

1230 - "Parameter is required: %name%", name – имя отсуствующего параметра

3

При некорректном вводе email

1232 - "Invalid value for e-mail: %wrongname%"

4

При вводе некорректных значений

1107 - "Field type is incorrect: %name% = %valuename%. Expected %expectedtype% type"

5

При вводе несуществующего DC

1203 - "Area Of Control was not found"

6

При запросе к DC, на которое у пользователя нет прав

1019 - "User with provided credentials doesn't have AoC access or AoC doesn't exist"

7

При отсутствии одного из полей breakFrom или breakTo, когда одно из них задано

1231 - "Invalid value for break, both values breakFrom and breakTo are required"

8

Пустое значение password при редактировании водителя

1233 - "The value for password is empty"

9Водитель и депо принадлежат разным территориям1217 - "Invalid value for scheduleZonesString"
10В случае не корректного сочетания начальной и конечной точки маршрута1317 - "Invalid parameters in start\end point sections"