FBS Orders (order)
Use the FBS Orders (Fulfillment by Seller) methods to:
- get information about assembly orders and their statuses, cancel assembly orders, and get stickers
- get, add, edit, and delete label identifiers for assembly orders
- manage supplies
- create, edit, and delete passes to WB warehouses
You can test the FBS order methods in the sandbox. Also you can use special methods in the sandbox for emulating user actions
Use the FBS Orders (Fulfillment by Seller) methods to:
- get information about assembly orders and their statuses, cancel assembly orders, and get stickers
- get, add, edit, and delete label identifiers for assembly orders
- manage supplies
- create, edit, and delete passes to WB warehouses
You can test the FBS order methods in the sandbox. Also you can use special methods in the sandbox for emulating user actions
Get New Assembly Orders{{ /api/v3/orders/new }}
Returns a list of all new assembly orders.
requiredMeta and optionalMeta fields in assembly orders only affects the ability to transfer a supply to delivery. If your item requires mandatory marking with identification means, you must specify all needed label identifiers whether it was received in requiredMeta or optionalMeta field (see 4.6 of the Offer).
We recommend adding all label identifiers received in the
requiredMeta and optionalMeta fields to the assembly orders
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
Responses
Response samples
- 200
- 401
- 402
- 403
- 429
{- "orders": [
- {
- "address": {
- "fullAddress": "Chelyabinsk Region, Chelyabinsk, 51st Arabkir Street, Building 10A, Apartment 42",
- "longitude": 44.519068,
- "latitude": 40.20192
}, - "ddate": "17.05.2024",
- "sellerDate": "02.06.2025",
- "salePrice": 504600,
- "requiredMeta": [
- "uin"
], - "optionalMeta": [
- "sgtin"
], - "deliveryType": "fbs",
- "comment": "Упакуйте в плёнку, пожалуйста",
- "scanPrice": null,
- "orderUid": "165918930_629fbc924b984618a44354475ca58675",
- "article": "one-ring-7548",
- "colorCode": "RAL 3017",
- "rid": "f884001e44e511edb8780242ac120002",
- "createdAt": "2022-05-04T07:56:29Z",
- "offices": [
- "Калуга"
], - "skus": [
- "6665956397512"
], - "id": 13833711,
- "warehouseId": 658434,
- "officeId": 123,
- "nmId": 123456789,
- "chrtId": 987654321,
- "price": 1014,
- "finalPrice": 1014,
- "convertedPrice": 28322,
- "convertedFinalPrice": 1014,
- "currencyCode": 933,
- "convertedCurrencyCode": 643,
- "cargoType": 1,
- "crossBorderType": 1,
- "isZeroOrder": false,
- "isPickupPointShipmentAllowed": true,
- "options": {
- "isB2B": true
}
}
]
}Get Assembly Orders{{ /api/v3/orders }}
The method returns information about assembly orders created no more than 3 months ago, without their current status
To get data for a period, specify the start and end dates of the period in the request. Maximum of 30 calendar days per request. The method's response will contain assembly orders created during the specified period.
To get assembly orders created more than 3 months ago, use the method for getting the list of archived assembly orders.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
query Parameters
| limit required | integer [ 1 .. 1000 ] Pagination parameter. Sets the limit for the amount of data returned. |
| next required | integer <int64> Pagination parameter. Sets the value from which to retrieve the next batch. It should start at 0 to get the full list of data. For the subsequent requests, you must take the value from the |
| dateFrom | integer Period start date in Unix timestamp format. By default date is 30 days before the request. Time zone — UTC |
| dateTo | integer Period end date in Unix timestamp format. Time zone — UTC |
Responses
Response samples
- 200
- 400
- 401
- 402
- 403
- 429
{- "next": 13833711,
- "orders": [
- {
- "address": {
- "fullAddress": "Chelyabinsk Region, Chelyabinsk, 51st Arabkir Street, Building 10A, Apartment 42",
- "longitude": 44.519068,
- "latitude": 40.20192
}, - "scanPrice": 1500,
- "deliveryType": "fbs",
- "supplyId": "WB-GI-92937123",
- "orderUid": "165918930_629fbc924b984618a44354475ca58675",
- "article": "one-ring-7548",
- "colorCode": "RAL 3017",
- "rid": "f884001e44e511edb8780242ac120002",
- "createdAt": "2022-05-04T07:56:29Z",
- "offices": [
- "Kaluga"
], - "skus": [
- "6665956397512"
], - "id": 13833711,
- "warehouseId": 658434,
- "officeId": 123,
- "nmId": 12345678,
- "chrtId": 987654321,
- "price": 1014,
- "convertedPrice": 28322,
- "currencyCode": 933,
- "convertedCurrencyCode": 643,
- "cargoType": 1,
- "crossBorderType": 1,
- "comment": "Упакуйте в плёнку, пожалуйста",
- "isZeroOrder": false,
- "options": {
- "isB2B": true
}
}
]
}Get Assembly Orders Statuses{{ /api/v3/orders/status }}
Returns the statuses of assembly orders from the request.
supplierStatus is a status of an assembly order. Its change is always triggered only by the seller.
Possible values of supplierStatus:
| Status | Description | How to move the assembly orders to this status |
|---|---|---|
new |
New order | |
confirm |
In assembly For delivery by Wildberries fbs |
Add assembly orders to the supply |
complete |
In delivery For delivery by Wildberries fbs and by WB courier wbgo |
Transfer the supply to delivery |
cancel |
Canceled by seller | Cancel the order |
cancel_carrier |
Canceled by carrier For crossborder only |
Changed by the carrier |
wbStatus — is a status of an order on the Wildberries side.
Possible values for this field are:
waiting— the seller confirmed the order, and the Wildberries has not received it yetsorted— the Wildberries warehouse sorted the ordersold— the order is soldcanceled— the seller canceled the ordercanceled_by_client— the buyer canceled the order upon receiptdeclined_by_client— the buyer canceled the order in the first hour
Cancellation is available to the buyer in the first hour from the moment of order, if the order is not transferred to confirm status.defect— cancellation of the order due to a defectready_for_pickup— the order came at pickup point and waiting for the clientpostponed_delivery— courier delivery is postponedaccepted_by_carrier— accepted by carrier. The order is handed over to delivery service in the seller countrysent_to_carrier— dispatched to carrier. The order is on the way to delivery service's warehouse in the sellercanceled_by_carrier— the order was cancelled by the carrier. For crossborder only
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
Request Body schema: application/json
| orders required | Array of integers <int64> [ 1 .. 1000 ] items [ items <int64 > ] List of assembly order IDs |
Responses
Request samples
- Payload
{- "orders": [
- 5632423
]
}Response samples
- 200
- 400
- 401
- 402
- 403
- 429
{- "orders": [
- {
- "id": 5632423,
- "isCancellable": false,
- "supplierStatus": "new",
- "wbStatus": "waiting"
}
]
}Get All Assembly Orders for Re-shipment{{ /api/v3/supplies/orders/reshipment }}
Returns all assembly orders that require re-shipment
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
Responses
Response samples
- 200
- 400
- 401
- 402
- 403
- 429
{- "orders": [
- {
- "supplyID": "WB-GI-1234567",
- "orderID": 5632423
}
]
}Cancel the Assembly Order{{ /api/v3/orders/{orderId}/cancel }}
Moves the assembly orders to cancel ("Canceled by the seller") status.
isCancellable field.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 100 requests | 600 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| orderId required | integer <int64> Example: 5632423 Assembly order ID |
Responses
Response samples
- 400
- 401
- 402
- 403
- 404
- 409
- 429
{- "message": "Incorrect parameter value"
}Get Assembly Orders Stickers{{ /api/v3/orders/stickers }}
Returns a list of stickers for assembly orders in the confirm — in assembly and complete — in delivery statuses.
If the required customs declaration number is not added to the assembly order, it is not possible to get stickers for this assembly order.
You can get a maximum of 100 stickers per request.
You can get a sticker in the following formats:
- SVG
- ZPLV (vertical)
- ZPLH (horizontal)
- PNG
Available dimensions:
- 580x400 px, with parameters
width= 58,height= 40 - 400x300 px, with parameters
width= 40,height= 30
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
query Parameters
| type required | string Enum: "svg" "zplv" "zplh" "png" Sticker format |
| width required | integer Enum: 58 40 Sticker width |
| height required | integer Enum: 40 30 Sticker height |
Request Body schema: application/json
| orders | Array of integers <int64> [ 1 .. 100 ] items [ items <int64 > ] List of assembly order IDs |
Responses
Request samples
- Payload
{- "orders": [
- 5346346
]
}Response samples
- 200
- 400
- 401
- 402
- 403
- 409
- 429
{- "stickers": [
- {
- "orderId": 5346346,
- "partA": "231648",
- "partB": "9753",
- "barcode": "!uKEtQZVx",
- "file": "iVBORw0KGgoAAAANSUhEUgAAASIAAAEiAQAAAAB1xeIbAAABiElEQVR4nO2YUW6DMAyGbUDaI0g9wI4Sjg5H2Q3IeyZPthNKV03tNiVdtf9/cFvXAvRhkh+z0G2t3R1FRKgqAokikCgCiSKQeDQJzho8yXMsmfmh1/UvqoKoNrsLdgN6S8hzXP2TV8Xc47KMyTPnx+DvX/1zVg1Xmch1z9ih6gv2HLZTuqIPXjX7ftSlPRLJ+prXnONLF9hXZL96q/fE4W1Q+O8XvQ/29djL/lvWiTg/Bt89Voeqn/j7OQ4eTLJY7tz8oEoVSFC28aN9JqKwqbX3kP+VBewrsg/KedE3qmXUn3IMYF/d3zONm38TiqckFKeyEaDv6/W96Nus9b2tPrbw2LOAvq/Pfpfn/Fb4HoA1p9UcU3SHJTLHExk+p8VeK3JwN0Q2UNPmR9+3m2OyDzPjoOFFML9vOMcUin0iHahR2CaGz/mkmo6P5zHtQdD3TeeY5NY++/sKZ+xQdUliNZszqePRkFd+tfvHqhtC1S/nmOQh7eH+Y3WoygKJIpAoAokikChqT+IDIkbb8/8OLskAAAAASUVORK5CYII="
}
]
}Get Stickers for Cross-Border Assembly Orders{{ /api/v3/orders/stickers/cross-border }}
Returns a list of stickers for Cross-Border assembly orders in PDF.
For each assembly order, the response contains the sticker generation status:
awaitingTrackNumber— the sticker is not ready. Waiting for a carrier's track number.ready— the sticker is ready
ready status.
Method limitations:
- You cannot request more than 100 stickers at a time (no more than 100 assembly order IDs in a request).
- The method returns stickers only for assembly orders that are on assembly or in delivery status:
confirm,complete.
In the sandbox, this method always returns the 200 response.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests
Authorizations:
Request Body schema: application/json
| orders | Array of integers <int64> [ 1 .. 100 ] items [ items <int64 > ] List of assembly order IDs |
Responses
Request samples
- Payload
{- "orders": [
- 3869227998
]
}Response samples
- 200
- 400
- 401
- 402
- 403
- 429
{- "stickers": [
- {
- "orderId": 987654320,
- "status": "awaitingTrackNumber",
- "parcelId": "",
- "file": "",
- "partA": "",
- "partB": "",
- "barcode": ""
}, - {
- "orderId": 123456789,
- "status": "ready",
- "parcelId": "WB0000000001",
- "file": "JVBERi0xLjQKJSBjcmVhdGVkIGJ5IFBpbGxvdyBQREYgZHJpdmVyCjQgMCBvYmo8PAovVHlwZSAvQ2F0YWxvZwovUGFnZXMgNSAwIFIKPj5lbmRvYmoKNSAwIG9iajw8Ci9UeXBlIC9QYWdlcwovQ291bnQgMQovS2lkcyBbIDIgMCBSIF0KPj5lbmRvYmoKMSAwIG9iajw8Ci9UeXBlIC9YT2JqZWN0Ci9TdWJ0eXBlIC9JbWFnZQovV2lkdGggMjkwCi9IZWlnaHQgMjkwCi9GaWx0ZXIgWyAvQ0NJVFRGYXhEZWNvZGUgXQovRGVjb2RlUGFybXMgWyA8PAovSyAtMQovQmxhY2tJczEgdHJ1ZQovQ29sdW1ucyAyOTAKL1Jvd3MgMjkwCj4+IF0KL0JpdHNQZXJDb21wb25lbnQgMQovQ29sb3JTcGFjZSAvRGV2aWNlR3JheQovTGVuZ3RoIDY2Ngo+PnN0cmVhbQomoLYaX////////////8g2b4gpHITff///////////8nBSkIB8nBS/////////////////////+QgHkNB/IQD////////////////////////////+P//////////////////////////IQ5CHIQ////////////////////////////////jkNB/H/////////////////////4yEOQh+P//////////////////EhoKR//////yDYchDkIchDyBg2E4aCcFL////////////////////////IgFIiAhODQTg0f/////////////////+ThCICEQGgnDQTg0E4NBODZ////////////////////////4k4NESEOJCCP/////////////////8gpHIQ5CCCEEENB8hDyBg2f//////////////////////////xEZKQhOEJwhOB5f//////////////yDZviDQIjkDBS///////////////ycFLEnCCThP//////////////////kIB5CHkQEEnCEQEJwbP///////////////////////////4ycGgnBoIgFL/////////////////////+QhxIQ4kIcg0H////////////////////////8cSEOJCHEhAP//////////////////jIQDIQ+Qh5OE////////////////////////4iIiI/////////////wAQAQJAAABAwABAAAAIgEAAAEBAwABAAAAIgEAAAIBAwABAAAAAQAAAAMBAwABAAAABAAAAAYBAwABAAAAAQAAABEBBAABAAAACAAAABYBAwABAAAAIgEAABcBBAABAAAAKAIAABwBAwABAAAAAQAAAAAAAAAKZW5kc3RyZWFtCmVuZG9iagoyIDAgb2JqPDwKL1Jlc291cmNlcyA8PAovUHJvY1NldCBbIC9QREYgL0ltYWdlQiBdCi9YT2JqZWN0IDw8Ci9pbWFnZSAxIDAgUgo+Pgo+PgovTWVkaWFCb3ggWyAwIDAgMjkwLjAgMjkwLjAgXQovQ29udGVudHMgMyAwIFIKL1R5cGUgL1BhZ2UKL1BhcmVudCA1IDAgUgo+PmVuZG9iagozIDAgb2JqPDwKL0xlbmd0aCA0Nwo+PnN0cmVhbQpxIDI5MC4wMDAwMDAgMCAwIDI5MC4wMDAwMDAgMCAwIGNtIC9pbWFnZSBEbyBRCgplbmRzdHJlYW0KZW5kb2JqCjYgMCBvYmo8PAovQ3JlYXRpb25EYXRlIChEOjIwMjUxMTA3MTMzNTE1WikKL01vZERhdGUgKEQ6MjAyNTExMDcxMzM1MTVaKQo+PmVuZG9iagp4cmVmCjAgNwowMDAwMDAwMDAwIDY1NTM2IGYgCjAwMDAwMDAxNDQgMDAwMDAgbiAKMDAwMDAwMTA1MiAwMDAwMCBuIAowMDAwMDAxMjE0IDAwMDAwIG4gCjAwMDAwMDAwNDAgMDAwMDAgbiAKMDAwMDAwMDA4NyAwMDAwMCBuIAowMDAwMDAxMzA5IDAwMDAwIG4gCnRyYWlsZXIKPDwKL1Jvb3QgNCAwIFIKL1NpemUgNwovSW5mbyA2IDAgUgo+PgpzdGFydHhyZWYKMTM5MQolJUVPRg==",
- "partA": "231648",
- "partB": "9753",
- "barcode": "!uKEtQZVx"
}
]
}Status History for Cross-Border Orders{{ /api/v3/orders/status/history }}
Returns status history for Cross-Border orders.
In the sandbox, this method always returns the 200 response.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
Request Body schema: application/json
| orders | Array of integers [ 1 .. 100 ] items Assembly orders IDs |
Responses
Request samples
- Payload
{- "orders": [
- 123456789,
- 987654321
]
}Response samples
- 200
- 401
- 402
- 403
- 404
- 429
{- "orders": [
- {
- "deliveryDate": "2019-08-24T14:15:22Z",
- "statuses": [
- {
- "date": null,
- "code": "SORTED"
}
], - "orderID": 123456789
}
]
}Orders with Client Information{{ /api/v3/orders/client }}
The method allows getting information about the client by assembly order ID.
Only for Cross-Border orders from Turkey
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
Request Body schema: application/jsonrequired
| orders | Array of integers Orders list |
Responses
Request samples
- Payload
{- "orders": [
- 987654321,
- 123456789
]
}Response samples
- 200
- 400
- 401
- 402
- 403
- 404
- 429
{- "orders": [
- {
- "firstName": "Иван",
- "fullName": "Андреев Иван Васильевич",
- "lastName": "Андреев",
- "middleName": "Васильевич",
- "orderID": 134567,
- "phone": "79871234567",
- "phoneCode": "0"
}
]
}Get the List of Archived Assembly Orders{{ /api/marketplace/v3/fbs/orders/archive }}
The method returns assembly orders created more than 3 months ago.
Some assembly orders are archived later than 3 months after creation, as the supply is archived only after all orders in it are completed.
For example, this happens if the seller did not deliver one of the orders in the supply and the order was canceled automatically after a few days.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests
Authorizations:
query Parameters
| year required | integer Example: year=2023 Year the order was created |
| month required | integer [ 1 .. 12 ] Example: month=2 Month the order was created |
| next required | integer <int64> Pagination parameter. Sets the value from which to retrieve the next batch. It should start at 0 to get the full list of data. For the subsequent requests, you must take the value from the |
| limit required | integer <int32> [ 100 .. 1000 ] Example: limit=150 Number of assembly orders in the response |
Responses
Response samples
- 200
- 400
- 401
- 402
- 403
- 429
{- "next": 0,
- "orders": [
- {
- "cargoType": "mgt",
- "colorCode": "RAL 3017",
- "createdAt": "2022-05-04",
- "crossBorder": {
- "parcel": "1Z999AA10123456784"
}, - "crossBorderType": "crossBorder",
- "id": 1234567890,
- "isZeroOrder": false,
- "metaDetails": [ ],
- "options": {
- "isB2B": false
}, - "orderUid": "165918930_629fbc924b984618a44354475ca58675",
- "priceInfo": {
- "convertedCurrencyCode": 643,
- "convertedPrice": 1020,
- "currencyCode": 643,
- "price": 1020
}, - "product": {
- "article": "wv1702fyjh",
- "chrtId": 12345678,
- "nmId": 370870300,
- "skus": [
- "12345Ejf5",
- "12345Ejf6",
- "12345Ejf7"
]
}, - "rid": "f884001e44e511edb8780242ac120002",
- "scanPrice": 5200,
- "status": {
- "supplierStatus": "complete",
- "wbStatus": "sent_to_carrier"
}, - "stickerId": 33811984302,
- "supplyId": "WB-GI-1234588",
- "warehouseId": 55684681
}
]
}With these methods, you can get, delete and edit the label identifiers of assembly orders:
Specifying label identifiers for the assembly order in the sandbox is optional
Get Assembly Orders Label Identifiers{{ /api/marketplace/v3/orders/meta }}
The method returns label identifiers for assembly orders and their validation statuses.
You can get the list of label identifiers available for an assembly order in the requiredMeta and optionalMeta fields in the response of the Get New Assembly Orders method. If the requiredMeta and optionalMeta fields do not contain the label identifier, it means that this label identifier cannot be added to this assembly order.
Possible label identifiers:
imei— IMEIuin— UINgtin— GTINsgtin— labeling code Chestny ZNAKexpiration— Expiration datecustomsDeclaration— customs declaration number
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
Request Body schema: application/jsonrequired
| orders required | Array of integers <= 100 items |
Responses
Request samples
- Payload
{- "orders": [
- 123456,
- 234567,
- 345678
]
}Response samples
- 200
- 400
- 401
- 402
- 403
- 404
- 429
{- "orders": [
- {
- "id": 0,
- "metaDetails": [ ]
}
]
}Delete Assembly Order Label Identifiers{{ /api/v3/orders/{orderId}/meta }}
Removes all assembly order label identifiers values for the passed key.
Possible label identifiers are:
imei— IMEIuin— UINgtin— GTINsgtin— labeling code Chestny ZNAKcustomsDeclaration— customs declaration number
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| orderId required | integer <int64> Example: 5632423 Assembly order ID |
query Parameters
| key required | string Enum: "imei" "uin" "gtin" "sgtin" "customsDeclaration" Name of the label identifier to remove |
Responses
Response samples
- 400
- 401
- 402
- 403
- 409
- 429
{- "message": "Incorrect request parameters"
}Add Labeling Code Chestny ZNAK to the Assembly Order{{ /api/v3/orders/{orderId}/meta/sgtin }}
The method sets the labeling code Chestny ZNAK for the assembly order.
You can add a labeling code to an assembly order if this field is returned in the response of the Assembly Order Label Identifiers method, and the assembly order is in the confirm status.
You can get the added labeling code with the Assembly Order Label Identifiers method.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 1000 requests | 60 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| orderId required | integer <int64> Example: 5632423 Assembly order ID |
Request Body schema: application/jsonrequired
| sgtins required | Array of strings [ 1 .. 100 ] items List of labeling codes Chestny ZNAK.
Please transfer GS separators in Unicode encoding with escaping — |
Responses
Request samples
- Payload
{- "sgtins": [
- "0104630568317423215EirD_orEif7X\u001d91EE12\u001d92VygELprJ87wrc/qF/Vq/KEFUVpZm4vDPQt2kqUw308Y="
]
}Response samples
- 400
- 401
- 402
- 403
- 404
- 409
- 429
{- "message": "Incorrect request body"
}Add UIN (Unique Identification Number) to the Assembly Order{{ /api/v3/orders/{orderId}/meta/uin }}
Sets the UIN for the assembly order. The assembly order can only have one UIN.
You can add UIN to the assembly order only if the uin field is returned in the response of the Assembly Order Label Identifiers method, and the assembly order is in the confirm status.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 1000 requests | 60 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| orderId required | integer <int64> Example: 5632423 Assembly order ID |
Request Body schema: application/jsonrequired
| uin required | string = 16 characters UIN |
Responses
Request samples
- Payload
{- "uin": "1234567890123456"
}Response samples
- 400
- 401
- 402
- 403
- 409
- 429
{- "message": "Incorrect request body"
}Add IMEI to the Assembly Order{{ /api/v3/orders/{orderId}/meta/imei }}
Sets the IMEI for the assembly orders label identifiers.
The assembly order can have only one IMEI. If a device has two IMEIs — IMEI and IMEI2 or IMEI1 and IMEI2 — you should only specify IMEI or IMEI1. You don't need to specify IMEI2.
You can add IMEI to the assembly order only if the imei field is returned in the response of the Assembly Order Label Identifiers method, and the assembly order is in the confirm status.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 1000 requests | 60 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| orderId required | integer <int64> Example: 5632423 Assembly order ID |
Request Body schema: application/jsonrequired
| imei required | string = 15 characters IMEI |
Responses
Request samples
- Payload
{- "imei": "123456789012345"
}Response samples
- 400
- 401
- 402
- 403
- 409
- 429
{- "message": "Incorrect request body"
}Add GTIN to the Assembly Order{{ /api/v3/orders/{orderId}/meta/gtin }}
Sets the GTIN (Belarus item unique identifier) for the assembly order. The assembly order can only have one GTIN.
You can add GTIN to the assembly order only if the gtin field is returned in the response of the Assembly Order Label Identifiers method, and the assembly order is in the confirm status.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 1000 requests | 60 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| orderId required | integer <int64> Example: 5632423 Assembly order ID |
Request Body schema: application/jsonrequired
| gtin required | string = 13 characters GTIN |
Responses
Request samples
- Payload
{- "gtin": "1234567890123"
}Response samples
- 400
- 401
- 402
- 403
- 409
- 429
{- "message": "Incorrect request body"
}Add Expiration Date to the Assembly Order{{ /api/v3/orders/{orderId}/meta/expiration }}
Sets the expiration date for the assembly order.
You can add expiration date to the assembly order only if the expiration field is returned in the response of the Assembly Order Label Identifiers method, and the assembly order is in the confirm status.
You can get the uploaded data in the label identifiers of the assembly order.
To change the expiration date, send a request with the new date. It is impossible to remove the expiration date of the assembly order.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 1000 requests | 60 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| orderId required | integer <int64> Example: 5632423 Assembly order ID |
Request Body schema: application/jsonrequired
| expiration required | string <date (dd.mm.yyyy)> The date until which the item is valid. No less than 30 days from the current date. |
Responses
Request samples
- Payload
{- "expiration": "12.09.2030"
}Response samples
- 400
- 401
- 402
- 403
- 404
- 409
- 429
The specified expiration date is less than the allowable limit
{- "code": "LowExpirationDate",
- "message": "Не удалось обновить срок годности. Указан срок меньше допустимого"
}Add Custom Declaration number to the Order{{ /api/marketplace/v3/orders/{orderId}/meta/customs-declaration }}
The method updates the customs declaration number in the label identifiers of the assembly order. An assembly order can have only one customs declaration number.
You can add customs declaration number to the assembly order only if the customsDeclaration field is returned in the response of the Assembly Order Label Identifiers method, and the assembly order is in the confirm status.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 1000 requests | 60 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| orderId required | integer <int64> Example: 5632423 Assembly order ID |
Request Body schema: application/jsonrequired
| customsDeclaration required | string [ 17 .. 29 ] characters Customs declaration number |
Responses
Request samples
- Payload
{- "customsDeclaration": "10704010/010624/0000302"
}Response samples
- 400
- 401
- 402
- 403
- 404
- 409
- 429
{- "message": "Incorrect request body"
}Create a new supply. The ID of the created supply will be returned in the format
WB-GI-1234567.Set up the supply shipping method. For delivery by a transport company the electronic waybill ID is required.
In the current new supply, add assembly orders that you will transport to the warehouse or pickup point. When adding assembly order to the supply, they will be moved to the
confirmstatus — in assembly.Get the shipping unit stickers, print them out and affix the stickers to the shipping units according to the orders distributed in them.
After the supply has been equipped with the necessary assembly orders, it must be handed over for delivery. If the supply is not handed over for delivery, accepting the first item at the pickup point will automatically close the supply. When handing over assembly order for delivery, they will automatically be assembled and moved to the
completestatus — in delivery.If a supply was scanned at the acceptance point but still has unscanned items, after a certain time, you must deliver them again. Check all assembly order requiring reshipment at this time. These assembly order can be transferred to another active supply. The assembly order will also be moved to the
confirmstatus — in assembly.
You can also:
- remove a shipping unit from the supply, but only while the supply is still in assembly
- get all assembly order IDs added to the supply
- get information about all the seller supplies or about a specific supply
- delete a supply provided that it is active and not tied to any assembly orders
- move assembly orders between active supplies. You cannot move an assembly order from a supply that is already closed, unless it requires reshipment
- get the supply's QR code in SVG, ZPL, or PNG formats. Available only after the supply has been handed over for delivery
Create a New Supply{{ /api/v3/supplies }}
Supplies limitations:
- Supplies applicable only for assembly orders in the FBS (Fulfillment by Seller) delivery.
- All assembly orders added to supply automatically transferred from the
newstatus to theconfirmstatus. - Please note that if you will
cancel(Canceled by the seller) the order, we will automatically remove it from the supply. - A supply can only be assembled from assembly jobs (orders) with the same dimensional type (cargoType). A new supply does not have a dimensional attribute. When the first assembly order is added to a supply, the supply acquires the dimensional attribute of that assembly order.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
Request Body schema: application/jsonrequired
| name | string [ 1 .. 128 ] characters Supply name |
Responses
Request samples
- Payload
{- "name": "Some test supply"
}Response samples
- 201
- 400
- 401
- 402
- 403
- 429
{- "id": "WB-GI-1234567"
}Get a Supplies List{{ /api/v3/supplies }}
Returns the supplies list.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
query Parameters
| limit required | integer [ 1 .. 1000 ] Pagination parameter. Sets the limit for the amount of data returned. |
| next required | integer <int64> Pagination parameter. Sets the value from which to retrieve the next batch. It should start at 0 to get the full list of data. For the subsequent requests, you must take the value from the |
Responses
Response samples
- 200
- 400
- 401
- 402
- 403
- 429
{- "next": 13833711,
- "supplies": [
- {
- "id": "WB-GI-1234567",
- "isB2b": true,
- "isPickupPointShipmentAllowed": true,
- "done": true,
- "createdAt": "2022-05-04T07:56:29Z",
- "closedAt": "2022-05-04T07:56:29Z",
- "scanDt": "2022-05-04T07:56:29Z",
- "name": "My test supply",
- "cargoType": 0,
- "crossBorderType": 1,
- "destinationOfficeId": 123,
- "recommendedWhId": 123569,
- "shippingDt": "2026-08-31",
- "shippingPointId": 100,
- "shippingType": "transportCompany",
- "waybillUuid": "550e8400-e29b-41d4-a716-384579387429",
- "spotAvailable": true
}
]
}Add Assembly Orders to the Supply{{ /api/marketplace/v3/supplies/{supplyId}/orders }}
The method adds up to 100 assembly orders to the supply and moves it to the confirm status.
It can also move the assembly orders:
- between active supplies
- from a closed to an active supply, if the assembly order requires reshipment.
cargoType field.
After that, you can only add assembly orders of the same dimensional type as the supply.
crossBorderType field.
After that, you can add to the supply only the assembly orders of the same type as the supply.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| supplyId required | string Example: WB-GI-1234567 Supply ID |
Request Body schema: application/jsonrequired
| orders | Array of integers [ 1 .. 100 ] items Assembly order IDs |
Responses
Request samples
- Payload
{- "orders": [
- 5632423,
- 3453452,
- 7654533,
- 4529544
]
}Response samples
- 400
- 401
- 402
- 403
- 404
- 409
- 429
{- "message": "Incorrect parameter value"
}Get Supply Details{{ /api/v3/supplies/{supplyId} }}
Returns supply details.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| supplyId required | string Example: WB-GI-1234567 Supply ID |
Responses
Response samples
- 200
- 400
- 401
- 402
- 403
- 404
- 429
{- "id": "WB-GI-1234567",
- "isB2b": true,
- "isPickupPointShipmentAllowed": true,
- "done": true,
- "createdAt": "2022-05-04T07:56:29Z",
- "closedAt": "2022-05-04T07:56:29Z",
- "scanDt": "2022-05-04T07:56:29Z",
- "name": "My test supply",
- "cargoType": 0,
- "crossBorderType": 1,
- "destinationOfficeId": 123,
- "recommendedWhId": 123569,
- "shippingDt": "2026-08-31",
- "shippingPointId": 100,
- "shippingType": "transportCompany",
- "waybillUuid": "550e8400-e29b-41d4-a716-384579387429",
- "spotAvailable": true
}Delete the Supply{{ /api/v3/supplies/{supplyId} }}
Deleted the supply if it is active and does not contain any assembly orders.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| supplyId required | string Example: WB-GI-1234567 Supply ID |
Responses
Response samples
- 400
- 401
- 402
- 403
- 404
- 409
- 429
{- "message": "Incorrect parameter value"
}Get Supply Assembly Order IDs{{ /api/marketplace/v3/supplies/{supplyId}/order-ids }}
The method returns assembly orders IDs assigned to the supply.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| supplyId required | string Supply ID |
Responses
Response samples
- 200
- 400
- 401
- 402
- 403
- 404
- 429
{- "orderIds": [
- 132334,
- 203984,
- 403543,
- 598349
]
}Move the Supply to the Delivery{{ /api/v3/supplies/{supplyId}/deliver }}
Closes the supply and moves all assembly orders to complete (In Delivery) status. You cannot add any assembly orders to the supply after it is closed.
If the supply wasn't handed over for delivery, than scanning its QR code or accepting the first item will automatically close the supply.
You can transfer the supply to delivery only if:
- there is at least one assembly order
- required labeling is specified for all assembly orders
- labeling of all assembly orders passed validation
If the supply contains assembly orders with required UIN, make sure that you have created and uploaded the Delivery Contract Specification in advance. The GIIS DMDK takes about 30 minutes to process changes in UIN statuses.
It is required to specify the shipping parameters for supplies from Russian sellers to Russia shipping points. If the shipping method, shipping date, or shipping point is not specified, a 409 error is returned.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| supplyId required | string Example: WB-GI-1234567 Supply ID |
Responses
Response samples
- 400
- 401
- 402
- 403
- 404
- 409
- 429
{- "message": "Incorrect parameter value"
}Get the Supply QR Code{{ /api/v3/supplies/{supplyId}/barcode }}
Returns the QR code in svg, zplv (vertical), zplh (horizontal), png.
Available only after the supply has been transferred to the delivery.
Available dimensions:
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| supplyId required | string Example: WB-GI-1234567 Supply ID |
query Parameters
| type required | string Enum: "svg" "zplv" "zplh" "png" Sticker format |
Responses
Response samples
- 200
- 400
- 401
- 402
- 403
- 404
- 409
- 429
{- "barcode": "WB-GI-12345678",
- "file": "U3dhZ2dlciByb2Nrcw=="
}Get Supply Shipping Units List{{ /api/v3/supplies/{supplyId}/trbx }}
Returns supply shipping units list.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| supplyId required | string Example: WB-GI-1234567 Supply ID |
Responses
Response samples
- 200
- 400
- 401
- 402
- 403
- 404
- 429
{- "trbxes": [
- {
- "id": "WB-TRBX-1234567"
}
]
}Add Shipping Units to the Supply{{ /api/v3/supplies/{supplyId}/trbx }}
Adds the required number of shipping units to the supply.
You should add shipping units only to supplies shipped to the pickup points.
You can add shipping units to an open supply only. One shipping unit can contain several orders. For example, if a supply has 10 orders, distribute them into boxes: the system will allow creating no more than 5 shipping units. For 20 orders — no more than 10 shipping units, for 100 — no more than 50.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| supplyId required | string Example: WB-GI-1234567 Supply ID |
Request Body schema: application/json
| amount required | integer [ 1 .. 1000 ] Shipping units amount to add to the supply |
Responses
Request samples
- Payload
{- "amount": 4
}Response samples
- 201
- 400
- 401
- 402
- 403
- 404
- 429
{- "trbxIds": [
- "WB-TRBX-1234567"
]
}Delete Shipping Units from the Supply{{ /api/v3/supplies/{supplyId}/trbx }}
The method deletes shipping units from the supply. Available only while the supply is being assembled.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| supplyId required | string Example: WB-GI-1234567 Supply ID |
Request Body schema: application/json
| trbxIds required | Array of strings List of shipping unit IDs to delete from the supply |
Responses
Request samples
- Payload
{- "trbxIds": [
- "WB-TRBX-1234567"
]
}Response samples
- 400
- 401
- 402
- 403
- 404
- 429
{- "message": "Incorrect parameter value"
}Get the Supply Shipping Unit QR Code Stickers{{ /api/v3/supplies/{supplyId}/trbx/stickers }}
Returns QR-code stickers in svg, zplv (vertical), zplh (horizontal), png.
Available only if there are assembly orders in the shipping unit.
Stickers dimensions: 580x400 px.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| supplyId required | string Example: WB-GI-1234567 Supply ID |
query Parameters
| type required | string Enum: "svg" "zplv" "zplh" "png" Sticker format |
Request Body schema: application/json
| trbxIds required | Array of strings List of supply shipping unit IDs for the sticker generation |
Responses
Request samples
- Payload
{- "trbxIds": [
- "WB-TRBX-1234567"
]
}Response samples
- 200
- 400
- 401
- 402
- 403
- 404
- 429
{- "stickers": [
- {
- "barcode": "$WBMP:1:123:1234567",
- "file": "U3dhZ2dlciByb2Nrcw=="
}
]
}Get Offices for Pass{{ /api/v3/passes/offices }}
Returns a list of offices that require a pass.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
Responses
Response samples
- 200
- 401
- 402
- 403
- 429
[- {
- "name": "Koledino",
- "address": "Kosmonavtov 10А",
- "id": 1
}
]Get Passes{{ /api/v3/passes }}
Returns a list of all seller passes.
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
Responses
Response samples
- 200
- 401
- 402
- 403
- 429
[- {
- "firstName": "Alex",
- "dateEnd": "2022-07-31 17:53:13+00:00",
- "lastName": "Petrov",
- "carModel": "Lamborghini",
- "carNumber": "A456BC123",
- "officeName": "Koledino",
- "officeAddress": "Kosmonavtov 10А",
- "officeId": 15,
- "id": 1
}
]Create Pass{{ /api/v3/passes }}
Creates a seller pass.
The pass is valid for 48 hours from the time of creation.
Authorizations:
Request Body schema: application/jsonrequired
The total length of the full name is limited from 6 to 100 characters. The car number can contain only letters and numbers
| firstName required | string non-empty First name |
| lastName required | string non-empty Last name |
| carModel required | string [ 1 .. 100 ] characters Car model |
| carNumber required | string [ 6 .. 9 ] characters Car number |
| officeId required | integer <int64> >= 1 Office ID |
Responses
Request samples
- Payload
{- "firstName": "Alex",
- "lastName": "Petrov",
- "carModel": "Lamborghini",
- "carNumber": "A456BC123",
- "officeId": 15
}Response samples
- 201
- 400
- 401
- 402
- 403
- 404
- 429
{- "id": 2
}Update Pass{{ /api/v3/passes/{passId} }}
Updates the seller pass detail
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| passId required | integer <int64> Example: 45 Pass ID |
Request Body schema: application/jsonrequired
The total length of the full name is limited from 6 to 100 characters. The car number can contain only letters and numbers.
| firstName required | string non-empty First name |
| lastName required | string non-empty Last name |
| carModel required | string [ 1 .. 100 ] characters Car model |
| carNumber required | string [ 6 .. 9 ] characters Car number |
| officeId required | integer <int64> >= 1 Office ID |
Responses
Request samples
- Payload
{- "firstName": "Alex",
- "lastName": "Petrov",
- "carModel": "Lamborghini",
- "carNumber": "A456BC123",
- "officeId": 15
}Response samples
- 400
- 401
- 402
- 403
- 404
- 429
{- "message": "Incorrect request body"
}Delete the Pass{{ /api/v3/passes/{passId} }}
Deletes the seller pass
| Period | Limit | Interval | Burst |
|---|---|---|---|
| 1 min | 300 requests | 200 ms | 20 requests |
One request with 4XX response codes is counted as 10 requests.
In Sandbox — maximum of 1 request per second for all Marketplace methods in total.
Authorizations:
path Parameters
| passId required | integer <int64> Example: 45 Pass ID |
Responses
Response samples
- 401
- 402
- 403
- 404
- 429
{- "title": "unauthorized",
- "detail": "token problem; token is malformed: could not base64 decode signature: illegal base64 data at input byte 84",
- "code": "07e4668e--a53a3d31f8b0-[UK-oWaVDUqNrKG]; 03bce=277; 84bd353bf-75",
- "requestId": "7b80742415072fe8b6b7f7761f1d1211",
- "origin": "ag-marketplace",
- "status": 401,
- "statusText": "Unauthorized",
- "timestamp": "2024-09-30T06:52:38Z"
}