Редактирование заявки после подтверждения

Метод позволяет изменять некоторые параметры заявки после ее подтверждения

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: 32

Max length: 64

request_id*

Type: string

Уникальный идентификатор запроса на редактирование (токен идемпотентности)

Min length: 1

Max length: 63

Headers

Name

Description

Accept-Language*

Type: string

Предпочитаемый язык ответа

Например:
ru — русский
en — английский

Example: ru

Body

application/json
{
    "last_known_revision": "string",
    "changes": [
        {
            "kind": "change_items",
            "pickup_point_id": 1,
            "dropoff_point_id": 2,
            "items": [
                {
                    "extra_id": "БП-208",
                    "pickup_point": 1,
                    "dropoff_point": 2,
                    "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"
                    }
                }
            ]
        },
        {
            "kind": "change_comment",
            "point_id": 1,
            "comment": "string"
        },
        {
            "kind": "change_contact",
            "point_id": 1,
            "contact": {
                "name": "Морти",
                "phone": "+79099999998",
                "phone_additional_code": "602 17 500",
                "email": "example@yandex.ru"
            }
        }
    ]
}

Name

Description

changes*

Type: (ChangeItemsRequest
or ChangeCommentRequest
or ChangeContactRequest)[]

Набор изменений в заявке (применится весь набор или ничего).

Min items: 1

last_known_revision*

Type: string

Последняя известная клиенту версия заявки (version, полученная из claims/info)

ChangeItemsRequest

Запрос на изменение списка товаров в заказе

Name

Description

dropoff_point_id*

Type: integer<int64>

ID точки назначения, в которой меняем список товаров (int64)

Example: 2

items*

Type: V2CargoItem[]

Новый список товаров для данной комбинации точек

Min items: 1

kind*

Type: string

Тип изменения (change_items)

Example: change_items

Enum: change_items

pickup_point_id*

Type: integer<int64>

ID точки отправки, в которой меняем список товаров (int64)

Example: 1

ChangeCommentRequest

Запрос на изменение комментария в точке маршрута

Name

Description

comment*

Type: string

Новый комментарий в точке

kind*

Type: string

Тип изменения (change_comment)

Example: change_comment

Enum: change_comment

point_id*

Type: integer<int64>

ID точки, для которой меняем комментарий (int64)

Example: 1

ChangeContactRequest

Запрос на изменение контакта в точке

Name

Description

contact*

Type: ContactOnPoint

Информация о контактном лице

kind*

Type: string

Тип изменения (change_contact)

Example: change_contact

Enum: change_contact

point_id*

Type: integer<int64>

ID точки, в которой меняем контакт (int64)

Example: 1

V2CargoItem

Name

Description

cost_currency*

Type: string

Трехзначный код валюты, в которой ведется расчет

Example: RUB

Min length: 3

Max length: 3

cost_value*

Type: string

Цена за единицу товара в валюте cost_currency.
Для страхования стоимости передайте фактическую цену груза

Example: 2.00

Pattern: ^[0-9]+(\.[0-9]{1,2})?$

dropoff_point*

Type: integer<int64>

Идентификатор точки (int64), куда нужно доставить
товар. Отличается от идентификатора в заявке.

Может быть любым числом. Должен соответствовать значению route_points[].point_id
у точки назначения

Example: 2

pickup_point*

Type: integer<int64>

Идентификатор точки (int64), откуда нужно забрать
товар. Отличается от идентификатора в заявке.

Может быть любым числом. Должен соответствовать значению route_points[].point_id
у точки отправки

Example: 1

quantity*

Type: integer<int64>

Количество товара в единицах (int64)

Example: 1

Min value: 1

title*

Type: string

Наименование единицы товара

Example: Плюмбус

extra_id

Type: string

Краткий уникальный идентификатор товара (номер заказа в рамках заявки, как правило идентичен external_order_id)

Example: БП-208

fiscalization

Type: ItemFiscalization

Информация по фискализации (актуально для оплаты при получении)

size

Type: 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 м

weight

Type: number

Вес единицы товара в кг. В поле следует передавать актуальные значения.

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

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

Курьер (courier): до 10 кг
Экспресс (express): до 20 кг
Грузовой (cargo):

  • Маленький кузов: до 300 кг
  • Средний кузов: до 700 кг
  • Большой кузов: до 1400 кг

Example: 2

ContactOnPoint

Информация о контактном лице

Name

Description

name*

Type: string

Имя контактного лица

Example: Морти

phone*

Type: string

Телефон контактного лица

Example: +79099999998

email

Type: string

Email — обязательный параметр для точек с типом source и return

Example: example@yandex.ru

phone_additional_code

Type: string

Добавочный номер для звонка курьера

Example: 602 17 500

ItemFiscalization

Информация по фискализации (актуально для оплаты при получении)

Name

Description

article

Type: string

Артикул товара.
Должен быть уникальным для товаров, передаваемых из одной точки.

Example: 20ML50OWKY4FC86

excise

Type: string

Сумма акциза

Example: 12.50

Pattern: ^-?[0-9]{1,14}(\.[0-9]{0,4})?$

item_type

Type: ItemType

Тип наименования: товар или услуга.
Значение по умолчанию: product

Enum: product, service

mark

Type: ItemMark

Уникальный код товара (КИЗ). Актуален для РФ.
Если товары имеют уникальный код, то на каждый товар необходимо создать отдельный блок

supplier_inn

Type: string

ИНН поставщика (10 или 12 цифр).

Example: 3664069397

Pattern: ^[A-Z0-9\\-]+$

vat_code_str

Type: string

Ставка НДС. Возможные значения:
vat_none - без НДС;
vat0 - нулевая ставка НДС (применяется в редких случаях);
vat10 - ставка НДС 10%;
vat20 - ставка НДС 20%.

Example: vat_none

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

Высота в метрах

Example: 0.3

length*

Type: number

Длина в метрах

Example: 0.1

width*

Type: number

Ширина в метрах

Example: 0.2

ItemType

Тип наименования: товар или услуга.
Значение по умолчанию: product

Type

Description

ItemType

Enum: product, service

ItemMark

Уникальный код товара (КИЗ). Актуален для РФ.
Если товары имеют уникальный код, то на каждый товар необходимо создать отдельный блок

Name

Description

code*

Type: string

Код маркировки товара в соответствии с форматом kind

Example: 444D00000000003741

kind*

Type: string

Тип маркировки.
Возможные значения:

  1. compiled - уже разобранная марка с выделенным GTIN и Serial.
    Пример:
    - 444D00000000003741
  2. gs1_data_matrix_base64 - код товара в формате GS1 Data Matrix,
    подлежащий маркировке средствами идентификации.
    Максимум 200 символов.
    Код товара необходимо передавать целиком,
    закодировав строку в формат base64.

Example: gs1_data_matrix_base64

Responses

200 OK

OK

400 Bad Request

Достигнут лимит на максимальное количество вызовов запроса apply-changes

Body

application/json
{
    "code": "max_apply_changes",
    "message": "Заявка изменилась, обновите страницу"
}

Name

Description

code*

Type: string

Код ошибки

Example: max_apply_changes

Enum: unknown_error, max_apply_changes

message*

Type: string

Сообщение об ошибке, понятное человеку

Example: Заявка изменилась, обновите страницу

404 Not Found

Заявка не найдена

Body

application/json
{
    "code": "not_found",
    "message": "Заявка не найдена"
}

Name

Description

code*

Type: string

Код ошибки

Example: not_found

Enum: unknown_error, not_found

message*

Type: string

Описание ошибки

Example: Заявка не найдена

409 Conflict

Переданная ревизия запроса является устаревшей, необходимо обновить данные через claims/info)

Body

application/json
{
    "code": "old_version",
    "message": "Заявка изменилась, обновите страницу"
}

Name

Description

code*

Type: string

Код ошибки

Example: old_version

Enum: unknown_error, old_version, inappropriate_status

message*

Type: string

Сообщение об ошибке, понятное человеку

Example: Заявка изменилась, обновите страницу