Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 3 Next »

Импорт водителей

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


Все возможные атрибуты для performer:

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

externalId

НетИдентификатор
login ДаЛогин. По нему ищем водителя при апдейте
password  ДаПароль. Обязателен для нового водителя.
nameДаИмя
emailДаАдрес электронной почты
phoneНетНомер телефона
commentsНетКомментарии
priceForOneHourДаСтоимость одного часа
breakShiftДаОбязательно, если включены фиксированные обеды. Сдвиг обеда
areaOfControlДаРаспределительный центр

allowDailyDrivingLimit

Нет 

dailyDrivingLimit

Нет 

allowDailyWorkingLimit

НетПродолжительность работы в смену

dailyWorkingLimit

НетВремя вождения в смену

scheduleZonesId

НетИдентификатор территории

 

Все возможные атрибуты для availability:


Наименование поляОбязательныйОписание
weekDay (sunday, monday, tuesday, wednesday, thursday, friday, saturday)ДаОбязательный в теге availability. День работы
fromДаОбязательный в теге availability. Означает: работать с (значения - этот день, предыдущий день)
toДаОбязательный в теге availability. Означает: работать до (значения - этот день, следующий, послезавтра)
startDayShift Нет

Значение 0 или -1, если не задан - считается что текущий день.

-1: предыдущий день

0:  текущий день

endDayShift Нет

Значение 0 или 1 или 2, если не задан - считается что текущий день

0:  текущий день

1: следующий день

2: плюс два дня

breakFrom   ДаОбязательный при указании breakTo. Означает - Обед с
breakTo     ДаОбязательный при указании breakFrom. Означает - Обед до

fixedDayStart 

НетФиксированное начало рабочего дня

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


Все возможные атрибуты для home location (если home location не используются, не заполнять данный блок)

Наименование поляОбязательныйОписание
name Имя локации
address Адрес локации
latitude  Долгота
longitude  Широта


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

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>

    <apiRequest>

        <sessionID>6345e0588e384fc4acc3a2e63e9a4d39</sessionID >

              <performersDetails>

      <units timeZone="Greenwich Mean Time" timeZoneOffset="GMT+0:00" currency="POUND" distanceUnits="MILE" speedUnits="MILES_PER_HOUR" durationUnits="MINUTE" weightUnits="Kg" volumeUnits="m3"/>

           <performers>                   

           <performer name="Driver_API_3782387phone="00000" email="Driver_API_3782387@gmail.com"

           login="Driver_API_3782387121" password="mam" comments = "test comment AP_Driver_API_3782387I" 

           priceForOneHour = "10.5" breakShift="30"

           dailyDrivingLimit="720" allowDailyDrivingLimit="1"

           dailyWorkingLimit="720" allowDailyWorkingLimit="1"

            areaOfControl="chippenhamzone" scheduleZonesId="71">        

  <homeLocation name="Frogwell" 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>

           </performer>           

          </performers>

        </performersDetails>

       </apiRequest>


Ответ, если все прошло хорошо:

 

<apiResponse version="1.0">

   <performers>

      <performer>

         <name>Driver_API_3782387</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"

 


Экспорт водителей

rest/2/distribution-api/objects/exportPerformers

 

Содержит параметр sessionID

 rest/2/distribution-api/objects/exportPerformers?sessionID=a5fad852a18149468d1b9845bbd8e1a8

 

Возвращает ответ

<apiResponse version="1.0">

   <performersDetails>

      <units timeZone="GMT+01:00" timeZoneOffset="GMT+1:00" currency="POUND" distanceUnits="MILE" speedUnits="MILES_PER_HOUR" durationUnits="MINUTE" weightUnits="units"/>

      <performers>

         <performer name="Andy Marey" externalId="2675d0e99a1047e6bd0ebafc326bb939" email="andy@magenta.com" login="andy" passwordHash="42767516990368493138776584305024125808" maxWorkingHours="40" allowedOvertimePerWeek="0" priceForOneHour="0" dailyDrivingLimit="480" allowDailyDrivingLimit="false" dailyWorkingLimit="660" allowDailyWorkingLimit="false" breakShift="0" areaOfControl="FrogwellZone">

            <homeLocation name="Frogwell" address="Drake Crescent, Chippenham, Wiltshire, SN14, GB" latitude="51.453891" longitude="-2.148895"/>

            <availabilities>

               <availability weekDay="thursday" from="06:00" to="22:00" fixedDayStart="false"/>

            </availabilities>

         </performer>

      <performersDetails>

</apiResponse>

  • No labels