Документы отправок

Каждая операция ниже сгенерирована из OpenAPI v2 и содержит параметры, поля запроса, поля ответа, ошибки и примеры.

Документы отправок

GET /api/v2/send-documents

Получить список документов отправок

operationIdlistSendDocuments
РазделДокументы отправок
БезопасностьbearerAuth

Возвращает send documents, видимые аутентифицированному аккаунту. Используйте описанные query parameters для фильтрации, сортировки и пагинации.
Unknown read parameters are ignored. per_page is silently capped; use meta.per_page. Date-only boundaries follow the installation's stored calendar dates; ISO timestamps are serialized in UTC. The default general API limit is 600/minute; a user-specific override may apply. Its bucket is shared by authenticated user, not by shop/domain; Retry-After is returned on throttling.
Unknown read parameters are ignored. per_page is silently capped; use meta.per_page. Date-only boundaries follow the installation's stored calendar dates; ISO timestamps are serialized in UTC. The default general API limit is 600/minute; a user-specific override may apply. Its bucket is shared by authenticated user, not by shop/domain; Retry-After is returned on throttling.
Unknown read parameters are ignored. per_page is silently capped; use meta.per_page. Date-only boundaries follow the installation's stored calendar dates; ISO timestamps are serialized in UTC. The default general API limit is 600/minute; a user-specific override may apply. Its bucket is shared by authenticated user, not by shop/domain; Retry-After is returned on throttling.
Unknown read parameters are ignored. per_page is silently capped; use meta.per_page. Date-only boundaries follow the installation's stored calendar dates; ISO timestamps are serialized in UTC. The default general API limit is 600/minute; a user-specific override may apply. Its bucket is shared by authenticated user, not by shop/domain; Retry-After is returned on throttling.
Unknown read parameters are ignored. per_page is silently capped; use meta.per_page. Date-only boundaries follow the installation's stored calendar dates; ISO timestamps are serialized in UTC. The default general API limit is 600/minute; a user-specific override may apply. Its bucket is shared by authenticated user, not by shop/domain; Retry-After is returned on throttling.
Unknown read parameters are ignored. per_page is silently capped; use meta.per_page. Date-only boundaries follow the installation's stored calendar dates; ISO timestamps are serialized in UTC. The default general API limit is 600/minute; a user-specific override may apply. Its bucket is shared by authenticated user, not by shop/domain; Retry-After is returned on throttling.

Пример HTTP-запроса (cURL)

Подставьте свой сервер и токен. ID из примера замените реальными доступными ID. Для тела запроса сохраните подходящий JSON из раздела ниже в request.json; перед отправкой замените демонстрационные значения. Заголовок Idempotency-Key использует ключ одной логической операции.

curl --globoff --request GET "${NWMS_BASE_URL}/api/v2/send-documents" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer ${NWMS_TOKEN}"

Параметры

Имя Где Обязательное Тип Style Explode Ограничения Описание Пример
page query нет integer:int64 form true min: 1 Номер страницы. Этот фильтр также можно передать как filter[page], если это поддерживает Laravel query adapter. 1
per_page query нет integer:int64 form true min: 1
max: 100
Количество записей на странице. По умолчанию 20; максимум 100. Этот фильтр также можно передать как filter[per_page], если это поддерживает Laravel query adapter. 20
sort query нет string form false pattern: ^-?[A-Za-z0-9_]+(,-?[A-Za-z0-9_]+)*$ Поля сортировки через запятую. Префикс - означает сортировку по убыванию. Допустимые поля: id, document_date, status_id, warehouse_id, order_count, processing_mode, pipeline_state, created_at, updated_at. По умолчанию: -id. Этот фильтр также можно передать как filter[sort], если это поддерживает Laravel query adapter. "-id"
include query нет string form false Comma-separated optional relations. Allowed values: status, warehouse, delivery_services, orders, orders.products, orders.datamatrix, orders.wildberries, wildberries_supplies, batch. The same filter may also be sent as filter[include] where supported by the Laravel query adapter. "status,warehouse,delivery_services,orders,orders.products,orders.datamatrix,orders.wildberries,wildberries_supplies,batch"
id query нет integer:int64 form true min: 1 Фильтр по id с точным совпадением. Этот фильтр также можно передать как filter[id], если это поддерживает Laravel query adapter. 1001
status_id query нет integer:int64 form true min: 1 Фильтр по status_id с точным совпадением. Этот фильтр также можно передать как filter[status_id], если это поддерживает Laravel query adapter. 1
warehouse_id query нет integer:int64 form true min: 1 Фильтр по warehouse_id с точным совпадением. Этот фильтр также можно передать как filter[warehouse_id], если это поддерживает Laravel query adapter. 42
delivery_service_id query нет integer:int64 form true min: 1 Фильтр по delivery_service_id с точным совпадением. Этот фильтр также можно передать как filter[delivery_service_id], если это поддерживает Laravel query adapter. 1
order_id query нет integer:int64 form true min: 1 Фильтр по order_id с точным совпадением. Этот фильтр также можно передать как filter[order_id], если это поддерживает Laravel query adapter. 1
processing_mode query нет string form true Фильтр по processing_mode с точным совпадением. Этот фильтр также можно передать как filter[processing_mode], если это поддерживает Laravel query adapter. "standard"
pipeline_state query нет string form true Фильтр по pipeline_state с точным совпадением. Этот фильтр также можно передать как filter[pipeline_state], если это поддерживает Laravel query adapter. "open"
wb_fulfillment_state query нет string form true Фильтр по wb_fulfillment_state с точным совпадением. Этот фильтр также можно передать как filter[wb_fulfillment_state], если это поддерживает Laravel query adapter. "delivered"
comment query нет string form true Фильтр по comment с частичным текстовым совпадением. Этот фильтр также можно передать как filter[comment], если это поддерживает Laravel query adapter. "Priority"
document_date_from query нет string:date form true Нижняя включительная граница даты для document_date. Этот фильтр также можно передать как filter[document_date_from], если это поддерживает Laravel query adapter. "2026-07-14"
document_date_to query нет string:date form true Верхняя включительная граница даты для document_date. Этот фильтр также можно передать как filter[document_date_to], если это поддерживает Laravel query adapter. "2026-07-14"
created_at_from query нет string:date form true Нижняя включительная граница даты для created_at. Этот фильтр также можно передать как filter[created_at_from], если это поддерживает Laravel query adapter. "2026-07-14"
created_at_to query нет string:date form true Верхняя включительная граница даты для created_at. Этот фильтр также можно передать как filter[created_at_to], если это поддерживает Laravel query adapter. "2026-07-14"
updated_at_from query нет string:date form true Нижняя включительная граница даты для updated_at. Этот фильтр также можно передать как filter[updated_at_from], если это поддерживает Laravel query adapter. "2026-07-14"
updated_at_to query нет string:date form true Верхняя включительная граница даты для updated_at. Этот фильтр также можно передать как filter[updated_at_to], если это поддерживает Laravel query adapter. "2026-07-14"

Тело запроса

Тело запроса отсутствует.

Ответы

200 Successful response.

Successful response.

Поле Обязательное Тип Флаги Ограничения Описание Пример
data да array<SendDocument>
data[] нет SendDocument Outbound shipment document with its complete operational composition. Collection relations are empty unless requested through include; the item endpoint always loads them.
data[].id да integer:int64 readOnly min: 1 1001
data[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data[].domain_id нет integer:int64 | null min: 1 3
data[].status_id нет integer:int64 | null 1
data[].status нет object | null
data[].status.id да integer:int64 1
data[].status.name да string "Открыт"
data[].status.color нет string | null "#2457c5"
data[].status.background_color нет string | null "#eaf0ff"
data[].warehouse_id нет integer:int64 | null min: 1 42
data[].warehouse нет object | null
data[].warehouse.id да integer:int64 min: 1 42
data[].warehouse.name да string "Warehouse Sofia"
data[].warehouse.type_id нет integer:int64 | null 2
data[].warehouse.parent_id нет integer:int64 | null min: 1 41
data[].delivery_service_ids да array<integer:int64>
data[].delivery_service_ids[] нет integer:int64 min: 1 17
data[].delivery_services да array<SendDocumentDeliveryService>
data[].delivery_services[] нет SendDocumentDeliveryService
data[].delivery_services[].id да integer:int64 min: 1 17
data[].delivery_services[].name да string "Wildberries FBS"
data[].delivery_services[].status_id да integer:int64 1
data[].delivery_services[].external_id нет string | null "wb-fbs"
data[].delivery_services[].source_id нет string | null "wildberries"
data[].delivery_services[].delivery_type нет string | null "pickup_point"
data[].delivery_services[].is_courier да boolean false
data[].document_date нет string:date | null "2026-08-11"
data[].closed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data[].comment нет string | null "Wildberries shipment 740"
data[].order_count да integer:int64 min: 0 1
data[].processing да SendDocumentProcessing
data[].processing.mode нет string | null "standard"
data[].processing.pipeline да array<string>
data[].processing.pipeline[] нет string "assignment"
data[].processing.state нет string | null "open"
data[].processing.batch_profile_id нет integer:int64 | null min: 1 31
data[].processing.batch_profile нет object | null
data[].processing.batch_profile.id да integer:int64 min: 1 31
data[].processing.batch_profile.name да string "Standard packing"
data[].processing.batch_profile.processing_mode нет string | null "standard"
data[].processing.composition_frozen_at нет string:date-time | null "2026-07-14T10:30:00Z"
data[].processing.batch_started_at нет string:date-time | null "2026-07-14T10:30:00Z"
data[].processing.batch_completed_at нет string:date-time | null "2026-07-14T10:30:00Z"
data[].wildberries да SendDocumentWildberries Wildberries document-level state and safe supply/QR/sticker artifact metadata. Binary label content and encrypted provider payloads are not returned.
data[].wildberries.fulfillment_state нет string | null "delivered"
data[].wildberries.error_message нет string | null ""
data[].wildberries.processed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data[].wildberries.supplies да array<object>
data[].wildberries.supplies[] нет object
data[].orders да array<SendDocumentOrderAssignment>
data[].orders[] нет SendDocumentOrderAssignment
data[].orders[].assignment_id да integer:int64 min: 1 8801
data[].orders[].marked_at нет string:date-time | null "2026-08-11T09:30:00Z"
data[].orders[].created_at нет string:date-time | null "2026-08-11T09:00:00Z"
data[].orders[].updated_at нет string:date-time | null "2026-08-11T09:30:00Z"
data[].orders[].order да object | null Complete order snapshot embedded into a shipment document. Marketplace and batch objects preserve provider-specific fields.
data[].orders[].order.id да integer:int64 min: 1 49060
data[].orders[].order.external_id нет string | null "WB-900001234"
data[].orders[].order.status_id нет integer:int64 | null 20
data[].orders[].order.warehouse_id нет integer:int64 | null min: 1 42
data[].orders[].order.shop_id нет integer:int64 | null min: 1 12
data[].orders[].order.order_date нет string:date | null "2026-08-10"
data[].orders[].order.send_date нет string:date | null "2026-08-11"
data[].orders[].order.amounts нет object | null
data[].orders[].order.amounts.shipping_price нет number:float | null 8.6
data[].orders[].order.amounts.shipping_cost нет number:float | null 0
data[].orders[].order.amounts.sum нет number:float | null 39.98
data[].orders[].order.amounts.cod_sum нет number:float | null 48.58
data[].orders[].order.contact нет object | null
data[].orders[].order.contact.first_name нет string | null "Ivan"
data[].orders[].order.contact.middle_name нет string | null "Ivanovich"
data[].orders[].order.contact.last_name нет string | null "Petrov"
data[].orders[].order.contact.phone нет string | null "+359888123456"
data[].orders[].order.contact.email нет string:email | null "customer@example.com"
data[].orders[].order.contact.country_id нет integer:int64 | null min: 1 100
data[].orders[].order.contact.city_id нет integer:int64 | null min: 1 200
data[].orders[].order.contact.postcode нет string | null "1000"
data[].orders[].order.contact.latitude нет number:float | null min: -90
max: 90
42.6977
data[].orders[].order.contact.longitude нет number:float | null min: -180
max: 180
23.3219
data[].orders[].order.contact.full_address нет string | null "1 Vitosha Boulevard, Sofia"
data[].orders[].order.delivery нет object | null
data[].orders[].order.delivery.service_id нет integer:int64 | null min: 1 1
data[].orders[].order.delivery.delivery_type да enum | null enum: door, pickup_point Normalized delivery channel derived from the configured delivery service. Null when the service type is unknown. "door"
data[].orders[].order.delivery.is_courier да boolean True for door delivery; false for pickup-point delivery or an unknown service type. true
data[].orders[].order.delivery.status нет string | null "created"
data[].orders[].order.delivery.track_number нет string | null "CDEK-123456789"
data[].orders[].order.delivery.pickup_point_id нет string | null "SOFIA-01"
data[].orders[].order.delivery.source_id нет string | null "cdek-15"
data[].orders[].order.delivery.tariff_code нет integer:int64 | null 136
data[].orders[].order.delivery.additional_services нет object Values of additional CDEK services configured for the selected integration. Boolean true enables a code-only service; other values are sent as the CDEK parameter. {"TRYING_ON":true,"PART_DELIV":false,"PACKAGE_1":2}
data[].orders[].order.delivery.label нет string:uri | null "https://betawms.ffcdek.ru/labels/CDEK-123456789.pdf"
data[].orders[].order.delivery.delivery_date нет string:date | null "2026-07-16"
data[].orders[].order.delivery.delivery_time_start нет string:time | null "09:00:00Z"
data[].orders[].order.delivery.delivery_time_end нет string:time | null "18:00:00Z"
data[].orders[].order.comments нет object | null
data[].orders[].order.comments.delivery_service_text нет string | null "Call before delivery"
data[].orders[].order.comments.inner_text нет string | null "VIP customer"
data[].orders[].order.offers да array<SendDocumentOrderLine>
data[].orders[].order.offers[] нет SendDocumentOrderLine
data[].orders[].order.offers[].id да integer:int64 min: 1 7001
data[].orders[].order.offers[].product_id нет integer:int64 | null min: 1 1201
data[].orders[].order.offers[].quantity нет number:float | null 2
data[].orders[].order.offers[].estimated_price нет number:float | null 19.5
data[].orders[].order.offers[].price нет number:float | null 19.99
data[].orders[].order.offers[].expiration_date нет string:date | null "2027-01-15"
data[].orders[].order.offers[].batch нет string | null "LOT-2026"
data[].orders[].order.offers[].operation_user_id нет integer:int64 | null min: 1 9
data[].orders[].order.offers[].product нет object | null
data[].orders[].order.offers[].reservation нет object | null Reservation totals for one order line.
data[].orders[].order.offers[].reservation_items нет array<OrderReservationItem>
data[].orders[].order.offers[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data[].orders[].order.offers[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data[].orders[].order.datamatrix_codes да array<DataMatrix>
data[].orders[].order.datamatrix_codes[] нет DataMatrix Код DataMatrix для маркированного товара.
data[].orders[].order.datamatrix_codes[].id да integer:int64 readOnly min: 1 1001
data[].orders[].order.datamatrix_codes[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data[].orders[].order.datamatrix_codes[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data[].orders[].order.datamatrix_codes[].domain_id нет integer:int64 | null min: 1 3
data[].orders[].order.datamatrix_codes[].warehouse_id нет integer:int64 | null min: 1 42
data[].orders[].order.datamatrix_codes[].status_id нет enum:int64 | null enum: 0, 1, 2 0 - Imported and available for future warehouse operations. 1 - Reserved or attached by an operational document. 2 - Used by an outbound or completed operation. 0
data[].orders[].order.datamatrix_codes[].acceptance_id нет integer:int64 | null min: 1 5101
data[].orders[].order.datamatrix_codes[].order_id нет integer:int64 | null min: 1 8101
data[].orders[].order.datamatrix_codes[].product_id нет integer:int64 | null min: 1 1201
data[].orders[].order.datamatrix_codes[].barcode нет string | null maxLength: 14 "04601234567890"
data[].orders[].order.datamatrix_codes[].short_code нет string | null maxLength: 14 "ABC123"
data[].orders[].order.datamatrix_codes[].crypto_tail нет string | null "CRYPTO"
data[].orders[].order.datamatrix_codes[].datamatrix нет string | null maxLength: 125 "010460123456789021ABC123"
data[].orders[].order.datamatrix_codes[].production_date нет string:date | null "2026-01-15"
data[].orders[].order.datamatrix_codes[].expiration_date нет string:date | null "2027-01-15"
data[].orders[].order.datamatrix_codes[].batch нет string | null "LOT-2026"
data[].orders[].order.datamatrix_codes[].used_at нет string:date-time | null "2026-07-14T10:30:00Z"
data[].orders[].order.warehouse нет object | null
data[].orders[].order.warehouse.id да integer:int64 min: 1 42
data[].orders[].order.warehouse.name да string "Warehouse Sofia"
data[].orders[].order.warehouse.type_id нет integer:int64 | null 2
data[].orders[].order.warehouse.parent_id нет integer:int64 | null min: 1 41
data[].orders[].order.shop нет object | null
data[].orders[].order.shop.id да integer:int64 min: 1 12
data[].orders[].order.shop.name да string "Demo Online Store"
data[].orders[].order.shop.status_id нет integer:int64 | null 1
data[].orders[].order.company нет object | null
data[].orders[].order.company.id да integer:int64 min: 1 7
data[].orders[].order.company.name да string "Demo Company"
data[].orders[].order.company.legal_name нет string | null "Demo Company Ltd."
data[].orders[].order.place нет object | null
data[].orders[].order.accumulation_place нет object | null
data[].orders[].order.measurements нет object | null
data[].orders[].order.settings нет object | null
data[].orders[].order.consumables да array<object>
data[].orders[].order.consumables[] нет object
data[].orders[].order.wildberries нет object | null
data[].orders[].order.wildberries.completed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data[].orders[].order.batch_matches да array<object>
data[].orders[].order.batch_matches[] нет object
links да PaginationLinks
links.first да string:uri | null "https://betawms.ffcdek.ru/api/v2/orders?page=1"
links.last да string:uri | null "https://betawms.ffcdek.ru/api/v2/orders?page=2"
links.prev да string:uri | null
links.next да string:uri | null "https://betawms.ffcdek.ru/api/v2/orders?page=2"
meta да PaginationMeta
meta.api_version да enum enum: v2 "v2"
meta.current_page да integer:int32 min: 1 1
meta.from да integer:int32 | null min: 1 1
meta.last_page да integer:int32 min: 1 2
meta.path да string:uri "https://betawms.ffcdek.ru/api/v2/orders"
meta.per_page да integer:int32 min: 1 50
meta.to да integer:int32 | null min: 1 50
meta.total да integer:int32 min: 0 73

Примеры ответа

success

{
  "data": [
    {
      "id": 740,
      "domain_id": 3,
      "status_id": 1,
      "status": {
        "id": 1,
        "name": "Открыт",
        "color": "#2457c5",
        "background_color": "#eaf0ff"
      },
      "warehouse_id": 42,
      "warehouse": {
        "id": 42,
        "name": "Warehouse Sofia",
        "type_id": 2,
        "parent_id": 41
      },
      "delivery_service_ids": [
        17
      ],
      "delivery_services": [
        {
          "id": 17,
          "name": "Wildberries FBS",
          "status_id": 1,
          "external_id": "wb-fbs",
          "source_id": "wildberries",
          "delivery_type": "pickup_point",
          "is_courier": false
        }
      ],
      "document_date": "2026-08-11",
      "closed_at": "2026-08-11T10:15:00Z",
      "comment": "Wildberries shipment 740",
      "order_count": 1,
      "processing": {
        "mode": "standard",
        "pipeline": [
          "assignment",
          "marking",
          "transfer"
        ],
        "state": "open",
        "batch_profile_id": null,
        "batch_profile": null,
        "composition_frozen_at": null,
        "batch_started_at": null,
        "batch_completed_at": null
      },
      "wildberries": {
        "fulfillment_state": "delivered",
        "error_message": null,
        "processed_at": "2026-08-11T10:15:00Z",
        "supplies": [
          {
            "id": 3201,
            "account_id": 71,
            "external_id": "WB-GI-740",
            "name": "Поставка 740",
            "state": "delivered",
            "state_name": "Доставлена",
            "destination_type": "office",
            "destination_office_id": 507,
            "is_automatic": false,
            "is_b2b": false,
            "cargo_type": "box",
            "cross_border_type": null,
            "order_count": 1,
            "current_qr": {
              "id": 3301,
              "kind": "supply_qr",
              "format": "svg",
              "width": 580,
              "height": 400,
              "barcode": "WB-GI-740",
              "part_a": null,
              "part_b": null,
              "content_hash": "sha256:qr-example",
              "content_available": true,
              "is_current": true,
              "fetched_at": "2026-08-11T09:00:00Z",
              "last_printed_at": null,
              "print_count": 0
            },
            "boxes": [

            ],
            "last_error": {
              "code": null,
              "message": null
            },
            "remote_created_at": "2026-08-11T09:00:00Z",
            "remote_closed_at": null,
            "last_synced_at": "2026-08-11T10:15:00Z",
            "delivered_at": "2026-08-11T10:15:00Z"
          }
        ]
      },
      "orders": [
        {
          "assignment_id": 8801,
          "marked_at": "2026-08-11T09:30:00Z",
          "created_at": "2026-08-11T09:00:00Z",
          "updated_at": "2026-08-11T09:30:00Z",
          "order": {
            "id": 49060,
            "external_id": "WB-900001234",
            "status_id": 20,
            "warehouse_id": 42,
            "shop_id": 12,
            "order_date": "2026-08-10",
            "send_date": "2026-08-11",
            "amounts": {
              "shipping_price": 0,
              "shipping_cost": 0,
              "sum": 39.98,
              "cod_sum": 0
            },
            "contact": {
              "first_name": "Иван",
              "middle_name": null,
              "last_name": "Петров",
              "phone": "+359888123456",
              "email": "customer@example.com",
              "country_id": 100,
              "city_id": 200,
              "postcode": "1000",
              "latitude": 42.6977,
              "longitude": 23.3219,
              "full_address": "Sofia"
            },
            "delivery": {
              "service_id": 17,
              "delivery_type": "pickup_point",
              "is_courier": false,
              "status": "created",
              "track_number": "WB-900001234",
              "pickup_point_id": "WB-SOF-01",
              "source_id": "wildberries",
              "tariff_code": null,
              "additional_services": {
              },
              "label": null,
              "delivery_date": "2026-08-12",
              "delivery_time_start": null,
              "delivery_time_end": null
            },
            "comments": {
              "delivery_service_text": null,
              "inner_text": "Клиентский пример для документа 740"
            },
            "offers": [
              {
                "id": 7001,
                "product_id": 1201,
                "quantity": 2,
                "estimated_price": 19.5,
                "price": 19.99,
                "expiration_date": "2027-01-15",
                "batch": "LOT-2026",
                "operation_user_id": 9,
                "product": {
                  "id": 1201,
                  "external_id": "EXT-10045",
                  "shop_id": 12,
                  "domain_id": 3,
                  "status_id": 1,
                  "type_id": 1,
                  "name": "Coffee 250g",
                  "article": "ART-001245",
                  "sku": "SKU-001245",
                  "price": 19.99,
                  "estimated_price": 21.5,
                  "image_url": null,
                  "dimensions": {
                    "x": 105,
                    "y": 200,
                    "z": 32,
                    "unit": "mm"
                  },
                  "weight": {
                    "value": 250,
                    "unit": "g"
                  },
                  "datamatrix_required": true,
                  "expiration_required": true,
                  "comment": null,
                  "description": "Ground coffee package",
                  "barcodes": [
                    {
                      "barcode": "4601234567890",
                      "is_main": true
                    }
                  ],
                  "package": {
                    "kind": "unit",
                    "parent_product_id": null,
                    "base_product_id": null,
                    "multiplicity": null,
                    "base_multiplicity": null,
                    "depth": 0
                  },
                  "created_at": "2026-08-01T09:00:00Z",
                  "updated_at": "2026-08-10T09:00:00Z"
                },
                "reservation": {
                  "required_qty": 2,
                  "reserved_qty": 2,
                  "unreserved_qty": 0,
                  "missing_qty": 0,
                  "status": "reserved"
                },
                "reservation_items": [

                ],
                "created_at": "2026-08-10T09:00:00Z",
                "updated_at": "2026-08-10T09:00:00Z"
              }
            ],
            "datamatrix_codes": [
              {
                "id": 6101,
                "domain_id": 3,
                "warehouse_id": 42,
                "status_id": 1,
                "acceptance_id": 5101,
                "order_id": 49060,
                "product_id": 1201,
                "barcode": "04601234567890",
                "short_code": "ABC123",
                "crypto_tail": "CRYPTO",
                "datamatrix": "010460123456789021ABC123",
                "production_date": "2026-01-15",
                "expiration_date": "2027-01-15",
                "batch": "LOT-2026",
                "created_at": "2026-08-11T09:15:00Z",
                "updated_at": "2026-08-11T09:15:00Z",
                "used_at": null
              }
            ],
            "warehouse": {
              "id": 42,
              "name": "Warehouse Sofia",
              "type_id": 2,
              "parent_id": 41
            },
            "shop": {
              "id": 12,
              "name": "Demo Online Store",
              "status_id": 1
            },
            "company": {
              "id": 7,
              "name": "Demo Company",
              "legal_name": "Demo Company Ltd."
            },
            "place": null,
            "accumulation_place": null,
            "measurements": {
              "places": 1,
              "dimensions": {
                "x": 220,
                "y": 160,
                "z": 120,
                "unit": "mm"
              },
              "weight": {
                "value": 600,
                "unit": "g"
              }
            },
            "settings": {
              "blank_url": null
            },
            "consumables": [

            ],
            "wildberries": {
              "id": 2101,
              "account_id": 71,
              "wb_order_id": "900001234",
              "order_uid": "WB-UID-49060",
              "rid": "WB-RID-49060",
              "product_id": 1201,
              "state": "confirmed",
              "state_name": "Подтверждён",
              "fulfillment_state": "delivered",
              "fulfillment_state_name": "Доставлен",
              "supplier_status": "confirm",
              "wb_status": "sold",
              "supply_id": 3201,
              "external_supply_id": "WB-GI-740",
              "supply_state": "delivered",
              "delivery_type": "fbs",
              "cross_border_type": null,
              "is_b2b": false,
              "wb_warehouse_id": 507,
              "office_id": 507,
              "nm_id": 12345678,
              "chrt_id": 87654321,
              "article": "ART-001245",
              "skus": [
                "4601234567890"
              ],
              "required_meta": [
                "sgtin"
              ],
              "optional_meta": [

              ],
              "meta_state": "accepted",
              "sticker_state": "ready",
              "prices": {
                "price_minor": 1999,
                "final_price_minor": 1999,
                "sale_price_minor": 1999,
                "currency": "RUB"
              },
              "markings": [
                {
                  "id": 1,
                  "datamatrix_id": 6101,
                  "type": "sgtin",
                  "masked_value": "010460…ABC123",
                  "value_hash": "sha256:example",
                  "state": "accepted",
                  "remote_decision": "accepted",
                  "error_code": null,
                  "error_message": null,
                  "submitted_at": "2026-08-11T09:30:00Z",
                  "verified_at": "2026-08-11T09:31:00Z",
                  "ambiguous_at": null
                }
              ],
              "current_sticker": {
                "id": 3401,
                "kind": "order_sticker",
                "format": "png",
                "width": 580,
                "height": 400,
                "barcode": "WB-900001234",
                "part_a": "123456",
                "part_b": "7890",
                "content_hash": "sha256:sticker-example",
                "content_available": true,
                "is_current": true,
                "fetched_at": "2026-08-11T09:25:00Z",
                "last_printed_at": null,
                "print_count": 0
              },
              "last_error": {
                "code": null,
                "message": null
              },
              "remote_created_at": "2026-08-10T09:00:00Z",
              "seller_date": "2026-08-10",
              "delivery_date": "2026-08-12",
              "confirmed_at": "2026-08-11T09:20:00Z",
              "completed_at": "2026-08-11T10:15:00Z",
              "imported_at": "2026-08-10T09:05:00Z",
              "mapped_at": "2026-08-10T09:06:00Z",
              "reserved_at": "2026-08-11T09:10:00Z",
              "remote_status_checked_at": "2026-08-11T10:15:00Z"
            },
            "batch_matches": [

            ]
          }
        }
      ],
      "created_at": "2026-08-11T08:45:00Z",
      "updated_at": "2026-08-11T10:15:00Z"
    }
  ],
  "links": {
    "first": "https://betawms.ffcdek.ru/api/v2/send-documents?page=1",
    "last": "https://betawms.ffcdek.ru/api/v2/send-documents?page=3",
    "prev": null,
    "next": "https://betawms.ffcdek.ru/api/v2/send-documents?page=2"
  },
  "meta": {
    "api_version": "v2",
    "current_page": 1,
    "from": 1,
    "last_page": 3,
    "path": "https://betawms.ffcdek.ru/api/v2/send-documents",
    "per_page": 20,
    "to": 20,
    "total": 43
  }
}

401 Требуется аутентификация

Unauthorized

Требуется аутентификация.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

AUTH_REQUIRED

{
  "message": "Authentication is required.",
  "error": "AUTH_REQUIRED"
}

403 Доступ запрещен

Forbidden

Аутентифицированному аккаунту запрещено выполнять это действие.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

FORBIDDEN

{
  "message": "The authenticated account is not allowed to perform this action.",
  "error": "FORBIDDEN"
}

429 Превышен лимит запросов

TooManyRequests

Превышен лимит запросов.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "Too Many Attempts."
error да string "RATE_LIMITED"

500 Внутренняя ошибка сервера

InternalServerError

Произошла непредвиденная ошибка сервера.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

INTERNAL_SERVER_ERROR

{
  "message": "An unexpected server error occurred.",
  "error": "INTERNAL_SERVER_ERROR"
}
POST /api/v2/send-documents

Создать документ отправки

operationIdcreateSendDocuments
РазделДокументы отправок
БезопасностьbearerAuth

Create send document. Запрос использует описанную payload-схему, проверяет видимость tenant и возвращает нормализованный API envelope.

Пример HTTP-запроса (cURL)

Подставьте свой сервер и токен. ID из примера замените реальными доступными ID. Для тела запроса сохраните подходящий JSON из раздела ниже в request.json; перед отправкой замените демонстрационные значения. Заголовок Idempotency-Key использует ключ одной логической операции.

curl --globoff --request POST "${NWMS_BASE_URL}/api/v2/send-documents" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer ${NWMS_TOKEN}" \
  --header "Idempotency-Key: ${NWMS_REQUEST_KEY}" \
  --header "Content-Type: application/json" \
  --data-binary @request.json

Параметры

Имя Где Обязательное Тип Style Explode Ограничения Описание Пример
Idempotency-Key header нет string maxLength: 191 Опциональный ключ идемпотентности для write-запросов API v2. Успешные ответы 2xx/3xx повторяются для того же ключа и идентичного payload в течение одного дня. Тот же ключ с другим payload возвращает 409. "ord-create-20260714-001"

Тело запроса

CreateSendDocumentRequest обязательно

Поле Обязательное Тип Флаги Ограничения Описание Пример
data да CreateSendDocumentPayload Creates an open shipment document. Warehouse and delivery services must be active and visible in tenant scope.
data.document_date да string:date "2026-08-11"
data.warehouse_id да integer:int64 min: 1 42
data.delivery_service_ids да array<integer:int64> minItems: 1
data.delivery_service_ids[] нет integer:int64 min: 1 17
data.comment нет string | null maxLength: 1000 "Wildberries shipment 740"

Примеры запроса

default

{
  "data": {
    "document_date": "2026-08-11",
    "warehouse_id": 42,
    "delivery_service_ids": [
      17
    ],
    "comment": "Wildberries shipment 740"
  }
}

Ответы

201 Created.

Created.

Поле Обязательное Тип Флаги Ограничения Описание Пример
data да SendDocument Outbound shipment document with its complete operational composition. Collection relations are empty unless requested through include; the item endpoint always loads them.
data.id да integer:int64 readOnly min: 1 1001
data.created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.domain_id нет integer:int64 | null min: 1 3
data.status_id нет integer:int64 | null 1
data.status нет object | null
data.status.id да integer:int64 1
data.status.name да string "Открыт"
data.status.color нет string | null "#2457c5"
data.status.background_color нет string | null "#eaf0ff"
data.warehouse_id нет integer:int64 | null min: 1 42
data.warehouse нет object | null
data.warehouse.id да integer:int64 min: 1 42
data.warehouse.name да string "Warehouse Sofia"
data.warehouse.type_id нет integer:int64 | null 2
data.warehouse.parent_id нет integer:int64 | null min: 1 41
data.delivery_service_ids да array<integer:int64>
data.delivery_service_ids[] нет integer:int64 min: 1 17
data.delivery_services да array<SendDocumentDeliveryService>
data.delivery_services[] нет SendDocumentDeliveryService
data.delivery_services[].id да integer:int64 min: 1 17
data.delivery_services[].name да string "Wildberries FBS"
data.delivery_services[].status_id да integer:int64 1
data.delivery_services[].external_id нет string | null "wb-fbs"
data.delivery_services[].source_id нет string | null "wildberries"
data.delivery_services[].delivery_type нет string | null "pickup_point"
data.delivery_services[].is_courier да boolean false
data.document_date нет string:date | null "2026-08-11"
data.closed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.comment нет string | null "Wildberries shipment 740"
data.order_count да integer:int64 min: 0 1
data.processing да SendDocumentProcessing
data.processing.mode нет string | null "standard"
data.processing.pipeline да array<string>
data.processing.pipeline[] нет string "assignment"
data.processing.state нет string | null "open"
data.processing.batch_profile_id нет integer:int64 | null min: 1 31
data.processing.batch_profile нет object | null
data.processing.batch_profile.id да integer:int64 min: 1 31
data.processing.batch_profile.name да string "Standard packing"
data.processing.batch_profile.processing_mode нет string | null "standard"
data.processing.composition_frozen_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.processing.batch_started_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.processing.batch_completed_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.wildberries да SendDocumentWildberries Wildberries document-level state and safe supply/QR/sticker artifact metadata. Binary label content and encrypted provider payloads are not returned.
data.wildberries.fulfillment_state нет string | null "delivered"
data.wildberries.error_message нет string | null ""
data.wildberries.processed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.wildberries.supplies да array<object>
data.wildberries.supplies[] нет object
data.orders да array<SendDocumentOrderAssignment>
data.orders[] нет SendDocumentOrderAssignment
data.orders[].assignment_id да integer:int64 min: 1 8801
data.orders[].marked_at нет string:date-time | null "2026-08-11T09:30:00Z"
data.orders[].created_at нет string:date-time | null "2026-08-11T09:00:00Z"
data.orders[].updated_at нет string:date-time | null "2026-08-11T09:30:00Z"
data.orders[].order да object | null Complete order snapshot embedded into a shipment document. Marketplace and batch objects preserve provider-specific fields.
data.orders[].order.id да integer:int64 min: 1 49060
data.orders[].order.external_id нет string | null "WB-900001234"
data.orders[].order.status_id нет integer:int64 | null 20
data.orders[].order.warehouse_id нет integer:int64 | null min: 1 42
data.orders[].order.shop_id нет integer:int64 | null min: 1 12
data.orders[].order.order_date нет string:date | null "2026-08-10"
data.orders[].order.send_date нет string:date | null "2026-08-11"
data.orders[].order.amounts нет object | null
data.orders[].order.amounts.shipping_price нет number:float | null 8.6
data.orders[].order.amounts.shipping_cost нет number:float | null 0
data.orders[].order.amounts.sum нет number:float | null 39.98
data.orders[].order.amounts.cod_sum нет number:float | null 48.58
data.orders[].order.contact нет object | null
data.orders[].order.contact.first_name нет string | null "Ivan"
data.orders[].order.contact.middle_name нет string | null "Ivanovich"
data.orders[].order.contact.last_name нет string | null "Petrov"
data.orders[].order.contact.phone нет string | null "+359888123456"
data.orders[].order.contact.email нет string:email | null "customer@example.com"
data.orders[].order.contact.country_id нет integer:int64 | null min: 1 100
data.orders[].order.contact.city_id нет integer:int64 | null min: 1 200
data.orders[].order.contact.postcode нет string | null "1000"
data.orders[].order.contact.latitude нет number:float | null min: -90
max: 90
42.6977
data.orders[].order.contact.longitude нет number:float | null min: -180
max: 180
23.3219
data.orders[].order.contact.full_address нет string | null "1 Vitosha Boulevard, Sofia"
data.orders[].order.delivery нет object | null
data.orders[].order.delivery.service_id нет integer:int64 | null min: 1 1
data.orders[].order.delivery.delivery_type да enum | null enum: door, pickup_point Normalized delivery channel derived from the configured delivery service. Null when the service type is unknown. "door"
data.orders[].order.delivery.is_courier да boolean True for door delivery; false for pickup-point delivery or an unknown service type. true
data.orders[].order.delivery.status нет string | null "created"
data.orders[].order.delivery.track_number нет string | null "CDEK-123456789"
data.orders[].order.delivery.pickup_point_id нет string | null "SOFIA-01"
data.orders[].order.delivery.source_id нет string | null "cdek-15"
data.orders[].order.delivery.tariff_code нет integer:int64 | null 136
data.orders[].order.delivery.additional_services нет object Values of additional CDEK services configured for the selected integration. Boolean true enables a code-only service; other values are sent as the CDEK parameter. {"TRYING_ON":true,"PART_DELIV":false,"PACKAGE_1":2}
data.orders[].order.delivery.label нет string:uri | null "https://betawms.ffcdek.ru/labels/CDEK-123456789.pdf"
data.orders[].order.delivery.delivery_date нет string:date | null "2026-07-16"
data.orders[].order.delivery.delivery_time_start нет string:time | null "09:00:00Z"
data.orders[].order.delivery.delivery_time_end нет string:time | null "18:00:00Z"
data.orders[].order.comments нет object | null
data.orders[].order.comments.delivery_service_text нет string | null "Call before delivery"
data.orders[].order.comments.inner_text нет string | null "VIP customer"
data.orders[].order.offers да array<SendDocumentOrderLine>
data.orders[].order.offers[] нет SendDocumentOrderLine
data.orders[].order.offers[].id да integer:int64 min: 1 7001
data.orders[].order.offers[].product_id нет integer:int64 | null min: 1 1201
data.orders[].order.offers[].quantity нет number:float | null 2
data.orders[].order.offers[].estimated_price нет number:float | null 19.5
data.orders[].order.offers[].price нет number:float | null 19.99
data.orders[].order.offers[].expiration_date нет string:date | null "2027-01-15"
data.orders[].order.offers[].batch нет string | null "LOT-2026"
data.orders[].order.offers[].operation_user_id нет integer:int64 | null min: 1 9
data.orders[].order.offers[].product нет object | null
data.orders[].order.offers[].product.id да integer:int64 min: 1 1201
data.orders[].order.offers[].product.external_id нет string | null "EXT-10045"
data.orders[].order.offers[].product.domain_id нет integer:int64 | null min: 1 3
data.orders[].order.offers[].product.shop_id нет integer:int64 | null min: 1 12
data.orders[].order.offers[].product.status_id нет enum:int64 | null enum: 1, 2, 3 1 - active; 2 - disabled; 3 - deleted. 1
data.orders[].order.offers[].product.type_id нет integer:int64 | null 1
data.orders[].order.offers[].product.name да string "Coffee 250g"
data.orders[].order.offers[].product.article нет string | null "ART-001245"
data.orders[].order.offers[].product.sku нет string | null "SKU-001245"
data.orders[].order.offers[].product.price нет number:float | null 19.99
data.orders[].order.offers[].product.estimated_price нет number:float | null 21.5
data.orders[].order.offers[].product.image_url нет string:uri | null "https://betawms.ffcdek.ru/offer-images/products/coffee-250g.jpg"
data.orders[].order.offers[].product.dimensions да Dimensions
data.orders[].order.offers[].product.weight да Weight
data.orders[].order.offers[].product.datamatrix_required да boolean true
data.orders[].order.offers[].product.expiration_required да boolean true
data.orders[].order.offers[].product.comment нет string | null "Keep dry"
data.orders[].order.offers[].product.description нет string | null "Ground coffee package"
data.orders[].order.offers[].product.barcodes да array<ProductBarcode>
data.orders[].order.offers[].product.package да object
data.orders[].order.offers[].product.created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].product.updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].reservation нет object | null Reservation totals for one order line.
data.orders[].order.offers[].reservation.required_qty да number:float 3
data.orders[].order.offers[].reservation.reserved_qty да number:float 1
data.orders[].order.offers[].reservation.unreserved_qty да number:float 2
data.orders[].order.offers[].reservation.missing_qty да number:float 2
data.orders[].order.offers[].reservation.status да enum enum: not_required, missing, partial, reserved Reservation state calculated from the quantity required by the order and the quantity actually reserved. "partial"
data.orders[].order.offers[].reservation_items нет array<OrderReservationItem>
data.orders[].order.offers[].reservation_items[] нет OrderReservationItem Physical product or expanded component used to explain a reservation shortage.
data.orders[].order.offers[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes да array<DataMatrix>
data.orders[].order.datamatrix_codes[] нет DataMatrix Код DataMatrix для маркированного товара.
data.orders[].order.datamatrix_codes[].id да integer:int64 readOnly min: 1 1001
data.orders[].order.datamatrix_codes[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes[].domain_id нет integer:int64 | null min: 1 3
data.orders[].order.datamatrix_codes[].warehouse_id нет integer:int64 | null min: 1 42
data.orders[].order.datamatrix_codes[].status_id нет enum:int64 | null enum: 0, 1, 2 0 - Imported and available for future warehouse operations. 1 - Reserved or attached by an operational document. 2 - Used by an outbound or completed operation. 0
data.orders[].order.datamatrix_codes[].acceptance_id нет integer:int64 | null min: 1 5101
data.orders[].order.datamatrix_codes[].order_id нет integer:int64 | null min: 1 8101
data.orders[].order.datamatrix_codes[].product_id нет integer:int64 | null min: 1 1201
data.orders[].order.datamatrix_codes[].barcode нет string | null maxLength: 14 "04601234567890"
data.orders[].order.datamatrix_codes[].short_code нет string | null maxLength: 14 "ABC123"
data.orders[].order.datamatrix_codes[].crypto_tail нет string | null "CRYPTO"
data.orders[].order.datamatrix_codes[].datamatrix нет string | null maxLength: 125 "010460123456789021ABC123"
data.orders[].order.datamatrix_codes[].production_date нет string:date | null "2026-01-15"
data.orders[].order.datamatrix_codes[].expiration_date нет string:date | null "2027-01-15"
data.orders[].order.datamatrix_codes[].batch нет string | null "LOT-2026"
data.orders[].order.datamatrix_codes[].used_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.warehouse нет object | null
data.orders[].order.warehouse.id да integer:int64 min: 1 42
data.orders[].order.warehouse.name да string "Warehouse Sofia"
data.orders[].order.warehouse.type_id нет integer:int64 | null 2
data.orders[].order.warehouse.parent_id нет integer:int64 | null min: 1 41
data.orders[].order.shop нет object | null
data.orders[].order.shop.id да integer:int64 min: 1 12
data.orders[].order.shop.name да string "Demo Online Store"
data.orders[].order.shop.status_id нет integer:int64 | null 1
data.orders[].order.company нет object | null
data.orders[].order.company.id да integer:int64 min: 1 7
data.orders[].order.company.name да string "Demo Company"
data.orders[].order.company.legal_name нет string | null "Demo Company Ltd."
data.orders[].order.place нет object | null
data.orders[].order.accumulation_place нет object | null
data.orders[].order.measurements нет object | null
data.orders[].order.settings нет object | null
data.orders[].order.consumables да array<object>
data.orders[].order.consumables[] нет object
data.orders[].order.wildberries нет object | null
data.orders[].order.wildberries.completed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.orders[].order.batch_matches да array<object>
data.orders[].order.batch_matches[] нет object
meta да ResponseMeta
meta.api_version да enum enum: v2 "v2"
meta.deleted нет boolean true
meta.id нет integer:int64 | null min: 1 1001
meta.command_replayed нет boolean True when an idempotent cross-dock command returned the original successful result. false
meta.crossdock_configuration нет object | null
meta.crossdock_configuration.physical_warehouse_id да integer:int64 min: 1 42
meta.crossdock_configuration.enabled да boolean true
meta.crossdock_configuration.process_version да string "direct_order_v1"

Примеры ответа

success

{
  "data": {
    "id": 740,
    "domain_id": 3,
    "status_id": 1,
    "status": {
      "id": 1,
      "name": "Открыт",
      "color": "#2457c5",
      "background_color": "#eaf0ff"
    },
    "warehouse_id": 42,
    "warehouse": {
      "id": 42,
      "name": "Warehouse Sofia",
      "type_id": 2,
      "parent_id": 41
    },
    "delivery_service_ids": [
      17
    ],
    "delivery_services": [
      {
        "id": 17,
        "name": "Wildberries FBS",
        "status_id": 1,
        "external_id": "wb-fbs",
        "source_id": "wildberries",
        "delivery_type": "pickup_point",
        "is_courier": false
      }
    ],
    "document_date": "2026-08-11",
    "closed_at": "2026-08-11T10:15:00Z",
    "comment": "Wildberries shipment 740",
    "order_count": 1,
    "processing": {
      "mode": "standard",
      "pipeline": [
        "assignment",
        "marking",
        "transfer"
      ],
      "state": "open",
      "batch_profile_id": null,
      "batch_profile": null,
      "composition_frozen_at": null,
      "batch_started_at": null,
      "batch_completed_at": null
    },
    "wildberries": {
      "fulfillment_state": "delivered",
      "error_message": null,
      "processed_at": "2026-08-11T10:15:00Z",
      "supplies": [
        {
          "id": 3201,
          "account_id": 71,
          "external_id": "WB-GI-740",
          "name": "Поставка 740",
          "state": "delivered",
          "state_name": "Доставлена",
          "destination_type": "office",
          "destination_office_id": 507,
          "is_automatic": false,
          "is_b2b": false,
          "cargo_type": "box",
          "cross_border_type": null,
          "order_count": 1,
          "current_qr": {
            "id": 3301,
            "kind": "supply_qr",
            "format": "svg",
            "width": 580,
            "height": 400,
            "barcode": "WB-GI-740",
            "part_a": null,
            "part_b": null,
            "content_hash": "sha256:qr-example",
            "content_available": true,
            "is_current": true,
            "fetched_at": "2026-08-11T09:00:00Z",
            "last_printed_at": null,
            "print_count": 0
          },
          "boxes": [

          ],
          "last_error": {
            "code": null,
            "message": null
          },
          "remote_created_at": "2026-08-11T09:00:00Z",
          "remote_closed_at": null,
          "last_synced_at": "2026-08-11T10:15:00Z",
          "delivered_at": "2026-08-11T10:15:00Z"
        }
      ]
    },
    "orders": [
      {
        "assignment_id": 8801,
        "marked_at": "2026-08-11T09:30:00Z",
        "created_at": "2026-08-11T09:00:00Z",
        "updated_at": "2026-08-11T09:30:00Z",
        "order": {
          "id": 49060,
          "external_id": "WB-900001234",
          "status_id": 20,
          "warehouse_id": 42,
          "shop_id": 12,
          "order_date": "2026-08-10",
          "send_date": "2026-08-11",
          "amounts": {
            "shipping_price": 0,
            "shipping_cost": 0,
            "sum": 39.98,
            "cod_sum": 0
          },
          "contact": {
            "first_name": "Иван",
            "middle_name": null,
            "last_name": "Петров",
            "phone": "+359888123456",
            "email": "customer@example.com",
            "country_id": 100,
            "city_id": 200,
            "postcode": "1000",
            "latitude": 42.6977,
            "longitude": 23.3219,
            "full_address": "Sofia"
          },
          "delivery": {
            "service_id": 17,
            "delivery_type": "pickup_point",
            "is_courier": false,
            "status": "created",
            "track_number": "WB-900001234",
            "pickup_point_id": "WB-SOF-01",
            "source_id": "wildberries",
            "tariff_code": null,
            "additional_services": {
            },
            "label": null,
            "delivery_date": "2026-08-12",
            "delivery_time_start": null,
            "delivery_time_end": null
          },
          "comments": {
            "delivery_service_text": null,
            "inner_text": "Клиентский пример для документа 740"
          },
          "offers": [
            {
              "id": 7001,
              "product_id": 1201,
              "quantity": 2,
              "estimated_price": 19.5,
              "price": 19.99,
              "expiration_date": "2027-01-15",
              "batch": "LOT-2026",
              "operation_user_id": 9,
              "product": {
                "id": 1201,
                "external_id": "EXT-10045",
                "shop_id": 12,
                "domain_id": 3,
                "status_id": 1,
                "type_id": 1,
                "name": "Coffee 250g",
                "article": "ART-001245",
                "sku": "SKU-001245",
                "price": 19.99,
                "estimated_price": 21.5,
                "image_url": null,
                "dimensions": {
                  "x": 105,
                  "y": 200,
                  "z": 32,
                  "unit": "mm"
                },
                "weight": {
                  "value": 250,
                  "unit": "g"
                },
                "datamatrix_required": true,
                "expiration_required": true,
                "comment": null,
                "description": "Ground coffee package",
                "barcodes": [
                  {
                    "barcode": "4601234567890",
                    "is_main": true
                  }
                ],
                "package": {
                  "kind": "unit",
                  "parent_product_id": null,
                  "base_product_id": null,
                  "multiplicity": null,
                  "base_multiplicity": null,
                  "depth": 0
                },
                "created_at": "2026-08-01T09:00:00Z",
                "updated_at": "2026-08-10T09:00:00Z"
              },
              "reservation": {
                "required_qty": 2,
                "reserved_qty": 2,
                "unreserved_qty": 0,
                "missing_qty": 0,
                "status": "reserved"
              },
              "reservation_items": [

              ],
              "created_at": "2026-08-10T09:00:00Z",
              "updated_at": "2026-08-10T09:00:00Z"
            }
          ],
          "datamatrix_codes": [
            {
              "id": 6101,
              "domain_id": 3,
              "warehouse_id": 42,
              "status_id": 1,
              "acceptance_id": 5101,
              "order_id": 49060,
              "product_id": 1201,
              "barcode": "04601234567890",
              "short_code": "ABC123",
              "crypto_tail": "CRYPTO",
              "datamatrix": "010460123456789021ABC123",
              "production_date": "2026-01-15",
              "expiration_date": "2027-01-15",
              "batch": "LOT-2026",
              "created_at": "2026-08-11T09:15:00Z",
              "updated_at": "2026-08-11T09:15:00Z",
              "used_at": null
            }
          ],
          "warehouse": {
            "id": 42,
            "name": "Warehouse Sofia",
            "type_id": 2,
            "parent_id": 41
          },
          "shop": {
            "id": 12,
            "name": "Demo Online Store",
            "status_id": 1
          },
          "company": {
            "id": 7,
            "name": "Demo Company",
            "legal_name": "Demo Company Ltd."
          },
          "place": null,
          "accumulation_place": null,
          "measurements": {
            "places": 1,
            "dimensions": {
              "x": 220,
              "y": 160,
              "z": 120,
              "unit": "mm"
            },
            "weight": {
              "value": 600,
              "unit": "g"
            }
          },
          "settings": {
            "blank_url": null
          },
          "consumables": [

          ],
          "wildberries": {
            "id": 2101,
            "account_id": 71,
            "wb_order_id": "900001234",
            "order_uid": "WB-UID-49060",
            "rid": "WB-RID-49060",
            "product_id": 1201,
            "state": "confirmed",
            "state_name": "Подтверждён",
            "fulfillment_state": "delivered",
            "fulfillment_state_name": "Доставлен",
            "supplier_status": "confirm",
            "wb_status": "sold",
            "supply_id": 3201,
            "external_supply_id": "WB-GI-740",
            "supply_state": "delivered",
            "delivery_type": "fbs",
            "cross_border_type": null,
            "is_b2b": false,
            "wb_warehouse_id": 507,
            "office_id": 507,
            "nm_id": 12345678,
            "chrt_id": 87654321,
            "article": "ART-001245",
            "skus": [
              "4601234567890"
            ],
            "required_meta": [
              "sgtin"
            ],
            "optional_meta": [

            ],
            "meta_state": "accepted",
            "sticker_state": "ready",
            "prices": {
              "price_minor": 1999,
              "final_price_minor": 1999,
              "sale_price_minor": 1999,
              "currency": "RUB"
            },
            "markings": [
              {
                "id": 1,
                "datamatrix_id": 6101,
                "type": "sgtin",
                "masked_value": "010460…ABC123",
                "value_hash": "sha256:example",
                "state": "accepted",
                "remote_decision": "accepted",
                "error_code": null,
                "error_message": null,
                "submitted_at": "2026-08-11T09:30:00Z",
                "verified_at": "2026-08-11T09:31:00Z",
                "ambiguous_at": null
              }
            ],
            "current_sticker": {
              "id": 3401,
              "kind": "order_sticker",
              "format": "png",
              "width": 580,
              "height": 400,
              "barcode": "WB-900001234",
              "part_a": "123456",
              "part_b": "7890",
              "content_hash": "sha256:sticker-example",
              "content_available": true,
              "is_current": true,
              "fetched_at": "2026-08-11T09:25:00Z",
              "last_printed_at": null,
              "print_count": 0
            },
            "last_error": {
              "code": null,
              "message": null
            },
            "remote_created_at": "2026-08-10T09:00:00Z",
            "seller_date": "2026-08-10",
            "delivery_date": "2026-08-12",
            "confirmed_at": "2026-08-11T09:20:00Z",
            "completed_at": "2026-08-11T10:15:00Z",
            "imported_at": "2026-08-10T09:05:00Z",
            "mapped_at": "2026-08-10T09:06:00Z",
            "reserved_at": "2026-08-11T09:10:00Z",
            "remote_status_checked_at": "2026-08-11T10:15:00Z"
          },
          "batch_matches": [

          ]
        }
      }
    ],
    "created_at": "2026-08-11T08:45:00Z",
    "updated_at": "2026-08-11T10:15:00Z"
  },
  "meta": {
    "api_version": "v2"
  }
}

400 Некорректный запрос

BadRequest

Некорректный запрос.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

BAD_REQUEST

{
  "message": "Bad request.",
  "error": "BAD_REQUEST"
}

401 Требуется аутентификация

Unauthorized

Требуется аутентификация.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

AUTH_REQUIRED

{
  "message": "Authentication is required.",
  "error": "AUTH_REQUIRED"
}

403 Доступ запрещен

Forbidden

Аутентифицированному аккаунту запрещено выполнять это действие.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

FORBIDDEN

{
  "message": "The authenticated account is not allowed to perform this action.",
  "error": "FORBIDDEN"
}

409 Конфликт

SendDocumentConflict

The shipment document lifecycle or composition does not allow the requested operation.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The given data was invalid."
error нет string "VALIDATION_ERROR"
errors да object {"warehouse_id":["The selected warehouse is invalid."]}

Примеры ответа

documentStateConflict

{
  "message": "Состав документа уже заморожен.",
  "errors": {
    "send_document": [
      "Состав документа уже заморожен."
    ]
  }
}

422 Ошибка валидации

ValidationError

Ошибка валидации.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The given data was invalid."
error нет string "VALIDATION_ERROR"
errors да object {"warehouse_id":["The selected warehouse is invalid."]}

Примеры ответа

validationError

{
  "message": "The given data was invalid.",
  "error": "VALIDATION_ERROR",
  "errors": {
    "warehouse_id": [
      "The selected warehouse is invalid."
    ]
  }
}

429 Превышен лимит запросов

TooManyRequests

Превышен лимит запросов.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "Too Many Attempts."
error да string "RATE_LIMITED"

500 Внутренняя ошибка сервера

InternalServerError

Произошла непредвиденная ошибка сервера.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

INTERNAL_SERVER_ERROR

{
  "message": "An unexpected server error occurred.",
  "error": "INTERNAL_SERVER_ERROR"
}
GET /api/v2/send-documents/{id}

Получить документ отправки

operationIdgetSendDocuments
РазделДокументы отправок
БезопасностьbearerAuth

Возвращает один ресурс: send document, если он существует и видим аутентифицированному аккаунту.

Пример HTTP-запроса (cURL)

Подставьте свой сервер и токен. ID из примера замените реальными доступными ID. Для тела запроса сохраните подходящий JSON из раздела ниже в request.json; перед отправкой замените демонстрационные значения. Заголовок Idempotency-Key использует ключ одной логической операции.

curl --globoff --request GET "${NWMS_BASE_URL}/api/v2/send-documents/740" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer ${NWMS_TOKEN}"

Параметры

Имя Где Обязательное Тип Style Explode Ограничения Описание Пример
id path да integer:int64 min: 1 Shipment document ID. 740

Тело запроса

Тело запроса отсутствует.

Ответы

200 Successful response.

Successful response.

Поле Обязательное Тип Флаги Ограничения Описание Пример
data да SendDocument Outbound shipment document with its complete operational composition. Collection relations are empty unless requested through include; the item endpoint always loads them.
data.id да integer:int64 readOnly min: 1 1001
data.created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.domain_id нет integer:int64 | null min: 1 3
data.status_id нет integer:int64 | null 1
data.status нет object | null
data.status.id да integer:int64 1
data.status.name да string "Открыт"
data.status.color нет string | null "#2457c5"
data.status.background_color нет string | null "#eaf0ff"
data.warehouse_id нет integer:int64 | null min: 1 42
data.warehouse нет object | null
data.warehouse.id да integer:int64 min: 1 42
data.warehouse.name да string "Warehouse Sofia"
data.warehouse.type_id нет integer:int64 | null 2
data.warehouse.parent_id нет integer:int64 | null min: 1 41
data.delivery_service_ids да array<integer:int64>
data.delivery_service_ids[] нет integer:int64 min: 1 17
data.delivery_services да array<SendDocumentDeliveryService>
data.delivery_services[] нет SendDocumentDeliveryService
data.delivery_services[].id да integer:int64 min: 1 17
data.delivery_services[].name да string "Wildberries FBS"
data.delivery_services[].status_id да integer:int64 1
data.delivery_services[].external_id нет string | null "wb-fbs"
data.delivery_services[].source_id нет string | null "wildberries"
data.delivery_services[].delivery_type нет string | null "pickup_point"
data.delivery_services[].is_courier да boolean false
data.document_date нет string:date | null "2026-08-11"
data.closed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.comment нет string | null "Wildberries shipment 740"
data.order_count да integer:int64 min: 0 1
data.processing да SendDocumentProcessing
data.processing.mode нет string | null "standard"
data.processing.pipeline да array<string>
data.processing.pipeline[] нет string "assignment"
data.processing.state нет string | null "open"
data.processing.batch_profile_id нет integer:int64 | null min: 1 31
data.processing.batch_profile нет object | null
data.processing.batch_profile.id да integer:int64 min: 1 31
data.processing.batch_profile.name да string "Standard packing"
data.processing.batch_profile.processing_mode нет string | null "standard"
data.processing.composition_frozen_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.processing.batch_started_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.processing.batch_completed_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.wildberries да SendDocumentWildberries Wildberries document-level state and safe supply/QR/sticker artifact metadata. Binary label content and encrypted provider payloads are not returned.
data.wildberries.fulfillment_state нет string | null "delivered"
data.wildberries.error_message нет string | null ""
data.wildberries.processed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.wildberries.supplies да array<object>
data.wildberries.supplies[] нет object
data.orders да array<SendDocumentOrderAssignment>
data.orders[] нет SendDocumentOrderAssignment
data.orders[].assignment_id да integer:int64 min: 1 8801
data.orders[].marked_at нет string:date-time | null "2026-08-11T09:30:00Z"
data.orders[].created_at нет string:date-time | null "2026-08-11T09:00:00Z"
data.orders[].updated_at нет string:date-time | null "2026-08-11T09:30:00Z"
data.orders[].order да object | null Complete order snapshot embedded into a shipment document. Marketplace and batch objects preserve provider-specific fields.
data.orders[].order.id да integer:int64 min: 1 49060
data.orders[].order.external_id нет string | null "WB-900001234"
data.orders[].order.status_id нет integer:int64 | null 20
data.orders[].order.warehouse_id нет integer:int64 | null min: 1 42
data.orders[].order.shop_id нет integer:int64 | null min: 1 12
data.orders[].order.order_date нет string:date | null "2026-08-10"
data.orders[].order.send_date нет string:date | null "2026-08-11"
data.orders[].order.amounts нет object | null
data.orders[].order.amounts.shipping_price нет number:float | null 8.6
data.orders[].order.amounts.shipping_cost нет number:float | null 0
data.orders[].order.amounts.sum нет number:float | null 39.98
data.orders[].order.amounts.cod_sum нет number:float | null 48.58
data.orders[].order.contact нет object | null
data.orders[].order.contact.first_name нет string | null "Ivan"
data.orders[].order.contact.middle_name нет string | null "Ivanovich"
data.orders[].order.contact.last_name нет string | null "Petrov"
data.orders[].order.contact.phone нет string | null "+359888123456"
data.orders[].order.contact.email нет string:email | null "customer@example.com"
data.orders[].order.contact.country_id нет integer:int64 | null min: 1 100
data.orders[].order.contact.city_id нет integer:int64 | null min: 1 200
data.orders[].order.contact.postcode нет string | null "1000"
data.orders[].order.contact.latitude нет number:float | null min: -90
max: 90
42.6977
data.orders[].order.contact.longitude нет number:float | null min: -180
max: 180
23.3219
data.orders[].order.contact.full_address нет string | null "1 Vitosha Boulevard, Sofia"
data.orders[].order.delivery нет object | null
data.orders[].order.delivery.service_id нет integer:int64 | null min: 1 1
data.orders[].order.delivery.delivery_type да enum | null enum: door, pickup_point Normalized delivery channel derived from the configured delivery service. Null when the service type is unknown. "door"
data.orders[].order.delivery.is_courier да boolean True for door delivery; false for pickup-point delivery or an unknown service type. true
data.orders[].order.delivery.status нет string | null "created"
data.orders[].order.delivery.track_number нет string | null "CDEK-123456789"
data.orders[].order.delivery.pickup_point_id нет string | null "SOFIA-01"
data.orders[].order.delivery.source_id нет string | null "cdek-15"
data.orders[].order.delivery.tariff_code нет integer:int64 | null 136
data.orders[].order.delivery.additional_services нет object Values of additional CDEK services configured for the selected integration. Boolean true enables a code-only service; other values are sent as the CDEK parameter. {"TRYING_ON":true,"PART_DELIV":false,"PACKAGE_1":2}
data.orders[].order.delivery.label нет string:uri | null "https://betawms.ffcdek.ru/labels/CDEK-123456789.pdf"
data.orders[].order.delivery.delivery_date нет string:date | null "2026-07-16"
data.orders[].order.delivery.delivery_time_start нет string:time | null "09:00:00Z"
data.orders[].order.delivery.delivery_time_end нет string:time | null "18:00:00Z"
data.orders[].order.comments нет object | null
data.orders[].order.comments.delivery_service_text нет string | null "Call before delivery"
data.orders[].order.comments.inner_text нет string | null "VIP customer"
data.orders[].order.offers да array<SendDocumentOrderLine>
data.orders[].order.offers[] нет SendDocumentOrderLine
data.orders[].order.offers[].id да integer:int64 min: 1 7001
data.orders[].order.offers[].product_id нет integer:int64 | null min: 1 1201
data.orders[].order.offers[].quantity нет number:float | null 2
data.orders[].order.offers[].estimated_price нет number:float | null 19.5
data.orders[].order.offers[].price нет number:float | null 19.99
data.orders[].order.offers[].expiration_date нет string:date | null "2027-01-15"
data.orders[].order.offers[].batch нет string | null "LOT-2026"
data.orders[].order.offers[].operation_user_id нет integer:int64 | null min: 1 9
data.orders[].order.offers[].product нет object | null
data.orders[].order.offers[].product.id да integer:int64 min: 1 1201
data.orders[].order.offers[].product.external_id нет string | null "EXT-10045"
data.orders[].order.offers[].product.domain_id нет integer:int64 | null min: 1 3
data.orders[].order.offers[].product.shop_id нет integer:int64 | null min: 1 12
data.orders[].order.offers[].product.status_id нет enum:int64 | null enum: 1, 2, 3 1 - active; 2 - disabled; 3 - deleted. 1
data.orders[].order.offers[].product.type_id нет integer:int64 | null 1
data.orders[].order.offers[].product.name да string "Coffee 250g"
data.orders[].order.offers[].product.article нет string | null "ART-001245"
data.orders[].order.offers[].product.sku нет string | null "SKU-001245"
data.orders[].order.offers[].product.price нет number:float | null 19.99
data.orders[].order.offers[].product.estimated_price нет number:float | null 21.5
data.orders[].order.offers[].product.image_url нет string:uri | null "https://betawms.ffcdek.ru/offer-images/products/coffee-250g.jpg"
data.orders[].order.offers[].product.dimensions да Dimensions
data.orders[].order.offers[].product.weight да Weight
data.orders[].order.offers[].product.datamatrix_required да boolean true
data.orders[].order.offers[].product.expiration_required да boolean true
data.orders[].order.offers[].product.comment нет string | null "Keep dry"
data.orders[].order.offers[].product.description нет string | null "Ground coffee package"
data.orders[].order.offers[].product.barcodes да array<ProductBarcode>
data.orders[].order.offers[].product.package да object
data.orders[].order.offers[].product.created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].product.updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].reservation нет object | null Reservation totals for one order line.
data.orders[].order.offers[].reservation.required_qty да number:float 3
data.orders[].order.offers[].reservation.reserved_qty да number:float 1
data.orders[].order.offers[].reservation.unreserved_qty да number:float 2
data.orders[].order.offers[].reservation.missing_qty да number:float 2
data.orders[].order.offers[].reservation.status да enum enum: not_required, missing, partial, reserved Reservation state calculated from the quantity required by the order and the quantity actually reserved. "partial"
data.orders[].order.offers[].reservation_items нет array<OrderReservationItem>
data.orders[].order.offers[].reservation_items[] нет OrderReservationItem Physical product or expanded component used to explain a reservation shortage.
data.orders[].order.offers[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes да array<DataMatrix>
data.orders[].order.datamatrix_codes[] нет DataMatrix Код DataMatrix для маркированного товара.
data.orders[].order.datamatrix_codes[].id да integer:int64 readOnly min: 1 1001
data.orders[].order.datamatrix_codes[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes[].domain_id нет integer:int64 | null min: 1 3
data.orders[].order.datamatrix_codes[].warehouse_id нет integer:int64 | null min: 1 42
data.orders[].order.datamatrix_codes[].status_id нет enum:int64 | null enum: 0, 1, 2 0 - Imported and available for future warehouse operations. 1 - Reserved or attached by an operational document. 2 - Used by an outbound or completed operation. 0
data.orders[].order.datamatrix_codes[].acceptance_id нет integer:int64 | null min: 1 5101
data.orders[].order.datamatrix_codes[].order_id нет integer:int64 | null min: 1 8101
data.orders[].order.datamatrix_codes[].product_id нет integer:int64 | null min: 1 1201
data.orders[].order.datamatrix_codes[].barcode нет string | null maxLength: 14 "04601234567890"
data.orders[].order.datamatrix_codes[].short_code нет string | null maxLength: 14 "ABC123"
data.orders[].order.datamatrix_codes[].crypto_tail нет string | null "CRYPTO"
data.orders[].order.datamatrix_codes[].datamatrix нет string | null maxLength: 125 "010460123456789021ABC123"
data.orders[].order.datamatrix_codes[].production_date нет string:date | null "2026-01-15"
data.orders[].order.datamatrix_codes[].expiration_date нет string:date | null "2027-01-15"
data.orders[].order.datamatrix_codes[].batch нет string | null "LOT-2026"
data.orders[].order.datamatrix_codes[].used_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.warehouse нет object | null
data.orders[].order.warehouse.id да integer:int64 min: 1 42
data.orders[].order.warehouse.name да string "Warehouse Sofia"
data.orders[].order.warehouse.type_id нет integer:int64 | null 2
data.orders[].order.warehouse.parent_id нет integer:int64 | null min: 1 41
data.orders[].order.shop нет object | null
data.orders[].order.shop.id да integer:int64 min: 1 12
data.orders[].order.shop.name да string "Demo Online Store"
data.orders[].order.shop.status_id нет integer:int64 | null 1
data.orders[].order.company нет object | null
data.orders[].order.company.id да integer:int64 min: 1 7
data.orders[].order.company.name да string "Demo Company"
data.orders[].order.company.legal_name нет string | null "Demo Company Ltd."
data.orders[].order.place нет object | null
data.orders[].order.accumulation_place нет object | null
data.orders[].order.measurements нет object | null
data.orders[].order.settings нет object | null
data.orders[].order.consumables да array<object>
data.orders[].order.consumables[] нет object
data.orders[].order.wildberries нет object | null
data.orders[].order.wildberries.completed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.orders[].order.batch_matches да array<object>
data.orders[].order.batch_matches[] нет object
meta да ResponseMeta
meta.api_version да enum enum: v2 "v2"
meta.deleted нет boolean true
meta.id нет integer:int64 | null min: 1 1001
meta.command_replayed нет boolean True when an idempotent cross-dock command returned the original successful result. false
meta.crossdock_configuration нет object | null
meta.crossdock_configuration.physical_warehouse_id да integer:int64 min: 1 42
meta.crossdock_configuration.enabled да boolean true
meta.crossdock_configuration.process_version да string "direct_order_v1"

Примеры ответа

success

{
  "data": {
    "id": 740,
    "domain_id": 3,
    "status_id": 1,
    "status": {
      "id": 1,
      "name": "Открыт",
      "color": "#2457c5",
      "background_color": "#eaf0ff"
    },
    "warehouse_id": 42,
    "warehouse": {
      "id": 42,
      "name": "Warehouse Sofia",
      "type_id": 2,
      "parent_id": 41
    },
    "delivery_service_ids": [
      17
    ],
    "delivery_services": [
      {
        "id": 17,
        "name": "Wildberries FBS",
        "status_id": 1,
        "external_id": "wb-fbs",
        "source_id": "wildberries",
        "delivery_type": "pickup_point",
        "is_courier": false
      }
    ],
    "document_date": "2026-08-11",
    "closed_at": "2026-08-11T10:15:00Z",
    "comment": "Wildberries shipment 740",
    "order_count": 1,
    "processing": {
      "mode": "standard",
      "pipeline": [
        "assignment",
        "marking",
        "transfer"
      ],
      "state": "open",
      "batch_profile_id": null,
      "batch_profile": null,
      "composition_frozen_at": null,
      "batch_started_at": null,
      "batch_completed_at": null
    },
    "wildberries": {
      "fulfillment_state": "delivered",
      "error_message": null,
      "processed_at": "2026-08-11T10:15:00Z",
      "supplies": [
        {
          "id": 3201,
          "account_id": 71,
          "external_id": "WB-GI-740",
          "name": "Поставка 740",
          "state": "delivered",
          "state_name": "Доставлена",
          "destination_type": "office",
          "destination_office_id": 507,
          "is_automatic": false,
          "is_b2b": false,
          "cargo_type": "box",
          "cross_border_type": null,
          "order_count": 1,
          "current_qr": {
            "id": 3301,
            "kind": "supply_qr",
            "format": "svg",
            "width": 580,
            "height": 400,
            "barcode": "WB-GI-740",
            "part_a": null,
            "part_b": null,
            "content_hash": "sha256:qr-example",
            "content_available": true,
            "is_current": true,
            "fetched_at": "2026-08-11T09:00:00Z",
            "last_printed_at": null,
            "print_count": 0
          },
          "boxes": [

          ],
          "last_error": {
            "code": null,
            "message": null
          },
          "remote_created_at": "2026-08-11T09:00:00Z",
          "remote_closed_at": null,
          "last_synced_at": "2026-08-11T10:15:00Z",
          "delivered_at": "2026-08-11T10:15:00Z"
        }
      ]
    },
    "orders": [
      {
        "assignment_id": 8801,
        "marked_at": "2026-08-11T09:30:00Z",
        "created_at": "2026-08-11T09:00:00Z",
        "updated_at": "2026-08-11T09:30:00Z",
        "order": {
          "id": 49060,
          "external_id": "WB-900001234",
          "status_id": 20,
          "warehouse_id": 42,
          "shop_id": 12,
          "order_date": "2026-08-10",
          "send_date": "2026-08-11",
          "amounts": {
            "shipping_price": 0,
            "shipping_cost": 0,
            "sum": 39.98,
            "cod_sum": 0
          },
          "contact": {
            "first_name": "Иван",
            "middle_name": null,
            "last_name": "Петров",
            "phone": "+359888123456",
            "email": "customer@example.com",
            "country_id": 100,
            "city_id": 200,
            "postcode": "1000",
            "latitude": 42.6977,
            "longitude": 23.3219,
            "full_address": "Sofia"
          },
          "delivery": {
            "service_id": 17,
            "delivery_type": "pickup_point",
            "is_courier": false,
            "status": "created",
            "track_number": "WB-900001234",
            "pickup_point_id": "WB-SOF-01",
            "source_id": "wildberries",
            "tariff_code": null,
            "additional_services": {
            },
            "label": null,
            "delivery_date": "2026-08-12",
            "delivery_time_start": null,
            "delivery_time_end": null
          },
          "comments": {
            "delivery_service_text": null,
            "inner_text": "Клиентский пример для документа 740"
          },
          "offers": [
            {
              "id": 7001,
              "product_id": 1201,
              "quantity": 2,
              "estimated_price": 19.5,
              "price": 19.99,
              "expiration_date": "2027-01-15",
              "batch": "LOT-2026",
              "operation_user_id": 9,
              "product": {
                "id": 1201,
                "external_id": "EXT-10045",
                "shop_id": 12,
                "domain_id": 3,
                "status_id": 1,
                "type_id": 1,
                "name": "Coffee 250g",
                "article": "ART-001245",
                "sku": "SKU-001245",
                "price": 19.99,
                "estimated_price": 21.5,
                "image_url": null,
                "dimensions": {
                  "x": 105,
                  "y": 200,
                  "z": 32,
                  "unit": "mm"
                },
                "weight": {
                  "value": 250,
                  "unit": "g"
                },
                "datamatrix_required": true,
                "expiration_required": true,
                "comment": null,
                "description": "Ground coffee package",
                "barcodes": [
                  {
                    "barcode": "4601234567890",
                    "is_main": true
                  }
                ],
                "package": {
                  "kind": "unit",
                  "parent_product_id": null,
                  "base_product_id": null,
                  "multiplicity": null,
                  "base_multiplicity": null,
                  "depth": 0
                },
                "created_at": "2026-08-01T09:00:00Z",
                "updated_at": "2026-08-10T09:00:00Z"
              },
              "reservation": {
                "required_qty": 2,
                "reserved_qty": 2,
                "unreserved_qty": 0,
                "missing_qty": 0,
                "status": "reserved"
              },
              "reservation_items": [

              ],
              "created_at": "2026-08-10T09:00:00Z",
              "updated_at": "2026-08-10T09:00:00Z"
            }
          ],
          "datamatrix_codes": [
            {
              "id": 6101,
              "domain_id": 3,
              "warehouse_id": 42,
              "status_id": 1,
              "acceptance_id": 5101,
              "order_id": 49060,
              "product_id": 1201,
              "barcode": "04601234567890",
              "short_code": "ABC123",
              "crypto_tail": "CRYPTO",
              "datamatrix": "010460123456789021ABC123",
              "production_date": "2026-01-15",
              "expiration_date": "2027-01-15",
              "batch": "LOT-2026",
              "created_at": "2026-08-11T09:15:00Z",
              "updated_at": "2026-08-11T09:15:00Z",
              "used_at": null
            }
          ],
          "warehouse": {
            "id": 42,
            "name": "Warehouse Sofia",
            "type_id": 2,
            "parent_id": 41
          },
          "shop": {
            "id": 12,
            "name": "Demo Online Store",
            "status_id": 1
          },
          "company": {
            "id": 7,
            "name": "Demo Company",
            "legal_name": "Demo Company Ltd."
          },
          "place": null,
          "accumulation_place": null,
          "measurements": {
            "places": 1,
            "dimensions": {
              "x": 220,
              "y": 160,
              "z": 120,
              "unit": "mm"
            },
            "weight": {
              "value": 600,
              "unit": "g"
            }
          },
          "settings": {
            "blank_url": null
          },
          "consumables": [

          ],
          "wildberries": {
            "id": 2101,
            "account_id": 71,
            "wb_order_id": "900001234",
            "order_uid": "WB-UID-49060",
            "rid": "WB-RID-49060",
            "product_id": 1201,
            "state": "confirmed",
            "state_name": "Подтверждён",
            "fulfillment_state": "delivered",
            "fulfillment_state_name": "Доставлен",
            "supplier_status": "confirm",
            "wb_status": "sold",
            "supply_id": 3201,
            "external_supply_id": "WB-GI-740",
            "supply_state": "delivered",
            "delivery_type": "fbs",
            "cross_border_type": null,
            "is_b2b": false,
            "wb_warehouse_id": 507,
            "office_id": 507,
            "nm_id": 12345678,
            "chrt_id": 87654321,
            "article": "ART-001245",
            "skus": [
              "4601234567890"
            ],
            "required_meta": [
              "sgtin"
            ],
            "optional_meta": [

            ],
            "meta_state": "accepted",
            "sticker_state": "ready",
            "prices": {
              "price_minor": 1999,
              "final_price_minor": 1999,
              "sale_price_minor": 1999,
              "currency": "RUB"
            },
            "markings": [
              {
                "id": 1,
                "datamatrix_id": 6101,
                "type": "sgtin",
                "masked_value": "010460…ABC123",
                "value_hash": "sha256:example",
                "state": "accepted",
                "remote_decision": "accepted",
                "error_code": null,
                "error_message": null,
                "submitted_at": "2026-08-11T09:30:00Z",
                "verified_at": "2026-08-11T09:31:00Z",
                "ambiguous_at": null
              }
            ],
            "current_sticker": {
              "id": 3401,
              "kind": "order_sticker",
              "format": "png",
              "width": 580,
              "height": 400,
              "barcode": "WB-900001234",
              "part_a": "123456",
              "part_b": "7890",
              "content_hash": "sha256:sticker-example",
              "content_available": true,
              "is_current": true,
              "fetched_at": "2026-08-11T09:25:00Z",
              "last_printed_at": null,
              "print_count": 0
            },
            "last_error": {
              "code": null,
              "message": null
            },
            "remote_created_at": "2026-08-10T09:00:00Z",
            "seller_date": "2026-08-10",
            "delivery_date": "2026-08-12",
            "confirmed_at": "2026-08-11T09:20:00Z",
            "completed_at": "2026-08-11T10:15:00Z",
            "imported_at": "2026-08-10T09:05:00Z",
            "mapped_at": "2026-08-10T09:06:00Z",
            "reserved_at": "2026-08-11T09:10:00Z",
            "remote_status_checked_at": "2026-08-11T10:15:00Z"
          },
          "batch_matches": [

          ]
        }
      }
    ],
    "created_at": "2026-08-11T08:45:00Z",
    "updated_at": "2026-08-11T10:15:00Z"
  },
  "meta": {
    "api_version": "v2"
  }
}

401 Требуется аутентификация

Unauthorized

Требуется аутентификация.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

AUTH_REQUIRED

{
  "message": "Authentication is required.",
  "error": "AUTH_REQUIRED"
}

403 Доступ запрещен

Forbidden

Аутентифицированному аккаунту запрещено выполнять это действие.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

FORBIDDEN

{
  "message": "The authenticated account is not allowed to perform this action.",
  "error": "FORBIDDEN"
}

404 Не найдено

NotFound

Запрошенный ресурс не найден или находится вне области доступа аккаунта.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

NOT_FOUND

{
  "message": "The requested resource was not found or is outside the authenticated account scope.",
  "error": "NOT_FOUND"
}

429 Превышен лимит запросов

TooManyRequests

Превышен лимит запросов.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "Too Many Attempts."
error да string "RATE_LIMITED"

500 Внутренняя ошибка сервера

InternalServerError

Произошла непредвиденная ошибка сервера.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

INTERNAL_SERVER_ERROR

{
  "message": "An unexpected server error occurred.",
  "error": "INTERNAL_SERVER_ERROR"
}
PUT /api/v2/send-documents/{id}

Обновить документ отправки

operationIdreplaceSendDocuments
РазделДокументы отправок
БезопасностьbearerAuth

Update send document. Запрос использует описанную payload-схему, проверяет видимость tenant и возвращает нормализованный API envelope.
Текущее поведение backend является legacy-семантикой частичного обновления: пропущенные поля не изменяются.

Пример HTTP-запроса (cURL)

Подставьте свой сервер и токен. ID из примера замените реальными доступными ID. Для тела запроса сохраните подходящий JSON из раздела ниже в request.json; перед отправкой замените демонстрационные значения. Заголовок Idempotency-Key использует ключ одной логической операции.

curl --globoff --request PUT "${NWMS_BASE_URL}/api/v2/send-documents/740" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer ${NWMS_TOKEN}" \
  --header "Idempotency-Key: ${NWMS_REQUEST_KEY}" \
  --header "Content-Type: application/json" \
  --data-binary @request.json

Параметры

Имя Где Обязательное Тип Style Explode Ограничения Описание Пример
id path да integer:int64 min: 1 Shipment document ID. 740
Idempotency-Key header нет string maxLength: 191 Опциональный ключ идемпотентности для write-запросов API v2. Успешные ответы 2xx/3xx повторяются для того же ключа и идентичного payload в течение одного дня. Тот же ключ с другим payload возвращает 409. "ord-create-20260714-001"

Тело запроса

ReplaceSendDocumentRequest обязательно

Поле Обязательное Тип Флаги Ограничения Описание Пример
data да ReplaceSendDocumentPayload Shipment document update. Omitted fields remain unchanged; status transitions follow the administrative lifecycle rules.
data.status_id нет integer:int64 | null 2
data.document_date нет string:date | null "2026-08-11"
data.warehouse_id нет integer:int64 | null min: 1 42
data.delivery_service_ids нет array<integer:int64> minItems: 1
data.delivery_service_ids[] нет integer:int64 min: 1 17
data.comment нет string | null maxLength: 1000 "Передано перевозчику"

Примеры запроса

default

{
  "data": {
    "status_id": 2,
    "comment": "Передано перевозчику"
  }
}

Ответы

200 Successful response.

Successful response.

Поле Обязательное Тип Флаги Ограничения Описание Пример
data да SendDocument Outbound shipment document with its complete operational composition. Collection relations are empty unless requested through include; the item endpoint always loads them.
data.id да integer:int64 readOnly min: 1 1001
data.created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.domain_id нет integer:int64 | null min: 1 3
data.status_id нет integer:int64 | null 1
data.status нет object | null
data.status.id да integer:int64 1
data.status.name да string "Открыт"
data.status.color нет string | null "#2457c5"
data.status.background_color нет string | null "#eaf0ff"
data.warehouse_id нет integer:int64 | null min: 1 42
data.warehouse нет object | null
data.warehouse.id да integer:int64 min: 1 42
data.warehouse.name да string "Warehouse Sofia"
data.warehouse.type_id нет integer:int64 | null 2
data.warehouse.parent_id нет integer:int64 | null min: 1 41
data.delivery_service_ids да array<integer:int64>
data.delivery_service_ids[] нет integer:int64 min: 1 17
data.delivery_services да array<SendDocumentDeliveryService>
data.delivery_services[] нет SendDocumentDeliveryService
data.delivery_services[].id да integer:int64 min: 1 17
data.delivery_services[].name да string "Wildberries FBS"
data.delivery_services[].status_id да integer:int64 1
data.delivery_services[].external_id нет string | null "wb-fbs"
data.delivery_services[].source_id нет string | null "wildberries"
data.delivery_services[].delivery_type нет string | null "pickup_point"
data.delivery_services[].is_courier да boolean false
data.document_date нет string:date | null "2026-08-11"
data.closed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.comment нет string | null "Wildberries shipment 740"
data.order_count да integer:int64 min: 0 1
data.processing да SendDocumentProcessing
data.processing.mode нет string | null "standard"
data.processing.pipeline да array<string>
data.processing.pipeline[] нет string "assignment"
data.processing.state нет string | null "open"
data.processing.batch_profile_id нет integer:int64 | null min: 1 31
data.processing.batch_profile нет object | null
data.processing.batch_profile.id да integer:int64 min: 1 31
data.processing.batch_profile.name да string "Standard packing"
data.processing.batch_profile.processing_mode нет string | null "standard"
data.processing.composition_frozen_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.processing.batch_started_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.processing.batch_completed_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.wildberries да SendDocumentWildberries Wildberries document-level state and safe supply/QR/sticker artifact metadata. Binary label content and encrypted provider payloads are not returned.
data.wildberries.fulfillment_state нет string | null "delivered"
data.wildberries.error_message нет string | null ""
data.wildberries.processed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.wildberries.supplies да array<object>
data.wildberries.supplies[] нет object
data.orders да array<SendDocumentOrderAssignment>
data.orders[] нет SendDocumentOrderAssignment
data.orders[].assignment_id да integer:int64 min: 1 8801
data.orders[].marked_at нет string:date-time | null "2026-08-11T09:30:00Z"
data.orders[].created_at нет string:date-time | null "2026-08-11T09:00:00Z"
data.orders[].updated_at нет string:date-time | null "2026-08-11T09:30:00Z"
data.orders[].order да object | null Complete order snapshot embedded into a shipment document. Marketplace and batch objects preserve provider-specific fields.
data.orders[].order.id да integer:int64 min: 1 49060
data.orders[].order.external_id нет string | null "WB-900001234"
data.orders[].order.status_id нет integer:int64 | null 20
data.orders[].order.warehouse_id нет integer:int64 | null min: 1 42
data.orders[].order.shop_id нет integer:int64 | null min: 1 12
data.orders[].order.order_date нет string:date | null "2026-08-10"
data.orders[].order.send_date нет string:date | null "2026-08-11"
data.orders[].order.amounts нет object | null
data.orders[].order.amounts.shipping_price нет number:float | null 8.6
data.orders[].order.amounts.shipping_cost нет number:float | null 0
data.orders[].order.amounts.sum нет number:float | null 39.98
data.orders[].order.amounts.cod_sum нет number:float | null 48.58
data.orders[].order.contact нет object | null
data.orders[].order.contact.first_name нет string | null "Ivan"
data.orders[].order.contact.middle_name нет string | null "Ivanovich"
data.orders[].order.contact.last_name нет string | null "Petrov"
data.orders[].order.contact.phone нет string | null "+359888123456"
data.orders[].order.contact.email нет string:email | null "customer@example.com"
data.orders[].order.contact.country_id нет integer:int64 | null min: 1 100
data.orders[].order.contact.city_id нет integer:int64 | null min: 1 200
data.orders[].order.contact.postcode нет string | null "1000"
data.orders[].order.contact.latitude нет number:float | null min: -90
max: 90
42.6977
data.orders[].order.contact.longitude нет number:float | null min: -180
max: 180
23.3219
data.orders[].order.contact.full_address нет string | null "1 Vitosha Boulevard, Sofia"
data.orders[].order.delivery нет object | null
data.orders[].order.delivery.service_id нет integer:int64 | null min: 1 1
data.orders[].order.delivery.delivery_type да enum | null enum: door, pickup_point Normalized delivery channel derived from the configured delivery service. Null when the service type is unknown. "door"
data.orders[].order.delivery.is_courier да boolean True for door delivery; false for pickup-point delivery or an unknown service type. true
data.orders[].order.delivery.status нет string | null "created"
data.orders[].order.delivery.track_number нет string | null "CDEK-123456789"
data.orders[].order.delivery.pickup_point_id нет string | null "SOFIA-01"
data.orders[].order.delivery.source_id нет string | null "cdek-15"
data.orders[].order.delivery.tariff_code нет integer:int64 | null 136
data.orders[].order.delivery.additional_services нет object Values of additional CDEK services configured for the selected integration. Boolean true enables a code-only service; other values are sent as the CDEK parameter. {"TRYING_ON":true,"PART_DELIV":false,"PACKAGE_1":2}
data.orders[].order.delivery.label нет string:uri | null "https://betawms.ffcdek.ru/labels/CDEK-123456789.pdf"
data.orders[].order.delivery.delivery_date нет string:date | null "2026-07-16"
data.orders[].order.delivery.delivery_time_start нет string:time | null "09:00:00Z"
data.orders[].order.delivery.delivery_time_end нет string:time | null "18:00:00Z"
data.orders[].order.comments нет object | null
data.orders[].order.comments.delivery_service_text нет string | null "Call before delivery"
data.orders[].order.comments.inner_text нет string | null "VIP customer"
data.orders[].order.offers да array<SendDocumentOrderLine>
data.orders[].order.offers[] нет SendDocumentOrderLine
data.orders[].order.offers[].id да integer:int64 min: 1 7001
data.orders[].order.offers[].product_id нет integer:int64 | null min: 1 1201
data.orders[].order.offers[].quantity нет number:float | null 2
data.orders[].order.offers[].estimated_price нет number:float | null 19.5
data.orders[].order.offers[].price нет number:float | null 19.99
data.orders[].order.offers[].expiration_date нет string:date | null "2027-01-15"
data.orders[].order.offers[].batch нет string | null "LOT-2026"
data.orders[].order.offers[].operation_user_id нет integer:int64 | null min: 1 9
data.orders[].order.offers[].product нет object | null
data.orders[].order.offers[].product.id да integer:int64 min: 1 1201
data.orders[].order.offers[].product.external_id нет string | null "EXT-10045"
data.orders[].order.offers[].product.domain_id нет integer:int64 | null min: 1 3
data.orders[].order.offers[].product.shop_id нет integer:int64 | null min: 1 12
data.orders[].order.offers[].product.status_id нет enum:int64 | null enum: 1, 2, 3 1 - active; 2 - disabled; 3 - deleted. 1
data.orders[].order.offers[].product.type_id нет integer:int64 | null 1
data.orders[].order.offers[].product.name да string "Coffee 250g"
data.orders[].order.offers[].product.article нет string | null "ART-001245"
data.orders[].order.offers[].product.sku нет string | null "SKU-001245"
data.orders[].order.offers[].product.price нет number:float | null 19.99
data.orders[].order.offers[].product.estimated_price нет number:float | null 21.5
data.orders[].order.offers[].product.image_url нет string:uri | null "https://betawms.ffcdek.ru/offer-images/products/coffee-250g.jpg"
data.orders[].order.offers[].product.dimensions да Dimensions
data.orders[].order.offers[].product.weight да Weight
data.orders[].order.offers[].product.datamatrix_required да boolean true
data.orders[].order.offers[].product.expiration_required да boolean true
data.orders[].order.offers[].product.comment нет string | null "Keep dry"
data.orders[].order.offers[].product.description нет string | null "Ground coffee package"
data.orders[].order.offers[].product.barcodes да array<ProductBarcode>
data.orders[].order.offers[].product.package да object
data.orders[].order.offers[].product.created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].product.updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].reservation нет object | null Reservation totals for one order line.
data.orders[].order.offers[].reservation.required_qty да number:float 3
data.orders[].order.offers[].reservation.reserved_qty да number:float 1
data.orders[].order.offers[].reservation.unreserved_qty да number:float 2
data.orders[].order.offers[].reservation.missing_qty да number:float 2
data.orders[].order.offers[].reservation.status да enum enum: not_required, missing, partial, reserved Reservation state calculated from the quantity required by the order and the quantity actually reserved. "partial"
data.orders[].order.offers[].reservation_items нет array<OrderReservationItem>
data.orders[].order.offers[].reservation_items[] нет OrderReservationItem Physical product or expanded component used to explain a reservation shortage.
data.orders[].order.offers[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes да array<DataMatrix>
data.orders[].order.datamatrix_codes[] нет DataMatrix Код DataMatrix для маркированного товара.
data.orders[].order.datamatrix_codes[].id да integer:int64 readOnly min: 1 1001
data.orders[].order.datamatrix_codes[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes[].domain_id нет integer:int64 | null min: 1 3
data.orders[].order.datamatrix_codes[].warehouse_id нет integer:int64 | null min: 1 42
data.orders[].order.datamatrix_codes[].status_id нет enum:int64 | null enum: 0, 1, 2 0 - Imported and available for future warehouse operations. 1 - Reserved or attached by an operational document. 2 - Used by an outbound or completed operation. 0
data.orders[].order.datamatrix_codes[].acceptance_id нет integer:int64 | null min: 1 5101
data.orders[].order.datamatrix_codes[].order_id нет integer:int64 | null min: 1 8101
data.orders[].order.datamatrix_codes[].product_id нет integer:int64 | null min: 1 1201
data.orders[].order.datamatrix_codes[].barcode нет string | null maxLength: 14 "04601234567890"
data.orders[].order.datamatrix_codes[].short_code нет string | null maxLength: 14 "ABC123"
data.orders[].order.datamatrix_codes[].crypto_tail нет string | null "CRYPTO"
data.orders[].order.datamatrix_codes[].datamatrix нет string | null maxLength: 125 "010460123456789021ABC123"
data.orders[].order.datamatrix_codes[].production_date нет string:date | null "2026-01-15"
data.orders[].order.datamatrix_codes[].expiration_date нет string:date | null "2027-01-15"
data.orders[].order.datamatrix_codes[].batch нет string | null "LOT-2026"
data.orders[].order.datamatrix_codes[].used_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.warehouse нет object | null
data.orders[].order.warehouse.id да integer:int64 min: 1 42
data.orders[].order.warehouse.name да string "Warehouse Sofia"
data.orders[].order.warehouse.type_id нет integer:int64 | null 2
data.orders[].order.warehouse.parent_id нет integer:int64 | null min: 1 41
data.orders[].order.shop нет object | null
data.orders[].order.shop.id да integer:int64 min: 1 12
data.orders[].order.shop.name да string "Demo Online Store"
data.orders[].order.shop.status_id нет integer:int64 | null 1
data.orders[].order.company нет object | null
data.orders[].order.company.id да integer:int64 min: 1 7
data.orders[].order.company.name да string "Demo Company"
data.orders[].order.company.legal_name нет string | null "Demo Company Ltd."
data.orders[].order.place нет object | null
data.orders[].order.accumulation_place нет object | null
data.orders[].order.measurements нет object | null
data.orders[].order.settings нет object | null
data.orders[].order.consumables да array<object>
data.orders[].order.consumables[] нет object
data.orders[].order.wildberries нет object | null
data.orders[].order.wildberries.completed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.orders[].order.batch_matches да array<object>
data.orders[].order.batch_matches[] нет object
meta да ResponseMeta
meta.api_version да enum enum: v2 "v2"
meta.deleted нет boolean true
meta.id нет integer:int64 | null min: 1 1001
meta.command_replayed нет boolean True when an idempotent cross-dock command returned the original successful result. false
meta.crossdock_configuration нет object | null
meta.crossdock_configuration.physical_warehouse_id да integer:int64 min: 1 42
meta.crossdock_configuration.enabled да boolean true
meta.crossdock_configuration.process_version да string "direct_order_v1"

Примеры ответа

success

{
  "data": {
    "id": 740,
    "domain_id": 3,
    "status_id": 1,
    "status": {
      "id": 1,
      "name": "Открыт",
      "color": "#2457c5",
      "background_color": "#eaf0ff"
    },
    "warehouse_id": 42,
    "warehouse": {
      "id": 42,
      "name": "Warehouse Sofia",
      "type_id": 2,
      "parent_id": 41
    },
    "delivery_service_ids": [
      17
    ],
    "delivery_services": [
      {
        "id": 17,
        "name": "Wildberries FBS",
        "status_id": 1,
        "external_id": "wb-fbs",
        "source_id": "wildberries",
        "delivery_type": "pickup_point",
        "is_courier": false
      }
    ],
    "document_date": "2026-08-11",
    "closed_at": "2026-08-11T10:15:00Z",
    "comment": "Wildberries shipment 740",
    "order_count": 1,
    "processing": {
      "mode": "standard",
      "pipeline": [
        "assignment",
        "marking",
        "transfer"
      ],
      "state": "open",
      "batch_profile_id": null,
      "batch_profile": null,
      "composition_frozen_at": null,
      "batch_started_at": null,
      "batch_completed_at": null
    },
    "wildberries": {
      "fulfillment_state": "delivered",
      "error_message": null,
      "processed_at": "2026-08-11T10:15:00Z",
      "supplies": [
        {
          "id": 3201,
          "account_id": 71,
          "external_id": "WB-GI-740",
          "name": "Поставка 740",
          "state": "delivered",
          "state_name": "Доставлена",
          "destination_type": "office",
          "destination_office_id": 507,
          "is_automatic": false,
          "is_b2b": false,
          "cargo_type": "box",
          "cross_border_type": null,
          "order_count": 1,
          "current_qr": {
            "id": 3301,
            "kind": "supply_qr",
            "format": "svg",
            "width": 580,
            "height": 400,
            "barcode": "WB-GI-740",
            "part_a": null,
            "part_b": null,
            "content_hash": "sha256:qr-example",
            "content_available": true,
            "is_current": true,
            "fetched_at": "2026-08-11T09:00:00Z",
            "last_printed_at": null,
            "print_count": 0
          },
          "boxes": [

          ],
          "last_error": {
            "code": null,
            "message": null
          },
          "remote_created_at": "2026-08-11T09:00:00Z",
          "remote_closed_at": null,
          "last_synced_at": "2026-08-11T10:15:00Z",
          "delivered_at": "2026-08-11T10:15:00Z"
        }
      ]
    },
    "orders": [
      {
        "assignment_id": 8801,
        "marked_at": "2026-08-11T09:30:00Z",
        "created_at": "2026-08-11T09:00:00Z",
        "updated_at": "2026-08-11T09:30:00Z",
        "order": {
          "id": 49060,
          "external_id": "WB-900001234",
          "status_id": 20,
          "warehouse_id": 42,
          "shop_id": 12,
          "order_date": "2026-08-10",
          "send_date": "2026-08-11",
          "amounts": {
            "shipping_price": 0,
            "shipping_cost": 0,
            "sum": 39.98,
            "cod_sum": 0
          },
          "contact": {
            "first_name": "Иван",
            "middle_name": null,
            "last_name": "Петров",
            "phone": "+359888123456",
            "email": "customer@example.com",
            "country_id": 100,
            "city_id": 200,
            "postcode": "1000",
            "latitude": 42.6977,
            "longitude": 23.3219,
            "full_address": "Sofia"
          },
          "delivery": {
            "service_id": 17,
            "delivery_type": "pickup_point",
            "is_courier": false,
            "status": "created",
            "track_number": "WB-900001234",
            "pickup_point_id": "WB-SOF-01",
            "source_id": "wildberries",
            "tariff_code": null,
            "additional_services": {
            },
            "label": null,
            "delivery_date": "2026-08-12",
            "delivery_time_start": null,
            "delivery_time_end": null
          },
          "comments": {
            "delivery_service_text": null,
            "inner_text": "Клиентский пример для документа 740"
          },
          "offers": [
            {
              "id": 7001,
              "product_id": 1201,
              "quantity": 2,
              "estimated_price": 19.5,
              "price": 19.99,
              "expiration_date": "2027-01-15",
              "batch": "LOT-2026",
              "operation_user_id": 9,
              "product": {
                "id": 1201,
                "external_id": "EXT-10045",
                "shop_id": 12,
                "domain_id": 3,
                "status_id": 1,
                "type_id": 1,
                "name": "Coffee 250g",
                "article": "ART-001245",
                "sku": "SKU-001245",
                "price": 19.99,
                "estimated_price": 21.5,
                "image_url": null,
                "dimensions": {
                  "x": 105,
                  "y": 200,
                  "z": 32,
                  "unit": "mm"
                },
                "weight": {
                  "value": 250,
                  "unit": "g"
                },
                "datamatrix_required": true,
                "expiration_required": true,
                "comment": null,
                "description": "Ground coffee package",
                "barcodes": [
                  {
                    "barcode": "4601234567890",
                    "is_main": true
                  }
                ],
                "package": {
                  "kind": "unit",
                  "parent_product_id": null,
                  "base_product_id": null,
                  "multiplicity": null,
                  "base_multiplicity": null,
                  "depth": 0
                },
                "created_at": "2026-08-01T09:00:00Z",
                "updated_at": "2026-08-10T09:00:00Z"
              },
              "reservation": {
                "required_qty": 2,
                "reserved_qty": 2,
                "unreserved_qty": 0,
                "missing_qty": 0,
                "status": "reserved"
              },
              "reservation_items": [

              ],
              "created_at": "2026-08-10T09:00:00Z",
              "updated_at": "2026-08-10T09:00:00Z"
            }
          ],
          "datamatrix_codes": [
            {
              "id": 6101,
              "domain_id": 3,
              "warehouse_id": 42,
              "status_id": 1,
              "acceptance_id": 5101,
              "order_id": 49060,
              "product_id": 1201,
              "barcode": "04601234567890",
              "short_code": "ABC123",
              "crypto_tail": "CRYPTO",
              "datamatrix": "010460123456789021ABC123",
              "production_date": "2026-01-15",
              "expiration_date": "2027-01-15",
              "batch": "LOT-2026",
              "created_at": "2026-08-11T09:15:00Z",
              "updated_at": "2026-08-11T09:15:00Z",
              "used_at": null
            }
          ],
          "warehouse": {
            "id": 42,
            "name": "Warehouse Sofia",
            "type_id": 2,
            "parent_id": 41
          },
          "shop": {
            "id": 12,
            "name": "Demo Online Store",
            "status_id": 1
          },
          "company": {
            "id": 7,
            "name": "Demo Company",
            "legal_name": "Demo Company Ltd."
          },
          "place": null,
          "accumulation_place": null,
          "measurements": {
            "places": 1,
            "dimensions": {
              "x": 220,
              "y": 160,
              "z": 120,
              "unit": "mm"
            },
            "weight": {
              "value": 600,
              "unit": "g"
            }
          },
          "settings": {
            "blank_url": null
          },
          "consumables": [

          ],
          "wildberries": {
            "id": 2101,
            "account_id": 71,
            "wb_order_id": "900001234",
            "order_uid": "WB-UID-49060",
            "rid": "WB-RID-49060",
            "product_id": 1201,
            "state": "confirmed",
            "state_name": "Подтверждён",
            "fulfillment_state": "delivered",
            "fulfillment_state_name": "Доставлен",
            "supplier_status": "confirm",
            "wb_status": "sold",
            "supply_id": 3201,
            "external_supply_id": "WB-GI-740",
            "supply_state": "delivered",
            "delivery_type": "fbs",
            "cross_border_type": null,
            "is_b2b": false,
            "wb_warehouse_id": 507,
            "office_id": 507,
            "nm_id": 12345678,
            "chrt_id": 87654321,
            "article": "ART-001245",
            "skus": [
              "4601234567890"
            ],
            "required_meta": [
              "sgtin"
            ],
            "optional_meta": [

            ],
            "meta_state": "accepted",
            "sticker_state": "ready",
            "prices": {
              "price_minor": 1999,
              "final_price_minor": 1999,
              "sale_price_minor": 1999,
              "currency": "RUB"
            },
            "markings": [
              {
                "id": 1,
                "datamatrix_id": 6101,
                "type": "sgtin",
                "masked_value": "010460…ABC123",
                "value_hash": "sha256:example",
                "state": "accepted",
                "remote_decision": "accepted",
                "error_code": null,
                "error_message": null,
                "submitted_at": "2026-08-11T09:30:00Z",
                "verified_at": "2026-08-11T09:31:00Z",
                "ambiguous_at": null
              }
            ],
            "current_sticker": {
              "id": 3401,
              "kind": "order_sticker",
              "format": "png",
              "width": 580,
              "height": 400,
              "barcode": "WB-900001234",
              "part_a": "123456",
              "part_b": "7890",
              "content_hash": "sha256:sticker-example",
              "content_available": true,
              "is_current": true,
              "fetched_at": "2026-08-11T09:25:00Z",
              "last_printed_at": null,
              "print_count": 0
            },
            "last_error": {
              "code": null,
              "message": null
            },
            "remote_created_at": "2026-08-10T09:00:00Z",
            "seller_date": "2026-08-10",
            "delivery_date": "2026-08-12",
            "confirmed_at": "2026-08-11T09:20:00Z",
            "completed_at": "2026-08-11T10:15:00Z",
            "imported_at": "2026-08-10T09:05:00Z",
            "mapped_at": "2026-08-10T09:06:00Z",
            "reserved_at": "2026-08-11T09:10:00Z",
            "remote_status_checked_at": "2026-08-11T10:15:00Z"
          },
          "batch_matches": [

          ]
        }
      }
    ],
    "created_at": "2026-08-11T08:45:00Z",
    "updated_at": "2026-08-11T10:15:00Z"
  },
  "meta": {
    "api_version": "v2"
  }
}

400 Некорректный запрос

BadRequest

Некорректный запрос.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

BAD_REQUEST

{
  "message": "Bad request.",
  "error": "BAD_REQUEST"
}

401 Требуется аутентификация

Unauthorized

Требуется аутентификация.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

AUTH_REQUIRED

{
  "message": "Authentication is required.",
  "error": "AUTH_REQUIRED"
}

403 Доступ запрещен

Forbidden

Аутентифицированному аккаунту запрещено выполнять это действие.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

FORBIDDEN

{
  "message": "The authenticated account is not allowed to perform this action.",
  "error": "FORBIDDEN"
}

404 Не найдено

NotFound

Запрошенный ресурс не найден или находится вне области доступа аккаунта.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

NOT_FOUND

{
  "message": "The requested resource was not found or is outside the authenticated account scope.",
  "error": "NOT_FOUND"
}

409 Конфликт

SendDocumentConflict

The shipment document lifecycle or composition does not allow the requested operation.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The given data was invalid."
error нет string "VALIDATION_ERROR"
errors да object {"warehouse_id":["The selected warehouse is invalid."]}

Примеры ответа

documentStateConflict

{
  "message": "Состав документа уже заморожен.",
  "errors": {
    "send_document": [
      "Состав документа уже заморожен."
    ]
  }
}

422 Ошибка валидации

ValidationError

Ошибка валидации.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The given data was invalid."
error нет string "VALIDATION_ERROR"
errors да object {"warehouse_id":["The selected warehouse is invalid."]}

Примеры ответа

validationError

{
  "message": "The given data was invalid.",
  "error": "VALIDATION_ERROR",
  "errors": {
    "warehouse_id": [
      "The selected warehouse is invalid."
    ]
  }
}

429 Превышен лимит запросов

TooManyRequests

Превышен лимит запросов.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "Too Many Attempts."
error да string "RATE_LIMITED"

500 Внутренняя ошибка сервера

InternalServerError

Произошла непредвиденная ошибка сервера.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

INTERNAL_SERVER_ERROR

{
  "message": "An unexpected server error occurred.",
  "error": "INTERNAL_SERVER_ERROR"
}
PATCH /api/v2/send-documents/{id}

Обновить документ отправки

operationIdpatchSendDocuments
РазделДокументы отправок
БезопасностьbearerAuth

Update send document. Запрос использует описанную payload-схему, проверяет видимость tenant и возвращает нормализованный API envelope.
Текущее поведение backend является legacy-семантикой частичного обновления: пропущенные поля не изменяются.

Пример HTTP-запроса (cURL)

Подставьте свой сервер и токен. ID из примера замените реальными доступными ID. Для тела запроса сохраните подходящий JSON из раздела ниже в request.json; перед отправкой замените демонстрационные значения. Заголовок Idempotency-Key использует ключ одной логической операции.

curl --globoff --request PATCH "${NWMS_BASE_URL}/api/v2/send-documents/740" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer ${NWMS_TOKEN}" \
  --header "Idempotency-Key: ${NWMS_REQUEST_KEY}" \
  --header "Content-Type: application/json" \
  --data-binary @request.json

Параметры

Имя Где Обязательное Тип Style Explode Ограничения Описание Пример
id path да integer:int64 min: 1 Shipment document ID. 740
Idempotency-Key header нет string maxLength: 191 Опциональный ключ идемпотентности для write-запросов API v2. Успешные ответы 2xx/3xx повторяются для того же ключа и идентичного payload в течение одного дня. Тот же ключ с другим payload возвращает 409. "ord-create-20260714-001"

Тело запроса

PatchSendDocumentRequest обязательно

Поле Обязательное Тип Флаги Ограничения Описание Пример
data да PatchSendDocumentPayload Partial shipment document update. Omitted fields remain unchanged.
data.status_id нет integer:int64 | null 2
data.document_date нет string:date | null "2026-08-11"
data.warehouse_id нет integer:int64 | null min: 1 42
data.delivery_service_ids нет array<integer:int64> minItems: 1
data.delivery_service_ids[] нет integer:int64 min: 1 17
data.comment нет string | null maxLength: 1000 "Передано перевозчику"

Примеры запроса

default

{
  "data": {
    "comment": "Передано перевозчику"
  }
}

Ответы

200 Successful response.

Successful response.

Поле Обязательное Тип Флаги Ограничения Описание Пример
data да SendDocument Outbound shipment document with its complete operational composition. Collection relations are empty unless requested through include; the item endpoint always loads them.
data.id да integer:int64 readOnly min: 1 1001
data.created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.domain_id нет integer:int64 | null min: 1 3
data.status_id нет integer:int64 | null 1
data.status нет object | null
data.status.id да integer:int64 1
data.status.name да string "Открыт"
data.status.color нет string | null "#2457c5"
data.status.background_color нет string | null "#eaf0ff"
data.warehouse_id нет integer:int64 | null min: 1 42
data.warehouse нет object | null
data.warehouse.id да integer:int64 min: 1 42
data.warehouse.name да string "Warehouse Sofia"
data.warehouse.type_id нет integer:int64 | null 2
data.warehouse.parent_id нет integer:int64 | null min: 1 41
data.delivery_service_ids да array<integer:int64>
data.delivery_service_ids[] нет integer:int64 min: 1 17
data.delivery_services да array<SendDocumentDeliveryService>
data.delivery_services[] нет SendDocumentDeliveryService
data.delivery_services[].id да integer:int64 min: 1 17
data.delivery_services[].name да string "Wildberries FBS"
data.delivery_services[].status_id да integer:int64 1
data.delivery_services[].external_id нет string | null "wb-fbs"
data.delivery_services[].source_id нет string | null "wildberries"
data.delivery_services[].delivery_type нет string | null "pickup_point"
data.delivery_services[].is_courier да boolean false
data.document_date нет string:date | null "2026-08-11"
data.closed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.comment нет string | null "Wildberries shipment 740"
data.order_count да integer:int64 min: 0 1
data.processing да SendDocumentProcessing
data.processing.mode нет string | null "standard"
data.processing.pipeline да array<string>
data.processing.pipeline[] нет string "assignment"
data.processing.state нет string | null "open"
data.processing.batch_profile_id нет integer:int64 | null min: 1 31
data.processing.batch_profile нет object | null
data.processing.batch_profile.id да integer:int64 min: 1 31
data.processing.batch_profile.name да string "Standard packing"
data.processing.batch_profile.processing_mode нет string | null "standard"
data.processing.composition_frozen_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.processing.batch_started_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.processing.batch_completed_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.wildberries да SendDocumentWildberries Wildberries document-level state and safe supply/QR/sticker artifact metadata. Binary label content and encrypted provider payloads are not returned.
data.wildberries.fulfillment_state нет string | null "delivered"
data.wildberries.error_message нет string | null ""
data.wildberries.processed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.wildberries.supplies да array<object>
data.wildberries.supplies[] нет object
data.orders да array<SendDocumentOrderAssignment>
data.orders[] нет SendDocumentOrderAssignment
data.orders[].assignment_id да integer:int64 min: 1 8801
data.orders[].marked_at нет string:date-time | null "2026-08-11T09:30:00Z"
data.orders[].created_at нет string:date-time | null "2026-08-11T09:00:00Z"
data.orders[].updated_at нет string:date-time | null "2026-08-11T09:30:00Z"
data.orders[].order да object | null Complete order snapshot embedded into a shipment document. Marketplace and batch objects preserve provider-specific fields.
data.orders[].order.id да integer:int64 min: 1 49060
data.orders[].order.external_id нет string | null "WB-900001234"
data.orders[].order.status_id нет integer:int64 | null 20
data.orders[].order.warehouse_id нет integer:int64 | null min: 1 42
data.orders[].order.shop_id нет integer:int64 | null min: 1 12
data.orders[].order.order_date нет string:date | null "2026-08-10"
data.orders[].order.send_date нет string:date | null "2026-08-11"
data.orders[].order.amounts нет object | null
data.orders[].order.amounts.shipping_price нет number:float | null 8.6
data.orders[].order.amounts.shipping_cost нет number:float | null 0
data.orders[].order.amounts.sum нет number:float | null 39.98
data.orders[].order.amounts.cod_sum нет number:float | null 48.58
data.orders[].order.contact нет object | null
data.orders[].order.contact.first_name нет string | null "Ivan"
data.orders[].order.contact.middle_name нет string | null "Ivanovich"
data.orders[].order.contact.last_name нет string | null "Petrov"
data.orders[].order.contact.phone нет string | null "+359888123456"
data.orders[].order.contact.email нет string:email | null "customer@example.com"
data.orders[].order.contact.country_id нет integer:int64 | null min: 1 100
data.orders[].order.contact.city_id нет integer:int64 | null min: 1 200
data.orders[].order.contact.postcode нет string | null "1000"
data.orders[].order.contact.latitude нет number:float | null min: -90
max: 90
42.6977
data.orders[].order.contact.longitude нет number:float | null min: -180
max: 180
23.3219
data.orders[].order.contact.full_address нет string | null "1 Vitosha Boulevard, Sofia"
data.orders[].order.delivery нет object | null
data.orders[].order.delivery.service_id нет integer:int64 | null min: 1 1
data.orders[].order.delivery.delivery_type да enum | null enum: door, pickup_point Normalized delivery channel derived from the configured delivery service. Null when the service type is unknown. "door"
data.orders[].order.delivery.is_courier да boolean True for door delivery; false for pickup-point delivery or an unknown service type. true
data.orders[].order.delivery.status нет string | null "created"
data.orders[].order.delivery.track_number нет string | null "CDEK-123456789"
data.orders[].order.delivery.pickup_point_id нет string | null "SOFIA-01"
data.orders[].order.delivery.source_id нет string | null "cdek-15"
data.orders[].order.delivery.tariff_code нет integer:int64 | null 136
data.orders[].order.delivery.additional_services нет object Values of additional CDEK services configured for the selected integration. Boolean true enables a code-only service; other values are sent as the CDEK parameter. {"TRYING_ON":true,"PART_DELIV":false,"PACKAGE_1":2}
data.orders[].order.delivery.label нет string:uri | null "https://betawms.ffcdek.ru/labels/CDEK-123456789.pdf"
data.orders[].order.delivery.delivery_date нет string:date | null "2026-07-16"
data.orders[].order.delivery.delivery_time_start нет string:time | null "09:00:00Z"
data.orders[].order.delivery.delivery_time_end нет string:time | null "18:00:00Z"
data.orders[].order.comments нет object | null
data.orders[].order.comments.delivery_service_text нет string | null "Call before delivery"
data.orders[].order.comments.inner_text нет string | null "VIP customer"
data.orders[].order.offers да array<SendDocumentOrderLine>
data.orders[].order.offers[] нет SendDocumentOrderLine
data.orders[].order.offers[].id да integer:int64 min: 1 7001
data.orders[].order.offers[].product_id нет integer:int64 | null min: 1 1201
data.orders[].order.offers[].quantity нет number:float | null 2
data.orders[].order.offers[].estimated_price нет number:float | null 19.5
data.orders[].order.offers[].price нет number:float | null 19.99
data.orders[].order.offers[].expiration_date нет string:date | null "2027-01-15"
data.orders[].order.offers[].batch нет string | null "LOT-2026"
data.orders[].order.offers[].operation_user_id нет integer:int64 | null min: 1 9
data.orders[].order.offers[].product нет object | null
data.orders[].order.offers[].product.id да integer:int64 min: 1 1201
data.orders[].order.offers[].product.external_id нет string | null "EXT-10045"
data.orders[].order.offers[].product.domain_id нет integer:int64 | null min: 1 3
data.orders[].order.offers[].product.shop_id нет integer:int64 | null min: 1 12
data.orders[].order.offers[].product.status_id нет enum:int64 | null enum: 1, 2, 3 1 - active; 2 - disabled; 3 - deleted. 1
data.orders[].order.offers[].product.type_id нет integer:int64 | null 1
data.orders[].order.offers[].product.name да string "Coffee 250g"
data.orders[].order.offers[].product.article нет string | null "ART-001245"
data.orders[].order.offers[].product.sku нет string | null "SKU-001245"
data.orders[].order.offers[].product.price нет number:float | null 19.99
data.orders[].order.offers[].product.estimated_price нет number:float | null 21.5
data.orders[].order.offers[].product.image_url нет string:uri | null "https://betawms.ffcdek.ru/offer-images/products/coffee-250g.jpg"
data.orders[].order.offers[].product.dimensions да Dimensions
data.orders[].order.offers[].product.weight да Weight
data.orders[].order.offers[].product.datamatrix_required да boolean true
data.orders[].order.offers[].product.expiration_required да boolean true
data.orders[].order.offers[].product.comment нет string | null "Keep dry"
data.orders[].order.offers[].product.description нет string | null "Ground coffee package"
data.orders[].order.offers[].product.barcodes да array<ProductBarcode>
data.orders[].order.offers[].product.package да object
data.orders[].order.offers[].product.created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].product.updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].reservation нет object | null Reservation totals for one order line.
data.orders[].order.offers[].reservation.required_qty да number:float 3
data.orders[].order.offers[].reservation.reserved_qty да number:float 1
data.orders[].order.offers[].reservation.unreserved_qty да number:float 2
data.orders[].order.offers[].reservation.missing_qty да number:float 2
data.orders[].order.offers[].reservation.status да enum enum: not_required, missing, partial, reserved Reservation state calculated from the quantity required by the order and the quantity actually reserved. "partial"
data.orders[].order.offers[].reservation_items нет array<OrderReservationItem>
data.orders[].order.offers[].reservation_items[] нет OrderReservationItem Physical product or expanded component used to explain a reservation shortage.
data.orders[].order.offers[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes да array<DataMatrix>
data.orders[].order.datamatrix_codes[] нет DataMatrix Код DataMatrix для маркированного товара.
data.orders[].order.datamatrix_codes[].id да integer:int64 readOnly min: 1 1001
data.orders[].order.datamatrix_codes[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes[].domain_id нет integer:int64 | null min: 1 3
data.orders[].order.datamatrix_codes[].warehouse_id нет integer:int64 | null min: 1 42
data.orders[].order.datamatrix_codes[].status_id нет enum:int64 | null enum: 0, 1, 2 0 - Imported and available for future warehouse operations. 1 - Reserved or attached by an operational document. 2 - Used by an outbound or completed operation. 0
data.orders[].order.datamatrix_codes[].acceptance_id нет integer:int64 | null min: 1 5101
data.orders[].order.datamatrix_codes[].order_id нет integer:int64 | null min: 1 8101
data.orders[].order.datamatrix_codes[].product_id нет integer:int64 | null min: 1 1201
data.orders[].order.datamatrix_codes[].barcode нет string | null maxLength: 14 "04601234567890"
data.orders[].order.datamatrix_codes[].short_code нет string | null maxLength: 14 "ABC123"
data.orders[].order.datamatrix_codes[].crypto_tail нет string | null "CRYPTO"
data.orders[].order.datamatrix_codes[].datamatrix нет string | null maxLength: 125 "010460123456789021ABC123"
data.orders[].order.datamatrix_codes[].production_date нет string:date | null "2026-01-15"
data.orders[].order.datamatrix_codes[].expiration_date нет string:date | null "2027-01-15"
data.orders[].order.datamatrix_codes[].batch нет string | null "LOT-2026"
data.orders[].order.datamatrix_codes[].used_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.warehouse нет object | null
data.orders[].order.warehouse.id да integer:int64 min: 1 42
data.orders[].order.warehouse.name да string "Warehouse Sofia"
data.orders[].order.warehouse.type_id нет integer:int64 | null 2
data.orders[].order.warehouse.parent_id нет integer:int64 | null min: 1 41
data.orders[].order.shop нет object | null
data.orders[].order.shop.id да integer:int64 min: 1 12
data.orders[].order.shop.name да string "Demo Online Store"
data.orders[].order.shop.status_id нет integer:int64 | null 1
data.orders[].order.company нет object | null
data.orders[].order.company.id да integer:int64 min: 1 7
data.orders[].order.company.name да string "Demo Company"
data.orders[].order.company.legal_name нет string | null "Demo Company Ltd."
data.orders[].order.place нет object | null
data.orders[].order.accumulation_place нет object | null
data.orders[].order.measurements нет object | null
data.orders[].order.settings нет object | null
data.orders[].order.consumables да array<object>
data.orders[].order.consumables[] нет object
data.orders[].order.wildberries нет object | null
data.orders[].order.wildberries.completed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.orders[].order.batch_matches да array<object>
data.orders[].order.batch_matches[] нет object
meta да ResponseMeta
meta.api_version да enum enum: v2 "v2"
meta.deleted нет boolean true
meta.id нет integer:int64 | null min: 1 1001
meta.command_replayed нет boolean True when an idempotent cross-dock command returned the original successful result. false
meta.crossdock_configuration нет object | null
meta.crossdock_configuration.physical_warehouse_id да integer:int64 min: 1 42
meta.crossdock_configuration.enabled да boolean true
meta.crossdock_configuration.process_version да string "direct_order_v1"

Примеры ответа

success

{
  "data": {
    "id": 740,
    "domain_id": 3,
    "status_id": 1,
    "status": {
      "id": 1,
      "name": "Открыт",
      "color": "#2457c5",
      "background_color": "#eaf0ff"
    },
    "warehouse_id": 42,
    "warehouse": {
      "id": 42,
      "name": "Warehouse Sofia",
      "type_id": 2,
      "parent_id": 41
    },
    "delivery_service_ids": [
      17
    ],
    "delivery_services": [
      {
        "id": 17,
        "name": "Wildberries FBS",
        "status_id": 1,
        "external_id": "wb-fbs",
        "source_id": "wildberries",
        "delivery_type": "pickup_point",
        "is_courier": false
      }
    ],
    "document_date": "2026-08-11",
    "closed_at": "2026-08-11T10:15:00Z",
    "comment": "Wildberries shipment 740",
    "order_count": 1,
    "processing": {
      "mode": "standard",
      "pipeline": [
        "assignment",
        "marking",
        "transfer"
      ],
      "state": "open",
      "batch_profile_id": null,
      "batch_profile": null,
      "composition_frozen_at": null,
      "batch_started_at": null,
      "batch_completed_at": null
    },
    "wildberries": {
      "fulfillment_state": "delivered",
      "error_message": null,
      "processed_at": "2026-08-11T10:15:00Z",
      "supplies": [
        {
          "id": 3201,
          "account_id": 71,
          "external_id": "WB-GI-740",
          "name": "Поставка 740",
          "state": "delivered",
          "state_name": "Доставлена",
          "destination_type": "office",
          "destination_office_id": 507,
          "is_automatic": false,
          "is_b2b": false,
          "cargo_type": "box",
          "cross_border_type": null,
          "order_count": 1,
          "current_qr": {
            "id": 3301,
            "kind": "supply_qr",
            "format": "svg",
            "width": 580,
            "height": 400,
            "barcode": "WB-GI-740",
            "part_a": null,
            "part_b": null,
            "content_hash": "sha256:qr-example",
            "content_available": true,
            "is_current": true,
            "fetched_at": "2026-08-11T09:00:00Z",
            "last_printed_at": null,
            "print_count": 0
          },
          "boxes": [

          ],
          "last_error": {
            "code": null,
            "message": null
          },
          "remote_created_at": "2026-08-11T09:00:00Z",
          "remote_closed_at": null,
          "last_synced_at": "2026-08-11T10:15:00Z",
          "delivered_at": "2026-08-11T10:15:00Z"
        }
      ]
    },
    "orders": [
      {
        "assignment_id": 8801,
        "marked_at": "2026-08-11T09:30:00Z",
        "created_at": "2026-08-11T09:00:00Z",
        "updated_at": "2026-08-11T09:30:00Z",
        "order": {
          "id": 49060,
          "external_id": "WB-900001234",
          "status_id": 20,
          "warehouse_id": 42,
          "shop_id": 12,
          "order_date": "2026-08-10",
          "send_date": "2026-08-11",
          "amounts": {
            "shipping_price": 0,
            "shipping_cost": 0,
            "sum": 39.98,
            "cod_sum": 0
          },
          "contact": {
            "first_name": "Иван",
            "middle_name": null,
            "last_name": "Петров",
            "phone": "+359888123456",
            "email": "customer@example.com",
            "country_id": 100,
            "city_id": 200,
            "postcode": "1000",
            "latitude": 42.6977,
            "longitude": 23.3219,
            "full_address": "Sofia"
          },
          "delivery": {
            "service_id": 17,
            "delivery_type": "pickup_point",
            "is_courier": false,
            "status": "created",
            "track_number": "WB-900001234",
            "pickup_point_id": "WB-SOF-01",
            "source_id": "wildberries",
            "tariff_code": null,
            "additional_services": {
            },
            "label": null,
            "delivery_date": "2026-08-12",
            "delivery_time_start": null,
            "delivery_time_end": null
          },
          "comments": {
            "delivery_service_text": null,
            "inner_text": "Клиентский пример для документа 740"
          },
          "offers": [
            {
              "id": 7001,
              "product_id": 1201,
              "quantity": 2,
              "estimated_price": 19.5,
              "price": 19.99,
              "expiration_date": "2027-01-15",
              "batch": "LOT-2026",
              "operation_user_id": 9,
              "product": {
                "id": 1201,
                "external_id": "EXT-10045",
                "shop_id": 12,
                "domain_id": 3,
                "status_id": 1,
                "type_id": 1,
                "name": "Coffee 250g",
                "article": "ART-001245",
                "sku": "SKU-001245",
                "price": 19.99,
                "estimated_price": 21.5,
                "image_url": null,
                "dimensions": {
                  "x": 105,
                  "y": 200,
                  "z": 32,
                  "unit": "mm"
                },
                "weight": {
                  "value": 250,
                  "unit": "g"
                },
                "datamatrix_required": true,
                "expiration_required": true,
                "comment": null,
                "description": "Ground coffee package",
                "barcodes": [
                  {
                    "barcode": "4601234567890",
                    "is_main": true
                  }
                ],
                "package": {
                  "kind": "unit",
                  "parent_product_id": null,
                  "base_product_id": null,
                  "multiplicity": null,
                  "base_multiplicity": null,
                  "depth": 0
                },
                "created_at": "2026-08-01T09:00:00Z",
                "updated_at": "2026-08-10T09:00:00Z"
              },
              "reservation": {
                "required_qty": 2,
                "reserved_qty": 2,
                "unreserved_qty": 0,
                "missing_qty": 0,
                "status": "reserved"
              },
              "reservation_items": [

              ],
              "created_at": "2026-08-10T09:00:00Z",
              "updated_at": "2026-08-10T09:00:00Z"
            }
          ],
          "datamatrix_codes": [
            {
              "id": 6101,
              "domain_id": 3,
              "warehouse_id": 42,
              "status_id": 1,
              "acceptance_id": 5101,
              "order_id": 49060,
              "product_id": 1201,
              "barcode": "04601234567890",
              "short_code": "ABC123",
              "crypto_tail": "CRYPTO",
              "datamatrix": "010460123456789021ABC123",
              "production_date": "2026-01-15",
              "expiration_date": "2027-01-15",
              "batch": "LOT-2026",
              "created_at": "2026-08-11T09:15:00Z",
              "updated_at": "2026-08-11T09:15:00Z",
              "used_at": null
            }
          ],
          "warehouse": {
            "id": 42,
            "name": "Warehouse Sofia",
            "type_id": 2,
            "parent_id": 41
          },
          "shop": {
            "id": 12,
            "name": "Demo Online Store",
            "status_id": 1
          },
          "company": {
            "id": 7,
            "name": "Demo Company",
            "legal_name": "Demo Company Ltd."
          },
          "place": null,
          "accumulation_place": null,
          "measurements": {
            "places": 1,
            "dimensions": {
              "x": 220,
              "y": 160,
              "z": 120,
              "unit": "mm"
            },
            "weight": {
              "value": 600,
              "unit": "g"
            }
          },
          "settings": {
            "blank_url": null
          },
          "consumables": [

          ],
          "wildberries": {
            "id": 2101,
            "account_id": 71,
            "wb_order_id": "900001234",
            "order_uid": "WB-UID-49060",
            "rid": "WB-RID-49060",
            "product_id": 1201,
            "state": "confirmed",
            "state_name": "Подтверждён",
            "fulfillment_state": "delivered",
            "fulfillment_state_name": "Доставлен",
            "supplier_status": "confirm",
            "wb_status": "sold",
            "supply_id": 3201,
            "external_supply_id": "WB-GI-740",
            "supply_state": "delivered",
            "delivery_type": "fbs",
            "cross_border_type": null,
            "is_b2b": false,
            "wb_warehouse_id": 507,
            "office_id": 507,
            "nm_id": 12345678,
            "chrt_id": 87654321,
            "article": "ART-001245",
            "skus": [
              "4601234567890"
            ],
            "required_meta": [
              "sgtin"
            ],
            "optional_meta": [

            ],
            "meta_state": "accepted",
            "sticker_state": "ready",
            "prices": {
              "price_minor": 1999,
              "final_price_minor": 1999,
              "sale_price_minor": 1999,
              "currency": "RUB"
            },
            "markings": [
              {
                "id": 1,
                "datamatrix_id": 6101,
                "type": "sgtin",
                "masked_value": "010460…ABC123",
                "value_hash": "sha256:example",
                "state": "accepted",
                "remote_decision": "accepted",
                "error_code": null,
                "error_message": null,
                "submitted_at": "2026-08-11T09:30:00Z",
                "verified_at": "2026-08-11T09:31:00Z",
                "ambiguous_at": null
              }
            ],
            "current_sticker": {
              "id": 3401,
              "kind": "order_sticker",
              "format": "png",
              "width": 580,
              "height": 400,
              "barcode": "WB-900001234",
              "part_a": "123456",
              "part_b": "7890",
              "content_hash": "sha256:sticker-example",
              "content_available": true,
              "is_current": true,
              "fetched_at": "2026-08-11T09:25:00Z",
              "last_printed_at": null,
              "print_count": 0
            },
            "last_error": {
              "code": null,
              "message": null
            },
            "remote_created_at": "2026-08-10T09:00:00Z",
            "seller_date": "2026-08-10",
            "delivery_date": "2026-08-12",
            "confirmed_at": "2026-08-11T09:20:00Z",
            "completed_at": "2026-08-11T10:15:00Z",
            "imported_at": "2026-08-10T09:05:00Z",
            "mapped_at": "2026-08-10T09:06:00Z",
            "reserved_at": "2026-08-11T09:10:00Z",
            "remote_status_checked_at": "2026-08-11T10:15:00Z"
          },
          "batch_matches": [

          ]
        }
      }
    ],
    "created_at": "2026-08-11T08:45:00Z",
    "updated_at": "2026-08-11T10:15:00Z"
  },
  "meta": {
    "api_version": "v2"
  }
}

400 Некорректный запрос

BadRequest

Некорректный запрос.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

BAD_REQUEST

{
  "message": "Bad request.",
  "error": "BAD_REQUEST"
}

401 Требуется аутентификация

Unauthorized

Требуется аутентификация.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

AUTH_REQUIRED

{
  "message": "Authentication is required.",
  "error": "AUTH_REQUIRED"
}

403 Доступ запрещен

Forbidden

Аутентифицированному аккаунту запрещено выполнять это действие.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

FORBIDDEN

{
  "message": "The authenticated account is not allowed to perform this action.",
  "error": "FORBIDDEN"
}

404 Не найдено

NotFound

Запрошенный ресурс не найден или находится вне области доступа аккаунта.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

NOT_FOUND

{
  "message": "The requested resource was not found or is outside the authenticated account scope.",
  "error": "NOT_FOUND"
}

409 Конфликт

SendDocumentConflict

The shipment document lifecycle or composition does not allow the requested operation.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The given data was invalid."
error нет string "VALIDATION_ERROR"
errors да object {"warehouse_id":["The selected warehouse is invalid."]}

Примеры ответа

documentStateConflict

{
  "message": "Состав документа уже заморожен.",
  "errors": {
    "send_document": [
      "Состав документа уже заморожен."
    ]
  }
}

422 Ошибка валидации

ValidationError

Ошибка валидации.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The given data was invalid."
error нет string "VALIDATION_ERROR"
errors да object {"warehouse_id":["The selected warehouse is invalid."]}

Примеры ответа

validationError

{
  "message": "The given data was invalid.",
  "error": "VALIDATION_ERROR",
  "errors": {
    "warehouse_id": [
      "The selected warehouse is invalid."
    ]
  }
}

429 Превышен лимит запросов

TooManyRequests

Превышен лимит запросов.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "Too Many Attempts."
error да string "RATE_LIMITED"

500 Внутренняя ошибка сервера

InternalServerError

Произошла непредвиденная ошибка сервера.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

INTERNAL_SERVER_ERROR

{
  "message": "An unexpected server error occurred.",
  "error": "INTERNAL_SERVER_ERROR"
}
DELETE /api/v2/send-documents/{id}

Удалить документ отправки

operationIddeleteSendDocuments
РазделДокументы отправок
БезопасностьbearerAuth

Deletes the resource when the authenticated account has permission and the current lifecycle state allows deletion. If deletion is blocked by related records or document state, the API returns a validation error.

Пример HTTP-запроса (cURL)

Подставьте свой сервер и токен. ID из примера замените реальными доступными ID. Для тела запроса сохраните подходящий JSON из раздела ниже в request.json; перед отправкой замените демонстрационные значения. Заголовок Idempotency-Key использует ключ одной логической операции.

curl --globoff --request DELETE "${NWMS_BASE_URL}/api/v2/send-documents/740" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer ${NWMS_TOKEN}" \
  --header "Idempotency-Key: ${NWMS_REQUEST_KEY}"

Параметры

Имя Где Обязательное Тип Style Explode Ограничения Описание Пример
id path да integer:int64 min: 1 Shipment document ID. 740
Idempotency-Key header нет string maxLength: 191 Опциональный ключ идемпотентности для write-запросов API v2. Успешные ответы 2xx/3xx повторяются для того же ключа и идентичного payload в течение одного дня. Тот же ключ с другим payload возвращает 409. "ord-create-20260714-001"

Тело запроса

Тело запроса отсутствует.

Ответы

200 Successful response.

Successful response.

Поле Обязательное Тип Флаги Ограничения Описание Пример
data да object | null
meta да object
meta.api_version да enum enum: v2 "v2"
meta.deleted да boolean true
meta.id да integer:int64 min: 1 1001

Примеры ответа

success

{
  "data": null,
  "meta": {
    "api_version": "v2",
    "deleted": true,
    "id": 740
  }
}

400 Некорректный запрос

BadRequest

Некорректный запрос.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

BAD_REQUEST

{
  "message": "Bad request.",
  "error": "BAD_REQUEST"
}

401 Требуется аутентификация

Unauthorized

Требуется аутентификация.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

AUTH_REQUIRED

{
  "message": "Authentication is required.",
  "error": "AUTH_REQUIRED"
}

403 Доступ запрещен

Forbidden

Аутентифицированному аккаунту запрещено выполнять это действие.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

FORBIDDEN

{
  "message": "The authenticated account is not allowed to perform this action.",
  "error": "FORBIDDEN"
}

404 Не найдено

NotFound

Запрошенный ресурс не найден или находится вне области доступа аккаунта.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

NOT_FOUND

{
  "message": "The requested resource was not found or is outside the authenticated account scope.",
  "error": "NOT_FOUND"
}

409 Конфликт

SendDocumentConflict

The shipment document lifecycle or composition does not allow the requested operation.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The given data was invalid."
error нет string "VALIDATION_ERROR"
errors да object {"warehouse_id":["The selected warehouse is invalid."]}

Примеры ответа

documentStateConflict

{
  "message": "Состав документа уже заморожен.",
  "errors": {
    "send_document": [
      "Состав документа уже заморожен."
    ]
  }
}

422 Ошибка валидации

ValidationError

Ошибка валидации.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The given data was invalid."
error нет string "VALIDATION_ERROR"
errors да object {"warehouse_id":["The selected warehouse is invalid."]}

Примеры ответа

validationError

{
  "message": "The given data was invalid.",
  "error": "VALIDATION_ERROR",
  "errors": {
    "warehouse_id": [
      "The selected warehouse is invalid."
    ]
  }
}

429 Превышен лимит запросов

TooManyRequests

Превышен лимит запросов.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "Too Many Attempts."
error да string "RATE_LIMITED"

500 Внутренняя ошибка сервера

InternalServerError

Произошла непредвиденная ошибка сервера.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

INTERNAL_SERVER_ERROR

{
  "message": "An unexpected server error occurred.",
  "error": "INTERNAL_SERVER_ERROR"
}
GET /api/v2/send-documents/{id}/events

Получить журнал событий документа отправки

operationIdlistSendDocumentsEvents
РазделДокументы отправок
БезопасностьbearerAuth

Возвращает send documents, видимые аутентифицированному аккаунту. Используйте описанные query parameters для фильтрации, сортировки и пагинации.
Unknown read parameters are ignored. per_page is silently capped; use meta.per_page. Date-only boundaries follow the installation's stored calendar dates; ISO timestamps are serialized in UTC. The default general API limit is 600/minute; a user-specific override may apply. Its bucket is shared by authenticated user, not by shop/domain; Retry-After is returned on throttling.
Unknown read parameters are ignored. per_page is silently capped; use meta.per_page. Date-only boundaries follow the installation's stored calendar dates; ISO timestamps are serialized in UTC. The default general API limit is 600/minute; a user-specific override may apply. Its bucket is shared by authenticated user, not by shop/domain; Retry-After is returned on throttling.
Unknown read parameters are ignored. per_page is silently capped; use meta.per_page. Date-only boundaries follow the installation's stored calendar dates; ISO timestamps are serialized in UTC. The default general API limit is 600/minute; a user-specific override may apply. Its bucket is shared by authenticated user, not by shop/domain; Retry-After is returned on throttling.
Unknown read parameters are ignored. per_page is silently capped; use meta.per_page. Date-only boundaries follow the installation's stored calendar dates; ISO timestamps are serialized in UTC. The default general API limit is 600/minute; a user-specific override may apply. Its bucket is shared by authenticated user, not by shop/domain; Retry-After is returned on throttling.
Unknown read parameters are ignored. per_page is silently capped; use meta.per_page. Date-only boundaries follow the installation's stored calendar dates; ISO timestamps are serialized in UTC. The default general API limit is 600/minute; a user-specific override may apply. Its bucket is shared by authenticated user, not by shop/domain; Retry-After is returned on throttling.
Unknown read parameters are ignored. per_page is silently capped; use meta.per_page. Date-only boundaries follow the installation's stored calendar dates; ISO timestamps are serialized in UTC. The default general API limit is 600/minute; a user-specific override may apply. Its bucket is shared by authenticated user, not by shop/domain; Retry-After is returned on throttling.

Пример HTTP-запроса (cURL)

Подставьте свой сервер и токен. ID из примера замените реальными доступными ID. Для тела запроса сохраните подходящий JSON из раздела ниже в request.json; перед отправкой замените демонстрационные значения. Заголовок Idempotency-Key использует ключ одной логической операции.

curl --globoff --request GET "${NWMS_BASE_URL}/api/v2/send-documents/740/events" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer ${NWMS_TOKEN}"

Параметры

Имя Где Обязательное Тип Style Explode Ограничения Описание Пример
id path да integer:int64 min: 1 Shipment document ID. 740
page query нет integer:int64 form true min: 1 Номер страницы. Этот фильтр также можно передать как filter[page], если это поддерживает Laravel query adapter. 1
per_page query нет integer:int64 form true min: 1
max: 500
Количество записей на странице. По умолчанию 100; максимум 500. Этот фильтр также можно передать как filter[per_page], если это поддерживает Laravel query adapter. 100
sort query нет string form false pattern: ^-?[A-Za-z0-9_]+(,-?[A-Za-z0-9_]+)*$ Поля сортировки через запятую. Префикс - означает сортировку по убыванию. Допустимые поля: id, happened_at, created_at. По умолчанию: id. Этот фильтр также можно передать как filter[sort], если это поддерживает Laravel query adapter. "id"
id query нет integer:int64 form true min: 1 Фильтр по id с точным совпадением. Этот фильтр также можно передать как filter[id], если это поддерживает Laravel query adapter. 1001
category query нет string form true Фильтр по category с точным совпадением. Этот фильтр также можно передать как filter[category], если это поддерживает Laravel query adapter. "document"
state query нет string form true Фильтр по state с точным совпадением. Этот фильтр также можно передать как filter[state], если это поддерживает Laravel query adapter. "ready"
direction query нет string form true Фильтр по direction с точным совпадением. Этот фильтр также можно передать как filter[direction], если это поддерживает Laravel query adapter. "outbound"
order_id query нет integer:int64 form true min: 1 Фильтр по order_id с точным совпадением. Этот фильтр также можно передать как filter[order_id], если это поддерживает Laravel query adapter. 1
product_id query нет integer:int64 form true min: 1 Фильтр по product_id с точным совпадением. Этот фильтр также можно передать как filter[product_id], если это поддерживает Laravel query adapter. 1201
event query нет string form true Фильтр по event с частичным текстовым совпадением. Этот фильтр также можно передать как filter[event], если это поддерживает Laravel query adapter. "order_attached"
error_message query нет string form true Фильтр по error_message с частичным текстовым совпадением. Этот фильтр также можно передать как filter[error_message], если это поддерживает Laravel query adapter. "Remote service rejected the shipment"
happened_at_from query нет string:date form true Нижняя включительная граница даты для happened_at. Этот фильтр также можно передать как filter[happened_at_from], если это поддерживает Laravel query adapter. "2026-07-14"
happened_at_to query нет string:date form true Верхняя включительная граница даты для happened_at. Этот фильтр также можно передать как filter[happened_at_to], если это поддерживает Laravel query adapter. "2026-07-14"
created_at_from query нет string:date form true Нижняя включительная граница даты для created_at. Этот фильтр также можно передать как filter[created_at_from], если это поддерживает Laravel query adapter. "2026-07-14"
created_at_to query нет string:date form true Верхняя включительная граница даты для created_at. Этот фильтр также можно передать как filter[created_at_to], если это поддерживает Laravel query adapter. "2026-07-14"

Тело запроса

Тело запроса отсутствует.

Ответы

200 Successful response.

Successful response.

Поле Обязательное Тип Флаги Ограничения Описание Пример
data да array<SendDocumentAuditEvent>
data[] нет SendDocumentAuditEvent Append-only audit event for a shipment document.
data[].id да integer:int64 readOnly min: 1 1001
data[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data[].category нет string | null "document"
data[].event да string "order_attached"
data[].state нет string | null "open"
data[].direction нет string | null "outbound"
data[].happened_at нет string:date-time | null "2026-08-11T09:00:00Z"
data[].actor_id нет integer:int64 | null min: 1 15
data[].actor_type нет string | null "user"
data[].request_id нет string | null "req-740-attach"
data[].order_id нет integer:int64 | null min: 1 49060
data[].product_id нет integer:int64 | null min: 1 1201
data[].entity_type нет string | null "shipment"
data[].entity_id нет integer:int64 | null min: 1 740
data[].context да object
data[].error_code нет string | null ""
data[].error_message нет string | null ""
links да PaginationLinks
links.first да string:uri | null "https://betawms.ffcdek.ru/api/v2/orders?page=1"
links.last да string:uri | null "https://betawms.ffcdek.ru/api/v2/orders?page=2"
links.prev да string:uri | null
links.next да string:uri | null "https://betawms.ffcdek.ru/api/v2/orders?page=2"
meta да PaginationMeta
meta.api_version да enum enum: v2 "v2"
meta.current_page да integer:int32 min: 1 1
meta.from да integer:int32 | null min: 1 1
meta.last_page да integer:int32 min: 1 2
meta.path да string:uri "https://betawms.ffcdek.ru/api/v2/orders"
meta.per_page да integer:int32 min: 1 50
meta.to да integer:int32 | null min: 1 50
meta.total да integer:int32 min: 0 73

Примеры ответа

success

{
  "data": [
    {
      "id": 9901,
      "category": "document",
      "event": "order_attached",
      "state": "open",
      "direction": "outbound",
      "happened_at": "2026-08-11T09:00:00Z",
      "actor_id": 15,
      "actor_type": "user",
      "request_id": "req-740-attach",
      "order_id": 49060,
      "product_id": null,
      "entity_type": "shipment",
      "entity_id": 740,
      "context": {
        "document_id": 740,
        "order_id": 49060
      },
      "error_code": null,
      "error_message": null,
      "created_at": "2026-08-11T09:00:00Z",
      "updated_at": "2026-08-11T09:00:00Z"
    }
  ],
  "links": {
    "first": "https://betawms.ffcdek.ru/api/v2/send-documents/740/events?page=1",
    "last": "https://betawms.ffcdek.ru/api/v2/send-documents/740/events?page=2",
    "prev": null,
    "next": "https://betawms.ffcdek.ru/api/v2/send-documents/740/events?page=2"
  },
  "meta": {
    "api_version": "v2",
    "current_page": 1,
    "from": 1,
    "last_page": 2,
    "path": "https://betawms.ffcdek.ru/api/v2/send-documents/740/events",
    "per_page": 100,
    "to": 100,
    "total": 123
  }
}

401 Требуется аутентификация

Unauthorized

Требуется аутентификация.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

AUTH_REQUIRED

{
  "message": "Authentication is required.",
  "error": "AUTH_REQUIRED"
}

403 Доступ запрещен

Forbidden

Аутентифицированному аккаунту запрещено выполнять это действие.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

FORBIDDEN

{
  "message": "The authenticated account is not allowed to perform this action.",
  "error": "FORBIDDEN"
}

404 Не найдено

NotFound

Запрошенный ресурс не найден или находится вне области доступа аккаунта.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

NOT_FOUND

{
  "message": "The requested resource was not found or is outside the authenticated account scope.",
  "error": "NOT_FOUND"
}

429 Превышен лимит запросов

TooManyRequests

Превышен лимит запросов.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "Too Many Attempts."
error да string "RATE_LIMITED"

500 Внутренняя ошибка сервера

InternalServerError

Произошла непредвиденная ошибка сервера.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

INTERNAL_SERVER_ERROR

{
  "message": "An unexpected server error occurred.",
  "error": "INTERNAL_SERVER_ERROR"
}
POST /api/v2/send-documents/{id}/orders

Добавить заказы в документ отправки

operationIdcreateSendDocumentsOrders
РазделДокументы отправок
БезопасностьbearerAuth

Attach orders to send document. Запрос использует описанную payload-схему, проверяет видимость tenant и возвращает нормализованный API envelope.

Пример HTTP-запроса (cURL)

Подставьте свой сервер и токен. ID из примера замените реальными доступными ID. Для тела запроса сохраните подходящий JSON из раздела ниже в request.json; перед отправкой замените демонстрационные значения. Заголовок Idempotency-Key использует ключ одной логической операции.

curl --globoff --request POST "${NWMS_BASE_URL}/api/v2/send-documents/740/orders" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer ${NWMS_TOKEN}" \
  --header "Idempotency-Key: ${NWMS_REQUEST_KEY}" \
  --header "Content-Type: application/json" \
  --data-binary @request.json

Параметры

Имя Где Обязательное Тип Style Explode Ограничения Описание Пример
id path да integer:int64 min: 1 Shipment document ID. 740
Idempotency-Key header нет string maxLength: 191 Опциональный ключ идемпотентности для write-запросов API v2. Успешные ответы 2xx/3xx повторяются для того же ключа и идентичного payload в течение одного дня. Тот же ключ с другим payload возвращает 409. "ord-create-20260714-001"

Тело запроса

AttachSendDocumentOrdersRequest обязательно

Поле Обязательное Тип Флаги Ограничения Описание Пример
data да AttachSendDocumentOrdersPayload Orders to attach. Every order must be visible to the caller and compatible with the document warehouse, delivery services and lifecycle state.
data.order_ids да array<integer:int64> minItems: 1
maxItems: 100
data.order_ids[] нет integer:int64 min: 1 49060

Примеры запроса

default

{
  "data": {
    "order_ids": [
      49060
    ]
  }
}

Ответы

201 Created.

Created.

Поле Обязательное Тип Флаги Ограничения Описание Пример
data да SendDocument Outbound shipment document with its complete operational composition. Collection relations are empty unless requested through include; the item endpoint always loads them.
data.id да integer:int64 readOnly min: 1 1001
data.created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.domain_id нет integer:int64 | null min: 1 3
data.status_id нет integer:int64 | null 1
data.status нет object | null
data.status.id да integer:int64 1
data.status.name да string "Открыт"
data.status.color нет string | null "#2457c5"
data.status.background_color нет string | null "#eaf0ff"
data.warehouse_id нет integer:int64 | null min: 1 42
data.warehouse нет object | null
data.warehouse.id да integer:int64 min: 1 42
data.warehouse.name да string "Warehouse Sofia"
data.warehouse.type_id нет integer:int64 | null 2
data.warehouse.parent_id нет integer:int64 | null min: 1 41
data.delivery_service_ids да array<integer:int64>
data.delivery_service_ids[] нет integer:int64 min: 1 17
data.delivery_services да array<SendDocumentDeliveryService>
data.delivery_services[] нет SendDocumentDeliveryService
data.delivery_services[].id да integer:int64 min: 1 17
data.delivery_services[].name да string "Wildberries FBS"
data.delivery_services[].status_id да integer:int64 1
data.delivery_services[].external_id нет string | null "wb-fbs"
data.delivery_services[].source_id нет string | null "wildberries"
data.delivery_services[].delivery_type нет string | null "pickup_point"
data.delivery_services[].is_courier да boolean false
data.document_date нет string:date | null "2026-08-11"
data.closed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.comment нет string | null "Wildberries shipment 740"
data.order_count да integer:int64 min: 0 1
data.processing да SendDocumentProcessing
data.processing.mode нет string | null "standard"
data.processing.pipeline да array<string>
data.processing.pipeline[] нет string "assignment"
data.processing.state нет string | null "open"
data.processing.batch_profile_id нет integer:int64 | null min: 1 31
data.processing.batch_profile нет object | null
data.processing.batch_profile.id да integer:int64 min: 1 31
data.processing.batch_profile.name да string "Standard packing"
data.processing.batch_profile.processing_mode нет string | null "standard"
data.processing.composition_frozen_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.processing.batch_started_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.processing.batch_completed_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.wildberries да SendDocumentWildberries Wildberries document-level state and safe supply/QR/sticker artifact metadata. Binary label content and encrypted provider payloads are not returned.
data.wildberries.fulfillment_state нет string | null "delivered"
data.wildberries.error_message нет string | null ""
data.wildberries.processed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.wildberries.supplies да array<object>
data.wildberries.supplies[] нет object
data.orders да array<SendDocumentOrderAssignment>
data.orders[] нет SendDocumentOrderAssignment
data.orders[].assignment_id да integer:int64 min: 1 8801
data.orders[].marked_at нет string:date-time | null "2026-08-11T09:30:00Z"
data.orders[].created_at нет string:date-time | null "2026-08-11T09:00:00Z"
data.orders[].updated_at нет string:date-time | null "2026-08-11T09:30:00Z"
data.orders[].order да object | null Complete order snapshot embedded into a shipment document. Marketplace and batch objects preserve provider-specific fields.
data.orders[].order.id да integer:int64 min: 1 49060
data.orders[].order.external_id нет string | null "WB-900001234"
data.orders[].order.status_id нет integer:int64 | null 20
data.orders[].order.warehouse_id нет integer:int64 | null min: 1 42
data.orders[].order.shop_id нет integer:int64 | null min: 1 12
data.orders[].order.order_date нет string:date | null "2026-08-10"
data.orders[].order.send_date нет string:date | null "2026-08-11"
data.orders[].order.amounts нет object | null
data.orders[].order.amounts.shipping_price нет number:float | null 8.6
data.orders[].order.amounts.shipping_cost нет number:float | null 0
data.orders[].order.amounts.sum нет number:float | null 39.98
data.orders[].order.amounts.cod_sum нет number:float | null 48.58
data.orders[].order.contact нет object | null
data.orders[].order.contact.first_name нет string | null "Ivan"
data.orders[].order.contact.middle_name нет string | null "Ivanovich"
data.orders[].order.contact.last_name нет string | null "Petrov"
data.orders[].order.contact.phone нет string | null "+359888123456"
data.orders[].order.contact.email нет string:email | null "customer@example.com"
data.orders[].order.contact.country_id нет integer:int64 | null min: 1 100
data.orders[].order.contact.city_id нет integer:int64 | null min: 1 200
data.orders[].order.contact.postcode нет string | null "1000"
data.orders[].order.contact.latitude нет number:float | null min: -90
max: 90
42.6977
data.orders[].order.contact.longitude нет number:float | null min: -180
max: 180
23.3219
data.orders[].order.contact.full_address нет string | null "1 Vitosha Boulevard, Sofia"
data.orders[].order.delivery нет object | null
data.orders[].order.delivery.service_id нет integer:int64 | null min: 1 1
data.orders[].order.delivery.delivery_type да enum | null enum: door, pickup_point Normalized delivery channel derived from the configured delivery service. Null when the service type is unknown. "door"
data.orders[].order.delivery.is_courier да boolean True for door delivery; false for pickup-point delivery or an unknown service type. true
data.orders[].order.delivery.status нет string | null "created"
data.orders[].order.delivery.track_number нет string | null "CDEK-123456789"
data.orders[].order.delivery.pickup_point_id нет string | null "SOFIA-01"
data.orders[].order.delivery.source_id нет string | null "cdek-15"
data.orders[].order.delivery.tariff_code нет integer:int64 | null 136
data.orders[].order.delivery.additional_services нет object Values of additional CDEK services configured for the selected integration. Boolean true enables a code-only service; other values are sent as the CDEK parameter. {"TRYING_ON":true,"PART_DELIV":false,"PACKAGE_1":2}
data.orders[].order.delivery.label нет string:uri | null "https://betawms.ffcdek.ru/labels/CDEK-123456789.pdf"
data.orders[].order.delivery.delivery_date нет string:date | null "2026-07-16"
data.orders[].order.delivery.delivery_time_start нет string:time | null "09:00:00Z"
data.orders[].order.delivery.delivery_time_end нет string:time | null "18:00:00Z"
data.orders[].order.comments нет object | null
data.orders[].order.comments.delivery_service_text нет string | null "Call before delivery"
data.orders[].order.comments.inner_text нет string | null "VIP customer"
data.orders[].order.offers да array<SendDocumentOrderLine>
data.orders[].order.offers[] нет SendDocumentOrderLine
data.orders[].order.offers[].id да integer:int64 min: 1 7001
data.orders[].order.offers[].product_id нет integer:int64 | null min: 1 1201
data.orders[].order.offers[].quantity нет number:float | null 2
data.orders[].order.offers[].estimated_price нет number:float | null 19.5
data.orders[].order.offers[].price нет number:float | null 19.99
data.orders[].order.offers[].expiration_date нет string:date | null "2027-01-15"
data.orders[].order.offers[].batch нет string | null "LOT-2026"
data.orders[].order.offers[].operation_user_id нет integer:int64 | null min: 1 9
data.orders[].order.offers[].product нет object | null
data.orders[].order.offers[].product.id да integer:int64 min: 1 1201
data.orders[].order.offers[].product.external_id нет string | null "EXT-10045"
data.orders[].order.offers[].product.domain_id нет integer:int64 | null min: 1 3
data.orders[].order.offers[].product.shop_id нет integer:int64 | null min: 1 12
data.orders[].order.offers[].product.status_id нет enum:int64 | null enum: 1, 2, 3 1 - active; 2 - disabled; 3 - deleted. 1
data.orders[].order.offers[].product.type_id нет integer:int64 | null 1
data.orders[].order.offers[].product.name да string "Coffee 250g"
data.orders[].order.offers[].product.article нет string | null "ART-001245"
data.orders[].order.offers[].product.sku нет string | null "SKU-001245"
data.orders[].order.offers[].product.price нет number:float | null 19.99
data.orders[].order.offers[].product.estimated_price нет number:float | null 21.5
data.orders[].order.offers[].product.image_url нет string:uri | null "https://betawms.ffcdek.ru/offer-images/products/coffee-250g.jpg"
data.orders[].order.offers[].product.dimensions да Dimensions
data.orders[].order.offers[].product.weight да Weight
data.orders[].order.offers[].product.datamatrix_required да boolean true
data.orders[].order.offers[].product.expiration_required да boolean true
data.orders[].order.offers[].product.comment нет string | null "Keep dry"
data.orders[].order.offers[].product.description нет string | null "Ground coffee package"
data.orders[].order.offers[].product.barcodes да array<ProductBarcode>
data.orders[].order.offers[].product.package да object
data.orders[].order.offers[].product.created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].product.updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].reservation нет object | null Reservation totals for one order line.
data.orders[].order.offers[].reservation.required_qty да number:float 3
data.orders[].order.offers[].reservation.reserved_qty да number:float 1
data.orders[].order.offers[].reservation.unreserved_qty да number:float 2
data.orders[].order.offers[].reservation.missing_qty да number:float 2
data.orders[].order.offers[].reservation.status да enum enum: not_required, missing, partial, reserved Reservation state calculated from the quantity required by the order and the quantity actually reserved. "partial"
data.orders[].order.offers[].reservation_items нет array<OrderReservationItem>
data.orders[].order.offers[].reservation_items[] нет OrderReservationItem Physical product or expanded component used to explain a reservation shortage.
data.orders[].order.offers[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes да array<DataMatrix>
data.orders[].order.datamatrix_codes[] нет DataMatrix Код DataMatrix для маркированного товара.
data.orders[].order.datamatrix_codes[].id да integer:int64 readOnly min: 1 1001
data.orders[].order.datamatrix_codes[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes[].domain_id нет integer:int64 | null min: 1 3
data.orders[].order.datamatrix_codes[].warehouse_id нет integer:int64 | null min: 1 42
data.orders[].order.datamatrix_codes[].status_id нет enum:int64 | null enum: 0, 1, 2 0 - Imported and available for future warehouse operations. 1 - Reserved or attached by an operational document. 2 - Used by an outbound or completed operation. 0
data.orders[].order.datamatrix_codes[].acceptance_id нет integer:int64 | null min: 1 5101
data.orders[].order.datamatrix_codes[].order_id нет integer:int64 | null min: 1 8101
data.orders[].order.datamatrix_codes[].product_id нет integer:int64 | null min: 1 1201
data.orders[].order.datamatrix_codes[].barcode нет string | null maxLength: 14 "04601234567890"
data.orders[].order.datamatrix_codes[].short_code нет string | null maxLength: 14 "ABC123"
data.orders[].order.datamatrix_codes[].crypto_tail нет string | null "CRYPTO"
data.orders[].order.datamatrix_codes[].datamatrix нет string | null maxLength: 125 "010460123456789021ABC123"
data.orders[].order.datamatrix_codes[].production_date нет string:date | null "2026-01-15"
data.orders[].order.datamatrix_codes[].expiration_date нет string:date | null "2027-01-15"
data.orders[].order.datamatrix_codes[].batch нет string | null "LOT-2026"
data.orders[].order.datamatrix_codes[].used_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.warehouse нет object | null
data.orders[].order.warehouse.id да integer:int64 min: 1 42
data.orders[].order.warehouse.name да string "Warehouse Sofia"
data.orders[].order.warehouse.type_id нет integer:int64 | null 2
data.orders[].order.warehouse.parent_id нет integer:int64 | null min: 1 41
data.orders[].order.shop нет object | null
data.orders[].order.shop.id да integer:int64 min: 1 12
data.orders[].order.shop.name да string "Demo Online Store"
data.orders[].order.shop.status_id нет integer:int64 | null 1
data.orders[].order.company нет object | null
data.orders[].order.company.id да integer:int64 min: 1 7
data.orders[].order.company.name да string "Demo Company"
data.orders[].order.company.legal_name нет string | null "Demo Company Ltd."
data.orders[].order.place нет object | null
data.orders[].order.accumulation_place нет object | null
data.orders[].order.measurements нет object | null
data.orders[].order.settings нет object | null
data.orders[].order.consumables да array<object>
data.orders[].order.consumables[] нет object
data.orders[].order.wildberries нет object | null
data.orders[].order.wildberries.completed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.orders[].order.batch_matches да array<object>
data.orders[].order.batch_matches[] нет object
meta да ResponseMeta
meta.api_version да enum enum: v2 "v2"
meta.deleted нет boolean true
meta.id нет integer:int64 | null min: 1 1001
meta.command_replayed нет boolean True when an idempotent cross-dock command returned the original successful result. false
meta.crossdock_configuration нет object | null
meta.crossdock_configuration.physical_warehouse_id да integer:int64 min: 1 42
meta.crossdock_configuration.enabled да boolean true
meta.crossdock_configuration.process_version да string "direct_order_v1"

Примеры ответа

success

{
  "data": {
    "id": 740,
    "domain_id": 3,
    "status_id": 1,
    "status": {
      "id": 1,
      "name": "Открыт",
      "color": "#2457c5",
      "background_color": "#eaf0ff"
    },
    "warehouse_id": 42,
    "warehouse": {
      "id": 42,
      "name": "Warehouse Sofia",
      "type_id": 2,
      "parent_id": 41
    },
    "delivery_service_ids": [
      17
    ],
    "delivery_services": [
      {
        "id": 17,
        "name": "Wildberries FBS",
        "status_id": 1,
        "external_id": "wb-fbs",
        "source_id": "wildberries",
        "delivery_type": "pickup_point",
        "is_courier": false
      }
    ],
    "document_date": "2026-08-11",
    "closed_at": "2026-08-11T10:15:00Z",
    "comment": "Wildberries shipment 740",
    "order_count": 1,
    "processing": {
      "mode": "standard",
      "pipeline": [
        "assignment",
        "marking",
        "transfer"
      ],
      "state": "open",
      "batch_profile_id": null,
      "batch_profile": null,
      "composition_frozen_at": null,
      "batch_started_at": null,
      "batch_completed_at": null
    },
    "wildberries": {
      "fulfillment_state": "delivered",
      "error_message": null,
      "processed_at": "2026-08-11T10:15:00Z",
      "supplies": [
        {
          "id": 3201,
          "account_id": 71,
          "external_id": "WB-GI-740",
          "name": "Поставка 740",
          "state": "delivered",
          "state_name": "Доставлена",
          "destination_type": "office",
          "destination_office_id": 507,
          "is_automatic": false,
          "is_b2b": false,
          "cargo_type": "box",
          "cross_border_type": null,
          "order_count": 1,
          "current_qr": {
            "id": 3301,
            "kind": "supply_qr",
            "format": "svg",
            "width": 580,
            "height": 400,
            "barcode": "WB-GI-740",
            "part_a": null,
            "part_b": null,
            "content_hash": "sha256:qr-example",
            "content_available": true,
            "is_current": true,
            "fetched_at": "2026-08-11T09:00:00Z",
            "last_printed_at": null,
            "print_count": 0
          },
          "boxes": [

          ],
          "last_error": {
            "code": null,
            "message": null
          },
          "remote_created_at": "2026-08-11T09:00:00Z",
          "remote_closed_at": null,
          "last_synced_at": "2026-08-11T10:15:00Z",
          "delivered_at": "2026-08-11T10:15:00Z"
        }
      ]
    },
    "orders": [
      {
        "assignment_id": 8801,
        "marked_at": "2026-08-11T09:30:00Z",
        "created_at": "2026-08-11T09:00:00Z",
        "updated_at": "2026-08-11T09:30:00Z",
        "order": {
          "id": 49060,
          "external_id": "WB-900001234",
          "status_id": 20,
          "warehouse_id": 42,
          "shop_id": 12,
          "order_date": "2026-08-10",
          "send_date": "2026-08-11",
          "amounts": {
            "shipping_price": 0,
            "shipping_cost": 0,
            "sum": 39.98,
            "cod_sum": 0
          },
          "contact": {
            "first_name": "Иван",
            "middle_name": null,
            "last_name": "Петров",
            "phone": "+359888123456",
            "email": "customer@example.com",
            "country_id": 100,
            "city_id": 200,
            "postcode": "1000",
            "latitude": 42.6977,
            "longitude": 23.3219,
            "full_address": "Sofia"
          },
          "delivery": {
            "service_id": 17,
            "delivery_type": "pickup_point",
            "is_courier": false,
            "status": "created",
            "track_number": "WB-900001234",
            "pickup_point_id": "WB-SOF-01",
            "source_id": "wildberries",
            "tariff_code": null,
            "additional_services": {
            },
            "label": null,
            "delivery_date": "2026-08-12",
            "delivery_time_start": null,
            "delivery_time_end": null
          },
          "comments": {
            "delivery_service_text": null,
            "inner_text": "Клиентский пример для документа 740"
          },
          "offers": [
            {
              "id": 7001,
              "product_id": 1201,
              "quantity": 2,
              "estimated_price": 19.5,
              "price": 19.99,
              "expiration_date": "2027-01-15",
              "batch": "LOT-2026",
              "operation_user_id": 9,
              "product": {
                "id": 1201,
                "external_id": "EXT-10045",
                "shop_id": 12,
                "domain_id": 3,
                "status_id": 1,
                "type_id": 1,
                "name": "Coffee 250g",
                "article": "ART-001245",
                "sku": "SKU-001245",
                "price": 19.99,
                "estimated_price": 21.5,
                "image_url": null,
                "dimensions": {
                  "x": 105,
                  "y": 200,
                  "z": 32,
                  "unit": "mm"
                },
                "weight": {
                  "value": 250,
                  "unit": "g"
                },
                "datamatrix_required": true,
                "expiration_required": true,
                "comment": null,
                "description": "Ground coffee package",
                "barcodes": [
                  {
                    "barcode": "4601234567890",
                    "is_main": true
                  }
                ],
                "package": {
                  "kind": "unit",
                  "parent_product_id": null,
                  "base_product_id": null,
                  "multiplicity": null,
                  "base_multiplicity": null,
                  "depth": 0
                },
                "created_at": "2026-08-01T09:00:00Z",
                "updated_at": "2026-08-10T09:00:00Z"
              },
              "reservation": {
                "required_qty": 2,
                "reserved_qty": 2,
                "unreserved_qty": 0,
                "missing_qty": 0,
                "status": "reserved"
              },
              "reservation_items": [

              ],
              "created_at": "2026-08-10T09:00:00Z",
              "updated_at": "2026-08-10T09:00:00Z"
            }
          ],
          "datamatrix_codes": [
            {
              "id": 6101,
              "domain_id": 3,
              "warehouse_id": 42,
              "status_id": 1,
              "acceptance_id": 5101,
              "order_id": 49060,
              "product_id": 1201,
              "barcode": "04601234567890",
              "short_code": "ABC123",
              "crypto_tail": "CRYPTO",
              "datamatrix": "010460123456789021ABC123",
              "production_date": "2026-01-15",
              "expiration_date": "2027-01-15",
              "batch": "LOT-2026",
              "created_at": "2026-08-11T09:15:00Z",
              "updated_at": "2026-08-11T09:15:00Z",
              "used_at": null
            }
          ],
          "warehouse": {
            "id": 42,
            "name": "Warehouse Sofia",
            "type_id": 2,
            "parent_id": 41
          },
          "shop": {
            "id": 12,
            "name": "Demo Online Store",
            "status_id": 1
          },
          "company": {
            "id": 7,
            "name": "Demo Company",
            "legal_name": "Demo Company Ltd."
          },
          "place": null,
          "accumulation_place": null,
          "measurements": {
            "places": 1,
            "dimensions": {
              "x": 220,
              "y": 160,
              "z": 120,
              "unit": "mm"
            },
            "weight": {
              "value": 600,
              "unit": "g"
            }
          },
          "settings": {
            "blank_url": null
          },
          "consumables": [

          ],
          "wildberries": {
            "id": 2101,
            "account_id": 71,
            "wb_order_id": "900001234",
            "order_uid": "WB-UID-49060",
            "rid": "WB-RID-49060",
            "product_id": 1201,
            "state": "confirmed",
            "state_name": "Подтверждён",
            "fulfillment_state": "delivered",
            "fulfillment_state_name": "Доставлен",
            "supplier_status": "confirm",
            "wb_status": "sold",
            "supply_id": 3201,
            "external_supply_id": "WB-GI-740",
            "supply_state": "delivered",
            "delivery_type": "fbs",
            "cross_border_type": null,
            "is_b2b": false,
            "wb_warehouse_id": 507,
            "office_id": 507,
            "nm_id": 12345678,
            "chrt_id": 87654321,
            "article": "ART-001245",
            "skus": [
              "4601234567890"
            ],
            "required_meta": [
              "sgtin"
            ],
            "optional_meta": [

            ],
            "meta_state": "accepted",
            "sticker_state": "ready",
            "prices": {
              "price_minor": 1999,
              "final_price_minor": 1999,
              "sale_price_minor": 1999,
              "currency": "RUB"
            },
            "markings": [
              {
                "id": 1,
                "datamatrix_id": 6101,
                "type": "sgtin",
                "masked_value": "010460…ABC123",
                "value_hash": "sha256:example",
                "state": "accepted",
                "remote_decision": "accepted",
                "error_code": null,
                "error_message": null,
                "submitted_at": "2026-08-11T09:30:00Z",
                "verified_at": "2026-08-11T09:31:00Z",
                "ambiguous_at": null
              }
            ],
            "current_sticker": {
              "id": 3401,
              "kind": "order_sticker",
              "format": "png",
              "width": 580,
              "height": 400,
              "barcode": "WB-900001234",
              "part_a": "123456",
              "part_b": "7890",
              "content_hash": "sha256:sticker-example",
              "content_available": true,
              "is_current": true,
              "fetched_at": "2026-08-11T09:25:00Z",
              "last_printed_at": null,
              "print_count": 0
            },
            "last_error": {
              "code": null,
              "message": null
            },
            "remote_created_at": "2026-08-10T09:00:00Z",
            "seller_date": "2026-08-10",
            "delivery_date": "2026-08-12",
            "confirmed_at": "2026-08-11T09:20:00Z",
            "completed_at": "2026-08-11T10:15:00Z",
            "imported_at": "2026-08-10T09:05:00Z",
            "mapped_at": "2026-08-10T09:06:00Z",
            "reserved_at": "2026-08-11T09:10:00Z",
            "remote_status_checked_at": "2026-08-11T10:15:00Z"
          },
          "batch_matches": [

          ]
        }
      }
    ],
    "created_at": "2026-08-11T08:45:00Z",
    "updated_at": "2026-08-11T10:15:00Z"
  },
  "meta": {
    "api_version": "v2"
  }
}

400 Некорректный запрос

BadRequest

Некорректный запрос.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

BAD_REQUEST

{
  "message": "Bad request.",
  "error": "BAD_REQUEST"
}

401 Требуется аутентификация

Unauthorized

Требуется аутентификация.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

AUTH_REQUIRED

{
  "message": "Authentication is required.",
  "error": "AUTH_REQUIRED"
}

403 Доступ запрещен

Forbidden

Аутентифицированному аккаунту запрещено выполнять это действие.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

FORBIDDEN

{
  "message": "The authenticated account is not allowed to perform this action.",
  "error": "FORBIDDEN"
}

404 Не найдено

NotFound

Запрошенный ресурс не найден или находится вне области доступа аккаунта.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

NOT_FOUND

{
  "message": "The requested resource was not found or is outside the authenticated account scope.",
  "error": "NOT_FOUND"
}

409 Конфликт

SendDocumentConflict

The shipment document lifecycle or composition does not allow the requested operation.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The given data was invalid."
error нет string "VALIDATION_ERROR"
errors да object {"warehouse_id":["The selected warehouse is invalid."]}

Примеры ответа

documentStateConflict

{
  "message": "Состав документа уже заморожен.",
  "errors": {
    "send_document": [
      "Состав документа уже заморожен."
    ]
  }
}

422 Ошибка валидации

ValidationError

Ошибка валидации.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The given data was invalid."
error нет string "VALIDATION_ERROR"
errors да object {"warehouse_id":["The selected warehouse is invalid."]}

Примеры ответа

validationError

{
  "message": "The given data was invalid.",
  "error": "VALIDATION_ERROR",
  "errors": {
    "warehouse_id": [
      "The selected warehouse is invalid."
    ]
  }
}

429 Превышен лимит запросов

TooManyRequests

Превышен лимит запросов.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "Too Many Attempts."
error да string "RATE_LIMITED"

500 Внутренняя ошибка сервера

InternalServerError

Произошла непредвиденная ошибка сервера.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

INTERNAL_SERVER_ERROR

{
  "message": "An unexpected server error occurred.",
  "error": "INTERNAL_SERVER_ERROR"
}
DELETE /api/v2/send-documents/{id}/orders/{orderId}

Удалить заказ из документа отправки

operationIddeleteSendDocumentsOrders
РазделДокументы отправок
БезопасностьbearerAuth

Deletes the resource when the authenticated account has permission and the current lifecycle state allows deletion. If deletion is blocked by related records or document state, the API returns a validation error.

Пример HTTP-запроса (cURL)

Подставьте свой сервер и токен. ID из примера замените реальными доступными ID. Для тела запроса сохраните подходящий JSON из раздела ниже в request.json; перед отправкой замените демонстрационные значения. Заголовок Idempotency-Key использует ключ одной логической операции.

curl --globoff --request DELETE "${NWMS_BASE_URL}/api/v2/send-documents/740/orders/49060" \
  --header "Accept: application/json" \
  --header "Authorization: Bearer ${NWMS_TOKEN}" \
  --header "Idempotency-Key: ${NWMS_REQUEST_KEY}"

Параметры

Имя Где Обязательное Тип Style Explode Ограничения Описание Пример
id path да integer:int64 min: 1 Shipment document ID. 740
orderId path да integer:int64 min: 1 Order ID assigned to the shipment document. 49060
Idempotency-Key header нет string maxLength: 191 Опциональный ключ идемпотентности для write-запросов API v2. Успешные ответы 2xx/3xx повторяются для того же ключа и идентичного payload в течение одного дня. Тот же ключ с другим payload возвращает 409. "ord-create-20260714-001"

Тело запроса

Тело запроса отсутствует.

Ответы

200 Successful response.

Successful response.

Поле Обязательное Тип Флаги Ограничения Описание Пример
data да SendDocument Outbound shipment document with its complete operational composition. Collection relations are empty unless requested through include; the item endpoint always loads them.
data.id да integer:int64 readOnly min: 1 1001
data.created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.domain_id нет integer:int64 | null min: 1 3
data.status_id нет integer:int64 | null 1
data.status нет object | null
data.status.id да integer:int64 1
data.status.name да string "Открыт"
data.status.color нет string | null "#2457c5"
data.status.background_color нет string | null "#eaf0ff"
data.warehouse_id нет integer:int64 | null min: 1 42
data.warehouse нет object | null
data.warehouse.id да integer:int64 min: 1 42
data.warehouse.name да string "Warehouse Sofia"
data.warehouse.type_id нет integer:int64 | null 2
data.warehouse.parent_id нет integer:int64 | null min: 1 41
data.delivery_service_ids да array<integer:int64>
data.delivery_service_ids[] нет integer:int64 min: 1 17
data.delivery_services да array<SendDocumentDeliveryService>
data.delivery_services[] нет SendDocumentDeliveryService
data.delivery_services[].id да integer:int64 min: 1 17
data.delivery_services[].name да string "Wildberries FBS"
data.delivery_services[].status_id да integer:int64 1
data.delivery_services[].external_id нет string | null "wb-fbs"
data.delivery_services[].source_id нет string | null "wildberries"
data.delivery_services[].delivery_type нет string | null "pickup_point"
data.delivery_services[].is_courier да boolean false
data.document_date нет string:date | null "2026-08-11"
data.closed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.comment нет string | null "Wildberries shipment 740"
data.order_count да integer:int64 min: 0 1
data.processing да SendDocumentProcessing
data.processing.mode нет string | null "standard"
data.processing.pipeline да array<string>
data.processing.pipeline[] нет string "assignment"
data.processing.state нет string | null "open"
data.processing.batch_profile_id нет integer:int64 | null min: 1 31
data.processing.batch_profile нет object | null
data.processing.batch_profile.id да integer:int64 min: 1 31
data.processing.batch_profile.name да string "Standard packing"
data.processing.batch_profile.processing_mode нет string | null "standard"
data.processing.composition_frozen_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.processing.batch_started_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.processing.batch_completed_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.wildberries да SendDocumentWildberries Wildberries document-level state and safe supply/QR/sticker artifact metadata. Binary label content and encrypted provider payloads are not returned.
data.wildberries.fulfillment_state нет string | null "delivered"
data.wildberries.error_message нет string | null ""
data.wildberries.processed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.wildberries.supplies да array<object>
data.wildberries.supplies[] нет object
data.orders да array<SendDocumentOrderAssignment>
data.orders[] нет SendDocumentOrderAssignment
data.orders[].assignment_id да integer:int64 min: 1 8801
data.orders[].marked_at нет string:date-time | null "2026-08-11T09:30:00Z"
data.orders[].created_at нет string:date-time | null "2026-08-11T09:00:00Z"
data.orders[].updated_at нет string:date-time | null "2026-08-11T09:30:00Z"
data.orders[].order да object | null Complete order snapshot embedded into a shipment document. Marketplace and batch objects preserve provider-specific fields.
data.orders[].order.id да integer:int64 min: 1 49060
data.orders[].order.external_id нет string | null "WB-900001234"
data.orders[].order.status_id нет integer:int64 | null 20
data.orders[].order.warehouse_id нет integer:int64 | null min: 1 42
data.orders[].order.shop_id нет integer:int64 | null min: 1 12
data.orders[].order.order_date нет string:date | null "2026-08-10"
data.orders[].order.send_date нет string:date | null "2026-08-11"
data.orders[].order.amounts нет object | null
data.orders[].order.amounts.shipping_price нет number:float | null 8.6
data.orders[].order.amounts.shipping_cost нет number:float | null 0
data.orders[].order.amounts.sum нет number:float | null 39.98
data.orders[].order.amounts.cod_sum нет number:float | null 48.58
data.orders[].order.contact нет object | null
data.orders[].order.contact.first_name нет string | null "Ivan"
data.orders[].order.contact.middle_name нет string | null "Ivanovich"
data.orders[].order.contact.last_name нет string | null "Petrov"
data.orders[].order.contact.phone нет string | null "+359888123456"
data.orders[].order.contact.email нет string:email | null "customer@example.com"
data.orders[].order.contact.country_id нет integer:int64 | null min: 1 100
data.orders[].order.contact.city_id нет integer:int64 | null min: 1 200
data.orders[].order.contact.postcode нет string | null "1000"
data.orders[].order.contact.latitude нет number:float | null min: -90
max: 90
42.6977
data.orders[].order.contact.longitude нет number:float | null min: -180
max: 180
23.3219
data.orders[].order.contact.full_address нет string | null "1 Vitosha Boulevard, Sofia"
data.orders[].order.delivery нет object | null
data.orders[].order.delivery.service_id нет integer:int64 | null min: 1 1
data.orders[].order.delivery.delivery_type да enum | null enum: door, pickup_point Normalized delivery channel derived from the configured delivery service. Null when the service type is unknown. "door"
data.orders[].order.delivery.is_courier да boolean True for door delivery; false for pickup-point delivery or an unknown service type. true
data.orders[].order.delivery.status нет string | null "created"
data.orders[].order.delivery.track_number нет string | null "CDEK-123456789"
data.orders[].order.delivery.pickup_point_id нет string | null "SOFIA-01"
data.orders[].order.delivery.source_id нет string | null "cdek-15"
data.orders[].order.delivery.tariff_code нет integer:int64 | null 136
data.orders[].order.delivery.additional_services нет object Values of additional CDEK services configured for the selected integration. Boolean true enables a code-only service; other values are sent as the CDEK parameter. {"TRYING_ON":true,"PART_DELIV":false,"PACKAGE_1":2}
data.orders[].order.delivery.label нет string:uri | null "https://betawms.ffcdek.ru/labels/CDEK-123456789.pdf"
data.orders[].order.delivery.delivery_date нет string:date | null "2026-07-16"
data.orders[].order.delivery.delivery_time_start нет string:time | null "09:00:00Z"
data.orders[].order.delivery.delivery_time_end нет string:time | null "18:00:00Z"
data.orders[].order.comments нет object | null
data.orders[].order.comments.delivery_service_text нет string | null "Call before delivery"
data.orders[].order.comments.inner_text нет string | null "VIP customer"
data.orders[].order.offers да array<SendDocumentOrderLine>
data.orders[].order.offers[] нет SendDocumentOrderLine
data.orders[].order.offers[].id да integer:int64 min: 1 7001
data.orders[].order.offers[].product_id нет integer:int64 | null min: 1 1201
data.orders[].order.offers[].quantity нет number:float | null 2
data.orders[].order.offers[].estimated_price нет number:float | null 19.5
data.orders[].order.offers[].price нет number:float | null 19.99
data.orders[].order.offers[].expiration_date нет string:date | null "2027-01-15"
data.orders[].order.offers[].batch нет string | null "LOT-2026"
data.orders[].order.offers[].operation_user_id нет integer:int64 | null min: 1 9
data.orders[].order.offers[].product нет object | null
data.orders[].order.offers[].product.id да integer:int64 min: 1 1201
data.orders[].order.offers[].product.external_id нет string | null "EXT-10045"
data.orders[].order.offers[].product.domain_id нет integer:int64 | null min: 1 3
data.orders[].order.offers[].product.shop_id нет integer:int64 | null min: 1 12
data.orders[].order.offers[].product.status_id нет enum:int64 | null enum: 1, 2, 3 1 - active; 2 - disabled; 3 - deleted. 1
data.orders[].order.offers[].product.type_id нет integer:int64 | null 1
data.orders[].order.offers[].product.name да string "Coffee 250g"
data.orders[].order.offers[].product.article нет string | null "ART-001245"
data.orders[].order.offers[].product.sku нет string | null "SKU-001245"
data.orders[].order.offers[].product.price нет number:float | null 19.99
data.orders[].order.offers[].product.estimated_price нет number:float | null 21.5
data.orders[].order.offers[].product.image_url нет string:uri | null "https://betawms.ffcdek.ru/offer-images/products/coffee-250g.jpg"
data.orders[].order.offers[].product.dimensions да Dimensions
data.orders[].order.offers[].product.weight да Weight
data.orders[].order.offers[].product.datamatrix_required да boolean true
data.orders[].order.offers[].product.expiration_required да boolean true
data.orders[].order.offers[].product.comment нет string | null "Keep dry"
data.orders[].order.offers[].product.description нет string | null "Ground coffee package"
data.orders[].order.offers[].product.barcodes да array<ProductBarcode>
data.orders[].order.offers[].product.package да object
data.orders[].order.offers[].product.created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].product.updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].reservation нет object | null Reservation totals for one order line.
data.orders[].order.offers[].reservation.required_qty да number:float 3
data.orders[].order.offers[].reservation.reserved_qty да number:float 1
data.orders[].order.offers[].reservation.unreserved_qty да number:float 2
data.orders[].order.offers[].reservation.missing_qty да number:float 2
data.orders[].order.offers[].reservation.status да enum enum: not_required, missing, partial, reserved Reservation state calculated from the quantity required by the order and the quantity actually reserved. "partial"
data.orders[].order.offers[].reservation_items нет array<OrderReservationItem>
data.orders[].order.offers[].reservation_items[] нет OrderReservationItem Physical product or expanded component used to explain a reservation shortage.
data.orders[].order.offers[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.offers[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes да array<DataMatrix>
data.orders[].order.datamatrix_codes[] нет DataMatrix Код DataMatrix для маркированного товара.
data.orders[].order.datamatrix_codes[].id да integer:int64 readOnly min: 1 1001
data.orders[].order.datamatrix_codes[].created_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes[].updated_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.datamatrix_codes[].domain_id нет integer:int64 | null min: 1 3
data.orders[].order.datamatrix_codes[].warehouse_id нет integer:int64 | null min: 1 42
data.orders[].order.datamatrix_codes[].status_id нет enum:int64 | null enum: 0, 1, 2 0 - Imported and available for future warehouse operations. 1 - Reserved or attached by an operational document. 2 - Used by an outbound or completed operation. 0
data.orders[].order.datamatrix_codes[].acceptance_id нет integer:int64 | null min: 1 5101
data.orders[].order.datamatrix_codes[].order_id нет integer:int64 | null min: 1 8101
data.orders[].order.datamatrix_codes[].product_id нет integer:int64 | null min: 1 1201
data.orders[].order.datamatrix_codes[].barcode нет string | null maxLength: 14 "04601234567890"
data.orders[].order.datamatrix_codes[].short_code нет string | null maxLength: 14 "ABC123"
data.orders[].order.datamatrix_codes[].crypto_tail нет string | null "CRYPTO"
data.orders[].order.datamatrix_codes[].datamatrix нет string | null maxLength: 125 "010460123456789021ABC123"
data.orders[].order.datamatrix_codes[].production_date нет string:date | null "2026-01-15"
data.orders[].order.datamatrix_codes[].expiration_date нет string:date | null "2027-01-15"
data.orders[].order.datamatrix_codes[].batch нет string | null "LOT-2026"
data.orders[].order.datamatrix_codes[].used_at нет string:date-time | null "2026-07-14T10:30:00Z"
data.orders[].order.warehouse нет object | null
data.orders[].order.warehouse.id да integer:int64 min: 1 42
data.orders[].order.warehouse.name да string "Warehouse Sofia"
data.orders[].order.warehouse.type_id нет integer:int64 | null 2
data.orders[].order.warehouse.parent_id нет integer:int64 | null min: 1 41
data.orders[].order.shop нет object | null
data.orders[].order.shop.id да integer:int64 min: 1 12
data.orders[].order.shop.name да string "Demo Online Store"
data.orders[].order.shop.status_id нет integer:int64 | null 1
data.orders[].order.company нет object | null
data.orders[].order.company.id да integer:int64 min: 1 7
data.orders[].order.company.name да string "Demo Company"
data.orders[].order.company.legal_name нет string | null "Demo Company Ltd."
data.orders[].order.place нет object | null
data.orders[].order.accumulation_place нет object | null
data.orders[].order.measurements нет object | null
data.orders[].order.settings нет object | null
data.orders[].order.consumables да array<object>
data.orders[].order.consumables[] нет object
data.orders[].order.wildberries нет object | null
data.orders[].order.wildberries.completed_at нет string:date-time | null "2026-08-11T10:15:00Z"
data.orders[].order.batch_matches да array<object>
data.orders[].order.batch_matches[] нет object
meta да ResponseMeta
meta.api_version да enum enum: v2 "v2"
meta.deleted нет boolean true
meta.id нет integer:int64 | null min: 1 1001
meta.command_replayed нет boolean True when an idempotent cross-dock command returned the original successful result. false
meta.crossdock_configuration нет object | null
meta.crossdock_configuration.physical_warehouse_id да integer:int64 min: 1 42
meta.crossdock_configuration.enabled да boolean true
meta.crossdock_configuration.process_version да string "direct_order_v1"

Примеры ответа

success

{
  "data": {
    "id": 740,
    "domain_id": 3,
    "status_id": 1,
    "status": {
      "id": 1,
      "name": "Открыт",
      "color": "#2457c5",
      "background_color": "#eaf0ff"
    },
    "warehouse_id": 42,
    "warehouse": {
      "id": 42,
      "name": "Warehouse Sofia",
      "type_id": 2,
      "parent_id": 41
    },
    "delivery_service_ids": [
      17
    ],
    "delivery_services": [
      {
        "id": 17,
        "name": "Wildberries FBS",
        "status_id": 1,
        "external_id": "wb-fbs",
        "source_id": "wildberries",
        "delivery_type": "pickup_point",
        "is_courier": false
      }
    ],
    "document_date": "2026-08-11",
    "closed_at": "2026-08-11T10:15:00Z",
    "comment": "Wildberries shipment 740",
    "order_count": 1,
    "processing": {
      "mode": "standard",
      "pipeline": [
        "assignment",
        "marking",
        "transfer"
      ],
      "state": "open",
      "batch_profile_id": null,
      "batch_profile": null,
      "composition_frozen_at": null,
      "batch_started_at": null,
      "batch_completed_at": null
    },
    "wildberries": {
      "fulfillment_state": "delivered",
      "error_message": null,
      "processed_at": "2026-08-11T10:15:00Z",
      "supplies": [
        {
          "id": 3201,
          "account_id": 71,
          "external_id": "WB-GI-740",
          "name": "Поставка 740",
          "state": "delivered",
          "state_name": "Доставлена",
          "destination_type": "office",
          "destination_office_id": 507,
          "is_automatic": false,
          "is_b2b": false,
          "cargo_type": "box",
          "cross_border_type": null,
          "order_count": 1,
          "current_qr": {
            "id": 3301,
            "kind": "supply_qr",
            "format": "svg",
            "width": 580,
            "height": 400,
            "barcode": "WB-GI-740",
            "part_a": null,
            "part_b": null,
            "content_hash": "sha256:qr-example",
            "content_available": true,
            "is_current": true,
            "fetched_at": "2026-08-11T09:00:00Z",
            "last_printed_at": null,
            "print_count": 0
          },
          "boxes": [

          ],
          "last_error": {
            "code": null,
            "message": null
          },
          "remote_created_at": "2026-08-11T09:00:00Z",
          "remote_closed_at": null,
          "last_synced_at": "2026-08-11T10:15:00Z",
          "delivered_at": "2026-08-11T10:15:00Z"
        }
      ]
    },
    "orders": [
      {
        "assignment_id": 8801,
        "marked_at": "2026-08-11T09:30:00Z",
        "created_at": "2026-08-11T09:00:00Z",
        "updated_at": "2026-08-11T09:30:00Z",
        "order": {
          "id": 49060,
          "external_id": "WB-900001234",
          "status_id": 20,
          "warehouse_id": 42,
          "shop_id": 12,
          "order_date": "2026-08-10",
          "send_date": "2026-08-11",
          "amounts": {
            "shipping_price": 0,
            "shipping_cost": 0,
            "sum": 39.98,
            "cod_sum": 0
          },
          "contact": {
            "first_name": "Иван",
            "middle_name": null,
            "last_name": "Петров",
            "phone": "+359888123456",
            "email": "customer@example.com",
            "country_id": 100,
            "city_id": 200,
            "postcode": "1000",
            "latitude": 42.6977,
            "longitude": 23.3219,
            "full_address": "Sofia"
          },
          "delivery": {
            "service_id": 17,
            "delivery_type": "pickup_point",
            "is_courier": false,
            "status": "created",
            "track_number": "WB-900001234",
            "pickup_point_id": "WB-SOF-01",
            "source_id": "wildberries",
            "tariff_code": null,
            "additional_services": {
            },
            "label": null,
            "delivery_date": "2026-08-12",
            "delivery_time_start": null,
            "delivery_time_end": null
          },
          "comments": {
            "delivery_service_text": null,
            "inner_text": "Клиентский пример для документа 740"
          },
          "offers": [
            {
              "id": 7001,
              "product_id": 1201,
              "quantity": 2,
              "estimated_price": 19.5,
              "price": 19.99,
              "expiration_date": "2027-01-15",
              "batch": "LOT-2026",
              "operation_user_id": 9,
              "product": {
                "id": 1201,
                "external_id": "EXT-10045",
                "shop_id": 12,
                "domain_id": 3,
                "status_id": 1,
                "type_id": 1,
                "name": "Coffee 250g",
                "article": "ART-001245",
                "sku": "SKU-001245",
                "price": 19.99,
                "estimated_price": 21.5,
                "image_url": null,
                "dimensions": {
                  "x": 105,
                  "y": 200,
                  "z": 32,
                  "unit": "mm"
                },
                "weight": {
                  "value": 250,
                  "unit": "g"
                },
                "datamatrix_required": true,
                "expiration_required": true,
                "comment": null,
                "description": "Ground coffee package",
                "barcodes": [
                  {
                    "barcode": "4601234567890",
                    "is_main": true
                  }
                ],
                "package": {
                  "kind": "unit",
                  "parent_product_id": null,
                  "base_product_id": null,
                  "multiplicity": null,
                  "base_multiplicity": null,
                  "depth": 0
                },
                "created_at": "2026-08-01T09:00:00Z",
                "updated_at": "2026-08-10T09:00:00Z"
              },
              "reservation": {
                "required_qty": 2,
                "reserved_qty": 2,
                "unreserved_qty": 0,
                "missing_qty": 0,
                "status": "reserved"
              },
              "reservation_items": [

              ],
              "created_at": "2026-08-10T09:00:00Z",
              "updated_at": "2026-08-10T09:00:00Z"
            }
          ],
          "datamatrix_codes": [
            {
              "id": 6101,
              "domain_id": 3,
              "warehouse_id": 42,
              "status_id": 1,
              "acceptance_id": 5101,
              "order_id": 49060,
              "product_id": 1201,
              "barcode": "04601234567890",
              "short_code": "ABC123",
              "crypto_tail": "CRYPTO",
              "datamatrix": "010460123456789021ABC123",
              "production_date": "2026-01-15",
              "expiration_date": "2027-01-15",
              "batch": "LOT-2026",
              "created_at": "2026-08-11T09:15:00Z",
              "updated_at": "2026-08-11T09:15:00Z",
              "used_at": null
            }
          ],
          "warehouse": {
            "id": 42,
            "name": "Warehouse Sofia",
            "type_id": 2,
            "parent_id": 41
          },
          "shop": {
            "id": 12,
            "name": "Demo Online Store",
            "status_id": 1
          },
          "company": {
            "id": 7,
            "name": "Demo Company",
            "legal_name": "Demo Company Ltd."
          },
          "place": null,
          "accumulation_place": null,
          "measurements": {
            "places": 1,
            "dimensions": {
              "x": 220,
              "y": 160,
              "z": 120,
              "unit": "mm"
            },
            "weight": {
              "value": 600,
              "unit": "g"
            }
          },
          "settings": {
            "blank_url": null
          },
          "consumables": [

          ],
          "wildberries": {
            "id": 2101,
            "account_id": 71,
            "wb_order_id": "900001234",
            "order_uid": "WB-UID-49060",
            "rid": "WB-RID-49060",
            "product_id": 1201,
            "state": "confirmed",
            "state_name": "Подтверждён",
            "fulfillment_state": "delivered",
            "fulfillment_state_name": "Доставлен",
            "supplier_status": "confirm",
            "wb_status": "sold",
            "supply_id": 3201,
            "external_supply_id": "WB-GI-740",
            "supply_state": "delivered",
            "delivery_type": "fbs",
            "cross_border_type": null,
            "is_b2b": false,
            "wb_warehouse_id": 507,
            "office_id": 507,
            "nm_id": 12345678,
            "chrt_id": 87654321,
            "article": "ART-001245",
            "skus": [
              "4601234567890"
            ],
            "required_meta": [
              "sgtin"
            ],
            "optional_meta": [

            ],
            "meta_state": "accepted",
            "sticker_state": "ready",
            "prices": {
              "price_minor": 1999,
              "final_price_minor": 1999,
              "sale_price_minor": 1999,
              "currency": "RUB"
            },
            "markings": [
              {
                "id": 1,
                "datamatrix_id": 6101,
                "type": "sgtin",
                "masked_value": "010460…ABC123",
                "value_hash": "sha256:example",
                "state": "accepted",
                "remote_decision": "accepted",
                "error_code": null,
                "error_message": null,
                "submitted_at": "2026-08-11T09:30:00Z",
                "verified_at": "2026-08-11T09:31:00Z",
                "ambiguous_at": null
              }
            ],
            "current_sticker": {
              "id": 3401,
              "kind": "order_sticker",
              "format": "png",
              "width": 580,
              "height": 400,
              "barcode": "WB-900001234",
              "part_a": "123456",
              "part_b": "7890",
              "content_hash": "sha256:sticker-example",
              "content_available": true,
              "is_current": true,
              "fetched_at": "2026-08-11T09:25:00Z",
              "last_printed_at": null,
              "print_count": 0
            },
            "last_error": {
              "code": null,
              "message": null
            },
            "remote_created_at": "2026-08-10T09:00:00Z",
            "seller_date": "2026-08-10",
            "delivery_date": "2026-08-12",
            "confirmed_at": "2026-08-11T09:20:00Z",
            "completed_at": "2026-08-11T10:15:00Z",
            "imported_at": "2026-08-10T09:05:00Z",
            "mapped_at": "2026-08-10T09:06:00Z",
            "reserved_at": "2026-08-11T09:10:00Z",
            "remote_status_checked_at": "2026-08-11T10:15:00Z"
          },
          "batch_matches": [

          ]
        }
      }
    ],
    "created_at": "2026-08-11T08:45:00Z",
    "updated_at": "2026-08-11T10:15:00Z"
  },
  "meta": {
    "api_version": "v2"
  }
}

400 Некорректный запрос

BadRequest

Некорректный запрос.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

BAD_REQUEST

{
  "message": "Bad request.",
  "error": "BAD_REQUEST"
}

401 Требуется аутентификация

Unauthorized

Требуется аутентификация.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

AUTH_REQUIRED

{
  "message": "Authentication is required.",
  "error": "AUTH_REQUIRED"
}

403 Доступ запрещен

Forbidden

Аутентифицированному аккаунту запрещено выполнять это действие.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

FORBIDDEN

{
  "message": "The authenticated account is not allowed to perform this action.",
  "error": "FORBIDDEN"
}

404 Не найдено

NotFound

Запрошенный ресурс не найден или находится вне области доступа аккаунта.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

NOT_FOUND

{
  "message": "The requested resource was not found or is outside the authenticated account scope.",
  "error": "NOT_FOUND"
}

409 Конфликт

SendDocumentConflict

The shipment document lifecycle or composition does not allow the requested operation.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The given data was invalid."
error нет string "VALIDATION_ERROR"
errors да object {"warehouse_id":["The selected warehouse is invalid."]}

Примеры ответа

documentStateConflict

{
  "message": "Состав документа уже заморожен.",
  "errors": {
    "send_document": [
      "Состав документа уже заморожен."
    ]
  }
}

422 Ошибка валидации

ValidationError

Ошибка валидации.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The given data was invalid."
error нет string "VALIDATION_ERROR"
errors да object {"warehouse_id":["The selected warehouse is invalid."]}

Примеры ответа

validationError

{
  "message": "The given data was invalid.",
  "error": "VALIDATION_ERROR",
  "errors": {
    "warehouse_id": [
      "The selected warehouse is invalid."
    ]
  }
}

429 Превышен лимит запросов

TooManyRequests

Превышен лимит запросов.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "Too Many Attempts."
error да string "RATE_LIMITED"

500 Внутренняя ошибка сервера

InternalServerError

Произошла непредвиденная ошибка сервера.

Поле Обязательное Тип Флаги Ограничения Описание Пример
message да string "The request could not be processed."
error да string "BAD_REQUEST"

Примеры ответа

INTERNAL_SERVER_ERROR

{
  "message": "An unexpected server error occurred.",
  "error": "INTERNAL_SERVER_ERROR"
}