Основной сценарий

В этом разделе описан самый простой сценарий: сервис автоматически подбирает робота-исполнителя, робот забирает груз в точке погрузки и отвозит в точку доставки. Подробнее о других вариантах см. Популярные сценарии.

Шаг

Кто выполняет

Действие

1

Партнер

Создает заказ на доставку груза клиенту.

В теле запроса в массиве route_points укажите точку погрузки type = source и точку доставки type = destination. Порядок посещения указывается для каждой точки в поле visit_order, нумерация начинается с 0.

В блоке conditions можно указать параметр maximum_first_point_eta — тогда при подборе исполнителя будут рассатриваться только те роботы, которые смогут прибыть в точку погрузки не позднее указанного времени.

Сервис ожидает дату и время с указанием часового пояса. Примеры форматов:

  • 2026-01-11 17:26:27.704301+00:00
  • 2026-01-11T19:18:43Z

Если часовой пояс не указан, сервис считает, что это UTC+0.

Запрос
POST /claims/create?idempotency_key=<your_idempotency_key>
{
"route_points": [
    {
    "address": {
        "coordinates": [
            55.733989, 
            37.588116
        ]
    },
    "point_id": "0",
    "type": "source",
    "visit_order": 0
    },
    {
    "address": {
        "coordinates": [
            55.735120, 
            37.642817
        ]
    },
    "point_id": "1",
    "type": "destination",
    "visit_order": 1
    }
],
"external_order_id": "Order #1",
"conditions": {}
}

В ответе возвращается идентификатор созданного заказа id.

Ответ
{
    "created_at": "2025-01-29T18:02:01Z",
    "updated_at": "2025-01-29T18:02:01Z",
    "id": "5555",
    "route_points": [
        {
            "address": {
                "coordinates": [
                    55.733989, 
                    37.588116
                ]
            },
            "id": "0",
            "visit_order": 0
        },
        {
            "address": {
                "coordinates": [
                    55.735120, 
                    37.642817
                ]
            },
            "id": "1",
            "visit_order": 0
        }
    ],
    "status": "new",
    "eta": 100,
    "user_request_revision": "0"
}

2

Сервис

Оценивает заказ, это занимает около 1 секунды. Заказ автоматически одобряется, рассчитывается ожидаемое время доставки заказа клиенту (ETA). Для заказа подбирается робот-исполнитель, заказ передается на выполнение и получает статус performer_found.

Дополнительные сценарии:

3

Партнер

Запрашивает статус заказа, используя идентификатор заказа id, который он получил на шаге 1. Этот же запрос используется на протяжении всего маршрута для контроля текущего статуса заказа и ETA, см. Статусная модель.

Запрос
POST /claims/info?claim_id=<your_claim_id>

Для одобренного заказа status = accepted. Планируемое время доставки возвращается в поле eta.

Ответ
{
    "created_at": "2025-01-29T18:02:01Z",
    "updated_at": "2025-01-29T18:02:01Z",
    "id": "5555",
    "route_points": [
        {
            "address": {
                "coordinates": [
                    55.733989, 
                    37.588116
                ]
            },
            "id": "0",
            "visit_order": 0
        },
        {
            "address": {
                "coordinates": [
                    55.735120, 
                    37.642817
                ]
            },
            "id": "1",
            "visit_order": 0
        }
    ],
    "status": "new",
    "eta": 100,
    "user_request_revision": "0"
}

4

Робот

Прибывает в точку, где должен забрать груз. Статус заказа — pickup_arrived.

5

Партнер

Открывает крышку, чтобы положить груз.

Запрос
POST /claims/open_hatch?claim_id=<your_claim_id>&idempotency_key=<your_idempotency_key>

6

Партнер

Когда груз погружен, подтверждает факт погрузки груза. При подтверждении автоматически выполняется закрытие крышки робота, отдельно этот запрос выполнять не обязательно.

Запрос
POST /claims/confirm_exchange?claim_id=<your_claim_id>&idempotency_key=<your_idempotency_key>

7

Робот

Отвозит груз в точку доставки. Статус заказа — delivery_arrived.

8

Клиент

Открывает крышку, чтобы забрать груз.

Запрос
POST /claims/open_hatch?claim_id=<your_claim_id>&idempotency_key=<your_idempotency_key>

Дополнительный сценарий:

9

Клиент

Когда груз получен, подтверждает факт получения груза. При подтверждении автоматически выполняется закрытие крышки робота, отдельно этот запрос выполнять не обязательно.

Запрос
POST /claims/confirm_exchange?claim_id=<your_claim_id>&idempotency_key=<your_idempotency_key>

Дополнительный сценарий:

Заказ получает статус delivered. Выполнение заказа завершено.


Если вы не нашли ответ на свой вопрос, вы можете задать его службе поддержки через форму обратной связи. Пожалуйста, опишите возникшую проблему как можно подробнее. Если возможно, приложите скриншот.

Написать в службу поддержки

Клиент использует мобильное приложение партнера.