---
metadata:
  - name: generator
    content: Diplodoc Platform v5.52.0
alternate:
  - https://yandex.kz/routing/doc/ru/oob/parameters/api-parameters.md
  - href: ru/oob/parameters/api-parameters.md
    type: text/markdown
    title: Markdown version
  - href: ../llms.txt
    type: text/markdown
    title: llms.txt
title: Яндекс Маршрутизация — экспресс-доставка — состав и формат данных
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.kz/routing/doc/ru/llms.txt


# Состав и формат данных

Запрос к [ресурсу](https://yandex.ru/routing/doc/ru/oob/redoc/index.html) позволяет строить маршрут с соблюдением баланса между скоростью и оптимальным уровнем загрузки курьеров. Планирование выполняется с помощью [алгоритма](https://yandex.kz/routing/doc/ru/oob/algorithm.md) экспресс-доставки.

{% note warning %}

Чтобы получить корректный результат планирования, убедитесь, что все параметры в запросе актуальные и валидные.

{% endnote %}

При формировании запроса:

* Учитывайте структуру запроса. Подробнее см. в [спецификации](https://yandex.ru/routing/doc/ru/oob/redoc/index.html).
<!--* Указывайте значения обязательных полей. Их отсутствие приведет к ошибке валидации.
* Подготовьте точные координаты заказов. Если вы знаете только адреса, изучите [советы по геокодированию](https://yandex.kz/routing/doc/ru/vrp/integration-variants.md#geocoding) и используйте API геокодера. Для получения доступа к API обратитесь к менеджеру вашей компании. -->
* Указывайте уникальные идентификаторы заказов. Они не должны повторяться в течение дня и на протяжении всего периода планирования. Для соблюдения уникальности можно добавлять к идентификатору текущую дату. Например, `Order1 2025-01-01`.
* Не меняйте идентификаторы курьеров и складов. Они, в отличие от идентификаторов заказов, должны оставаться постоянными.
<!-- * Убедитесь, что все параметры времени (`locations.time_windows`, `locations.depot_ready_time` и другие) соответствуют вашей временной зоне, которая указана в параметре `options.time_zone`. -->
* Учитывайте, что каждый склад с закрепленными заказами и курьерами планируется отдельно.

{% note tip %}

Чтобы упростить настройку и тестирование задач экспресс-планирования, используйте пресеты: они используются многократно и позволяют задавать разные сценарии планирования. Подробнее см. в разделе [Использование пресетов](https://yandex.kz/routing/doc/ru/vrp/presets.md).

{% endnote %}

Структура тела запроса в [упрощенном API Экспресс-доставки](https://yandex.ru/routing/doc/ru/oob/redoc/index.html):

```json
{
"region_id": [],
"current_planning_time": {},
"next_planning_time": [],
"courier_list": [],
"order_list": {},
"solver_options_preset_id": []
}
```

## Минимальный набор параметров при планировании по упрощенному сценарию {#parameters-simple}

Корректный [запрос на планирование](#ondemand-request) экспресс-доставки должен содержать следующие данные: 

* `region_id` — идентификатор зоны доставки, для которой создается маршрут;
* `current_planning_time` — текущее время и дата планирования. [Алгоритм планирования](https://yandex.kz/routing/doc/ru/oob/algorithm.md) определяет текущее время самостоятельно. Для целей анализа или тестирования можно задать другое время в качестве текущего;
* [courier_list](#courier-list) — список доступных курьеров;
* [order_list](#order-list) — список готовых к доставке заказов.

Также в структуру запроса могут включаться разделы с информацией о следующих параметрах:

* `next_planning_time` — время следующего планирования этой задачи. На основе этого времени фильтруются маршруты, которые можно назначить позже, а также фильтруются маршруты, в которых возникнут нарушения при следующем планировании;
* `solver_options_preset_id` — идентификатор пресета.

### Блок courier_list {#courier-list}

#|
|| **Параметр** | **Описание** | **Обязательность** ||
|| `client_courier_id` | Идентификатор курьера в клиентской системе | Да||
|| `courier_info` | Информация о курьере: зона доставки, тип транспорта, максимальный вес груза, список тегов и др. | Нет ||
|| `shift` | Смена курьера для построения маршрута: идентификатор смены в системе клиента, временное окно работы, настройки назначения курьера в очередь и др. | Да ||
|#

Подробнее см. в разделе [Параметры курьеров](https://yandex.kz/routing/doc/ru/oob/parameters/courier-list.md).

### Блок order_list {#order-list}

#|
|| **Параметр** | **Описание** | **Обязательность** ||
|| `client_order_id` | Идентификатор заказа в клиентской системе | Да||
|| `status` | Статус заказа в системе сервиса: `created`, `preparing_for_delivery`, `ready_for_delivery`, `assigned`, `delivery_in_progress`, `completed`, `cancelled` ||
|| `client_order_status` | Статус заказа в системе клиента ||
|| `location` | Информация о местоположении заказа: адрес или координаты| Да ||
|| `delivery_policy` | Тип политики доставки: временной интервал или предельное время доставки   | Да ||
|| `content` | Содержимое заказа | Нет ||
|| `required_tag_list` | Обязательные теги курьера для назначения на заказ | Нет||
|| `order_priority` | Приоритет заказа | Нет||
|| `depot_id` | Идентификатор склада | Нет||
|| `stage_durations` | Продолжительность этапов заказа: время подготовки, передачи курьеру и вручения получателю | Нет||
|| `payment_info` | Информация о платеже | Нет||
|| `recipient_info` | Информация о получателе заказа| Нет||
|#

Подробнее см. в разделе [Параметры заказов](https://yandex.kz/routing/doc/ru/oob/parameters/order-list.md).

## Запрос на планирование {#ondemand-request}

Чтобы создать новую задачу планирования экспресс-доставки и получить информацию о спланированном маршруте, выполните шаги одного из сценариев:

* [основной](https://yandex.kz/routing/doc/ru/oob/guidelines/base.md);
* [упрощенный](https://yandex.kz/routing/doc/ru/oob/guidelines/simple.md).

{% note info %}

Запросы должны содержать [авторизационный токен](https://yandex.kz/routing/doc/ru/oob/authorization.md#oauth-token), а для некоторых запросов необходим [токен идемпотентности](https://yandex.kz/routing/doc/ru/oob/authorization.md#idempotency-token).

{% endnote %}

<!-- source: ru/oob/_includes/feedback.md -->
<a href="feedback">
  <span class="button">Написать в службу поддержки</span>
</a>


<!-- endsource: ru/oob/_includes/feedback.md -->

