Skip to content

Создание маршрутного листа курьера

В маршрутном листе должны содержаться следующие данные:

  • информация по курьеру courier
  • информация по дате доставке и маршруту курьера (списку постаматов для доставки) route

Для осуществления доставки товаров в постамат отдельной регистрации курьера не требуется

В ответе будет содержаться код авторизации курьера на постамате postamatAccessCode.

Логика при создании маршрутного листа:

  • Платформа при создании маршрутного листа осуществляет маппинг записей курьера по внешнему идентификатору (externalId) и регистрирует курьера, при отсутствии совпадений по идентификатору. В случае, когда курьер в системе найден - платформа обновит его данные.
  • Для одного курьера на выбранную дату доставки, может быть, создано несколько маршрутных листов.
  • Все созданные маршрутные листы действительны не позже указанной даты доставки.

PUT /couriers/courier-with-route

Инициатор запроса внешняя система

Header parameters

desctype
SST-DELIVERY-KEYКлюч авторизацииstringrequired
Content-TypeСо значением application/jsonstringrequired

Request body

desctype
courierДанные по курьеруobjectrequired
routeДанные по маршруту курьераobjectrequired

courier object

desctype
externalIdИдентификатор курьера внешней системыstringrequired
emailПочта курьераint32required
innИННstringno required
phoneТелефон курьера. Телефон передается в формате +79996543421stringrequired

route object

desctype
carNumberГосударственный номер автомобиля, на котором осуществляется доставкаstringno required
dateДата доставки на которую долен быть запрошен доступdaterequired
externalIdИдентификатор курьера внешней системыstringrequired
postamatIdsИдентификаторы постаматов для маршрутного листаarray of integersrequired

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

shell
curl -X 'PUT' \
  'https://apim.selftech.ru/test/v4/couriers/courier-with-route' \
  -H 'accept: */*' \
  -H 'SST-DELIVERY-KEY: KEY' \
  -H 'Content-Type: application/json' \
  -d '{
  "courier": {
    "email": "example@email.ru",
    "externalId": "1412ABC03",
    "inn": "325507450247",
    "phone": "+79008006050"
  },
  "route": {
    "carNumber": "c830te22",
    "date": "2023-01-27",
    "externalId": "1412ABC03",
    "postamatIds": [
      "11",
      "12",
      "13"
    ]
  }
}'

Коды ответов

200 - OK

Response schema

desctype
mosRegistryDescrРашифровка проверки статус курьераstring
mosRegistryStatusСтатус проверки курьера в городском реестреint32
postamatAccessCodeКод доступа курьера на постаматеstring
400 - Bad request

Response schema

desctype
messageСообщение ошибкиstring
resultCodeОтвет сервера:500 - Postamat permission profile not set for logist;604 - Courier ext-id id empty;602 - Courier (e-mail: %s, ext-id: %s) already exist for logistint32
json
{
"message": "Postamat permission profile not set for logist",
"resultCode": 500
}
json
{
"message": "Courier ext-id id empty",
"resultCode": 604
}
json
{
"message": "Courier (e-mail: %s, ext-id: %s) already exist for logist",
"resultCode": 602
}

401 - Unauthorized

500 - Internal server error

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

json
{
  "mosRegistryDescr": "Ожидает проверки",
  "mosRegistryStatus": 1,
  "postamatAccessCode": "123123"
}