Редактирование заявки после подтверждения
Метод позволяет изменять некоторые параметры заявки после ее подтверждения
Request
POST
b2b.taxi.yandex.net/b2b/cargo/integration/v2/claims/apply-changes/request
Адрес сервиса
Query parameters
|
Name |
Description |
|
claim_id |
Type: string ID заявки, полученный на этапе создания заявки Min length: Max length: Example: `` |
|
request_id |
Type: string Уникальный идентификатор запроса на редактирование (токен идемпотентности) Min length: Max length: Example: `` |
Headers
|
Name |
Description |
|
Accept-Language |
Type: string Предпочитаемый язык ответа Например: Example: |
Body
application/json
{
"last_known_revision": "example",
"changes": [
{
"kind": "change_items",
"pickup_point_id": 1,
"dropoff_point_id": 2,
"items": [
{}
]
}
]
}
|
Name |
Description |
|
changes |
Type: ChangeRequest[] Набор изменений в заявке (применится весь набор или ничего). Min items: Example
|
|
last_known_revision |
Type: string Последняя известная клиенту версия заявки (version, полученная из claims/info) Example: |
CargoItemSizes
Габариты товара в метрах. В полях следует передавать актуальные значения.
Если габариты не были переданы, заказ оформляется с учетом
максимально допустимых габаритов для выбранного тарифа.
Если фактические характеристики товара превысят допустимые,
курьер вправе отказаться от выполнения такого заказа на месте.
В этом случае будет удержана стоимость подачи.
Курьер (courier): до 0.80 м × 0.50 м × 0.50 м
Экспресс (express): до 1.00 м × 0.60 м × 0.50 м
Грузовой (cargo):
- Маленький кузов: до 1.70 м × 0.96 м × 0.90 м
- Средний кузов: до 2.60 м × 1.30 м × 1.50 м
- Большой кузов: до 3.80 м × 1.80 м × 1.80 м
|
Name |
Description |
|
height |
Type: number Высота в метрах Min value: Max value: |
|
length |
Type: number Длина в метрах Min value: Max value: |
|
width |
Type: number Ширина в метрах Min value: Max value: |
Example
{
"length": 0.1,
"width": 0.2,
"height": 0.3
}
Currency
Трехзначный код валюты, в которой ведется расчет
Type: string
Min length: 3
Max length: 3
Example: RUB
Money
Стоимость доставки в формате десятичной дроби Decimal(18, 4)
Type: string
Pattern: ^-?[0-9]{1,14}(\.[0-9]{0,4})?$
Example: 12.50
VatCodeStrApi
Ставка НДС. Возможные значения:
vat_none - без НДС;
vat0 - нулевая ставка НДС (применяется в редких случаях);
vat10 - ставка НДС 10%;
vat20 - ставка НДС 20%.
Type: string
Example: vat_none
SupplierInn
ИНН поставщика (10 или 12 цифр).
Type: string
Pattern: ^[A-Z0-9\\-]+$
Example: 3664069397
ItemArticle
Артикул товара.
Должен быть уникальным для товаров, передаваемых из одной точки.
Type: string
Example: 20ML50OWKY4FC86
ItemMark
Уникальный код товара (КИЗ). Актуален для РФ.
Если товары имеют уникальный код, то на каждый товар необходимо создать отдельный блок
|
Name |
Description |
|
code |
Type: string Код маркировки товара в соответствии с форматом kind Example: |
|
kind |
Type: string Тип маркировки.
Example: |
Example
{
"kind": "gs1_data_matrix_base64",
"code": "444D00000000003741"
}
ItemType
Тип наименования: товар или услуга.
Значение по умолчанию: product
Type: string
Enum: product, service
ItemFiscalization
Информация по фискализации (актуально для оплаты при получении)
|
Name |
Description |
|
article |
Type: ItemArticle Артикул товара. Example: |
|
excise |
Type: Money Сумма акциза Стоимость доставки в формате десятичной дроби Decimal(18, 4) Pattern: Example: |
|
item_type |
Type: ItemType Тип наименования: товар или услуга. Enum: |
|
mark |
Type: ItemMark Уникальный код товара (КИЗ). Актуален для РФ. Example
|
|
supplier_inn |
Type: SupplierInn ИНН поставщика (10 или 12 цифр). Pattern: Example: |
|
vat_code_str |
Type: VatCodeStrApi Ставка НДС. Возможные значения: Example: |
Example
{
"excise": "12.50",
"vat_code_str": "vat_none",
"supplier_inn": "3664069397",
"article": "20ML50OWKY4FC86",
"mark": {
"kind": "gs1_data_matrix_base64",
"code": "444D00000000003741"
},
"item_type": "product"
}
V2CargoItem
|
Name |
Description |
|
cost_currency |
Type: Currency Трехзначный код валюты, в которой ведется расчет Min length: Max length: Example: |
|
cost_value |
Type: string Цена за единицу товара в валюте cost_currency. Pattern: Example: |
|
dropoff_point |
Type: integer Идентификатор точки (int64), куда нужно доставить Может быть любым числом. Должен соответствовать значению route_points[].point_id |
|
pickup_point |
Type: integer Идентификатор точки (int64), откуда нужно забрать Может быть любым числом. Должен соответствовать значению route_points[].point_id |
|
quantity |
Type: integer Количество товара в единицах (int64) Min value: |
|
title |
Type: string Наименование единицы товара Example: |
|
age_restricted |
Type: boolean Нужно ли проверить возраст клиента при выдаче товара Default: |
|
droppof_point |
Type: integer deprecated, use dropoff_point |
|
extra_id |
Type: string Краткий уникальный идентификатор товара (номер заказа в рамках заявки, как правило идентичен external_order_id) Example: |
|
fiscalization |
Type: ItemFiscalization Информация по фискализации (актуально для оплаты при получении) Example
|
|
size |
Type: CargoItemSizes Габариты товара в метрах. В полях следует передавать актуальные значения. Если габариты не были переданы, заказ оформляется с учетом Если фактические характеристики товара превысят допустимые, Курьер (courier): до 0.80 м × 0.50 м × 0.50 м
Example
|
|
weight |
Type: number Вес единицы товара в кг. В поле следует передавать актуальные значения. Если вес не был передан, заказ оформляется с учетом Если фактические характеристики отправления превысят допустимые, Курьер (courier): до 10 кг
|
Example
{
"extra_id": "БП-208",
"pickup_point": 1,
"dropoff_point": 2,
"droppof_point": 0,
"title": "Плюмбус",
"size": {
"length": 0.1,
"width": 0.2,
"height": 0.3
},
"weight": 2,
"cost_value": "2.00",
"cost_currency": "RUB",
"quantity": 1,
"fiscalization": {
"excise": "12.50",
"vat_code_str": "vat_none",
"supplier_inn": "3664069397",
"article": "20ML50OWKY4FC86",
"mark": {
"kind": "gs1_data_matrix_base64",
"code": "444D00000000003741"
},
"item_type": "product"
},
"age_restricted": false
}
ChangeItemsRequest
Запрос на изменение списка товаров в заказе
|
Name |
Description |
|
dropoff_point_id |
Type: integer ID точки назначения, в которой меняем список товаров (int64) |
|
items |
Type: V2CargoItem[] Новый список товаров для данной комбинации точек Min items: Example
|
|
kind |
Type: string Тип изменения (change_items) Const: Example: |
|
pickup_point_id |
Type: integer ID точки отправки, в которой меняем список товаров (int64) |
Example
{
"kind": "change_items",
"pickup_point_id": 1,
"dropoff_point_id": 2,
"items": [
{
"extra_id": "БП-208",
"pickup_point": 1,
"dropoff_point": 2,
"droppof_point": 0,
"title": "Плюмбус",
"size": {
"length": 0.1,
"width": 0.2,
"height": 0.3
},
"weight": 2,
"cost_value": "2.00",
"cost_currency": "RUB",
"quantity": 1,
"fiscalization": {
"excise": "12.50",
"vat_code_str": "vat_none",
"supplier_inn": "3664069397",
"article": "20ML50OWKY4FC86",
"mark": {
"kind": "gs1_data_matrix_base64",
"code": "444D00000000003741"
},
"item_type": "product"
},
"age_restricted": false
}
]
}
ChangeCommentRequest
Запрос на изменение комментария в точке маршрута
|
Name |
Description |
|
comment |
Type: string Новый комментарий в точке Example: |
|
kind |
Type: string Тип изменения (change_comment) Const: Example: |
|
point_id |
Type: integer ID точки, для которой меняем комментарий (int64) |
Example
{
"kind": "change_comment",
"point_id": 1,
"comment": "example"
}
ContactOnPoint
Информация о контактном лице
|
Name |
Description |
|
name |
Type: string Имя контактного лица Example: |
|
phone |
Type: string Телефон контактного лица Example: |
|
|
Type: string Email — обязательный параметр для точек с типом source и return Example: |
|
phone_additional_code |
Type: string Добавочный номер для звонка курьера Example: |
Example
{
"name": "Морти",
"phone": "+79099999998",
"phone_additional_code": "602 17 500",
"email": "example@yandex.ru"
}
ChangeContactRequest
Запрос на изменение контакта в точке
|
Name |
Description |
|
contact |
Type: ContactOnPoint Информация о контактном лице Example
|
|
kind |
Type: string Тип изменения (change_contact) Const: Example: |
|
point_id |
Type: integer ID точки, в которой меняем контакт (int64) |
Example
{
"kind": "change_contact",
"point_id": 1,
"contact": {
"name": "Морти",
"phone": "+79099999998",
"phone_additional_code": "602 17 500",
"email": "example@yandex.ru"
}
}
ChangeRequest
One of 3 types
-
Type: ChangeItemsRequest
Запрос на изменение списка товаров в заказе
Example
{ "kind": "change_items", "pickup_point_id": 1, "dropoff_point_id": 2, "items": [ { "extra_id": "БП-208", "pickup_point": 1, "dropoff_point": 2, "droppof_point": 0, "title": "Плюмбус", "size": { "length": 0.1, "width": 0.2, "height": 0.3 }, "weight": 2, "cost_value": "2.00", "cost_currency": "RUB", "quantity": 1, "fiscalization": { "excise": "12.50", "vat_code_str": "vat_none", "supplier_inn": "3664069397", "article": "20ML50OWKY4FC86", "mark": { "kind": "gs1_data_matrix_base64", "code": "444D00000000003741" }, "item_type": "product" }, "age_restricted": false } ] } -
Type: ChangeCommentRequest
Запрос на изменение комментария в точке маршрута
Example
{ "kind": "change_comment", "point_id": 1, "comment": "example" } -
Type: ChangeContactRequest
Запрос на изменение контакта в точке
Example
{ "kind": "change_contact", "point_id": 1, "contact": { "name": "Морти", "phone": "+79099999998", "phone_additional_code": "602 17 500", "email": "example@yandex.ru" } }
Example
{
"kind": "change_items",
"pickup_point_id": 1,
"dropoff_point_id": 2,
"items": [
{
"extra_id": "БП-208",
"pickup_point": 1,
"dropoff_point": 2,
"droppof_point": 0,
"title": "Плюмбус",
"size": {
"length": 0.1,
"width": 0.2,
"height": 0.3
},
"weight": 2,
"cost_value": "2.00",
"cost_currency": "RUB",
"quantity": 1,
"fiscalization": {
"excise": "12.50",
"vat_code_str": "vat_none",
"supplier_inn": "3664069397",
"article": "20ML50OWKY4FC86",
"mark": {},
"item_type": "product"
},
"age_restricted": false
}
]
}
Responses
200 OK
OK
400 Bad Request
Достигнут лимит на максимальное количество вызовов запроса apply-changes
Body
application/json
{
"code": "max_apply_changes",
"message": "Заявка изменилась, обновите страницу"
}
|
Name |
Description |
|
code |
Type: string Код ошибки Enum: |
|
message |
Type: string Сообщение об ошибке, понятное человеку Example: |
404 Not Found
Заявка не найдена
Body
application/json
{
"code": "not_found",
"message": "Заявка не найдена"
}
|
Name |
Description |
|
code |
Type: string Код ошибки Enum: |
|
message |
Type: string Описание ошибки Example: |
409 Conflict
Переданная ревизия запроса является устаревшей, необходимо обновить данные через claims/info)
Body
application/json
{
"code": "old_version",
"message": "Заявка изменилась, обновите страницу"
}
|
Name |
Description |
|
code |
Type: string Код ошибки Enum: |
|
message |
Type: string Сообщение об ошибке, понятное человеку Example: |
No longer supported, please use an alternative and newer version.