Создание маршрутного листа курьера
В маршрутном листе должны содержаться следующие данные:
- информация по курьеру
courier - информация по дате доставке и маршруту курьера (списку постаматов для доставки)
route
Для осуществления доставки товаров в постамат отдельной регистрации курьера не требуется
В ответе будет содержаться код авторизации курьера на постамате postamatAccessCode.
Логика при создании маршрутного листа:
- Платформа при создании маршрутного листа осуществляет маппинг записей курьера по внешнему идентификатору (externalId) и регистрирует курьера, при отсутствии совпадений по идентификатору. В случае, когда курьер в системе найден - платформа обновит его данные.
- Для одного курьера на выбранную дату доставки, может быть, создано несколько маршрутных листов.
- Все созданные маршрутные листы действительны не позже указанной даты доставки.
PUT /couriers/courier-with-route
Инициатор запроса внешняя система
Header parameters
| desc | type | ||
|---|---|---|---|
SST-DELIVERY-KEY | Ключ авторизации | string | required |
Content-Type | Со значением application/json | string | required |
Request body
| desc | type | ||
|---|---|---|---|
courier | Данные по курьеру | object | required |
route | Данные по маршруту курьера | object | required |
courier object
| desc | type | ||
|---|---|---|---|
externalId | Идентификатор курьера внешней системы | string | required |
email | Почта курьера | int32 | required |
inn | ИНН | string | no required |
phone | Телефон курьера. Телефон передается в формате +79996543421 | string | required |
route object
| desc | type | ||
|---|---|---|---|
carNumber | Государственный номер автомобиля, на котором осуществляется доставка | string | no required |
date | Дата доставки на которую долен быть запрошен доступ | date | required |
externalId | Идентификатор курьера внешней системы | string | required |
postamatIds | Идентификаторы постаматов для маршрутного листа | array of integers | required |
Пример запроса
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
| desc | type | |
|---|---|---|
mosRegistryDescr | Рашифровка проверки статус курьера | string |
mosRegistryStatus | Статус проверки курьера в городском реестре | int32 |
postamatAccessCode | Код доступа курьера на постамате | string |
400 - Bad request
Response schema
| desc | type | |
|---|---|---|
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 logist | int32 |
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"
}