Передача количества грузовых мест в заказе
Deprecated
Метод доступен для модели DBS.
Если вы используете API-Key-токен, для вызова метода необходим один из доступов в списке
- inventory-and-order-processing — Обработка заказов и учёт товаров
- all-methods — Полное управление кабинетом
Какой метод использовать вместо устаревшего
Отгружаемый Маркету заказ может не влезть в одну коробку или упаковку — в этом случае получается, что он занимает несколько грузовых мест.
Количество грузовых мест нужно обязательно передавать Маркету, если оно не равно 1. Это делается перед переводом его в статус Готов к отгрузке. Подробно о том, что в какой момент нужно передавать, рассказано в пошаговой инструкции.
Метод устроен немного нестандартно: количество задается длиной массива пустых объектов.
Раньше метод требовал передачи большего количества данных. Запросы, оформленные по старому образцу, работают, но лучше делать по-новому.
Как было раньше
Структура тела PUT-запроса:
{
"boxes":
[
{
"fulfilmentId": "{string}",
"weight": {int64},
"width": {int64},
"height": {int64},
"depth": {int64},
"items":
[
{
"id": {int64},
"count": {int32}
},
...
]
},
...
]
}
| Параметр | Тип | Значение |
|---|---|---|
boxes |
Список грузовых мест. |
Параметры, вложенные в boxes
| Параметр | Тип | Значение |
|---|---|---|
fulfilmentId |
String | Идентификатор грузового места в системе магазина. Сформируйте идентификатор по шаблону: номер заказа на Маркете-номер грузового места. Например, 7206821‑1, 7206821‑2 и т. д. |
weight |
Int64 | Масса брутто грузового места (суммарная масса упаковки и содержимого) в граммах. |
width |
Int64 | Ширина грузового места в сантиметрах. |
height |
Int64 | Высота грузового места в сантиметрах. |
depth |
Int64 | Глубина грузового места в сантиметрах. |
items |
Int64 | Список товаров в грузовом месте. |
Параметры, вложенные в items
| Параметр | Тип | Значение |
|---|---|---|
id |
Int64 | Идентификатор товара в рамках заказа. |
count |
Int32 | Количество единиц товара в грузовом месте. |
| ⚙️ Лимит: 100 000 запросов в час |
|---|
Request
PUT
https://api.partner.market.yandex.ru/v2/campaigns/{campaignId}/orders/{orderId}/delivery/shipments/{shipmentId}/boxes
Path parameters
|
Name |
Description |
|
campaignId |
Type: integer Идентификатор кампании (магазина) — технический идентификатор, который представляет ваш магазин в системе Яндекс Маркета при работе через API. Он однозначно связывается с вашим магазином, но предназначен только для автоматизированного взаимодействия. Его можно узнать с помощью запроса GET v2/campaigns или найти в кабинете продавца на Маркете. Нажмите на иконку вашего аккаунта → Настройки и в меню слева выберите API и модули:
⚠️ Не путайте его с:
Min value: |
|
orderId |
Type: integer Идентификатор заказа. |
|
shipmentId |
Type: integer Передайте любое число, чтобы получился корректный URL. Идентификатор грузового места. |
ParcelBoxRequestDTO
Параметр отображает одно грузовое место. Вложенные поля больше не используются, передавайте параметр пустым.
|
Name |
Description |
|
fulfilmentId |
Type: string Не используйте этот параметр. Pattern: Example: |
Example
{
"fulfilmentId": "example"
}
ParcelRequestDTO
Информация о грузовых местах в заказе.
|
Name |
Description |
|
boxes |
Type: ParcelBoxRequestDTO[] Список грузовых мест. По его длине Маркет определяет количество мест. Min items: Example
|
Example
{
"boxes": [
{
"fulfilmentId": "example"
}
]
}
Responses
200 OK
Имеет значение только тип ответа. Если ответ ОК, количество грузомест записано.
Body
application/json
{
"status": "OK",
"result": {
"boxes": [
{
"id": 0,
"fulfilmentId": "example"
}
]
}
}
Type: object
All of 2 types
-
Type: ApiResponse
Стандартная обертка для ответов сервера.
Example
{ "status": "OK" } -
Type: object
result
Type: ShipmentBoxesDTO
В ответе Маркет возвращает переданный вами список грузовых мест. Не обращайте на это поле внимания.
Example
{ "boxes": [ { "id": 0, "fulfilmentId": "example" } ] }Example
{ "result": { "boxes": [ { "id": 0, "fulfilmentId": "example" } ] } }
ApiResponseStatusType
Тип ответа. Возможные значения:
OK— ошибок нет.ERROR— при обработке запроса произошла ошибка.
Type: string
Enum: OK, ERROR
ApiResponse
Стандартная обертка для ответов сервера.
|
Name |
Description |
|
status |
Type: ApiResponseStatusType Тип ответа. Возможные значения:
Enum: |
Example
{
"status": "OK"
}
ParcelBoxDTO
Параметр отображает одно грузовое место.
|
Name |
Description |
|
fulfilmentId |
Type: string Не используйте этот параметр. Pattern: Example: |
|
id |
Type: integer Идентификатор коробки в составе заказа. |
Example
{
"id": 0,
"fulfilmentId": "example"
}
ShipmentBoxesDTO
В ответе Маркет возвращает переданный вами список грузовых мест. Не обращайте на это поле внимания.
|
Name |
Description |
|
boxes |
Type: ParcelBoxDTO[] Список грузовых мест. По его длине Маркет определил количество мест. Example
|
Example
{
"boxes": [
{
"id": 0,
"fulfilmentId": "example"
}
]
}
400 Bad Request
Запрос содержит неправильные данные. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
ApiErrorDTO
Общий формат ошибки.
|
Name |
Description |
|
code |
Type: string Код ошибки. Example: |
|
message |
Type: string Описание ошибки. Example: |
Example
{
"code": "example",
"message": "example"
}
ApiErrorResponse
Стандартная обертка для ошибок сервера.
Type: object
All of 2 types
-
Type: ApiResponse
Стандартная обертка для ответов сервера.
Example
{ "status": "OK" } -
Type: object
errors
Type: ApiErrorDTO[] | null
Список ошибок.
Min items:
1Example
[ { "code": "example", "message": "example" } ]Example
{ "errors": [ { "code": "example", "message": "example" } ] }
Example
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
401 Unauthorized
В запросе не указаны данные для авторизации. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
403 Forbidden
Данные для авторизации неверны или доступ к ресурсу запрещен. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
404 Not Found
Запрашиваемый ресурс не найден. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
420 Method Failure
Превышено ограничение на доступ к ресурсу. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
500 Internal Server Error
Внутренняя ошибка Маркета. Подробнее об ошибке
Body
application/json
{
"status": "OK",
"errors": [
{
"code": "example",
"message": "example"
}
]
}
Type: object
All of 1 type
-
Type: ApiErrorResponse
Стандартная обертка для ошибок сервера.
Example
{ "status": "OK", "errors": [ { "code": "example", "message": "example" } ] }
No longer supported, please use an alternative and newer version.