FBO WB/OZON API
- /api/lite/orders/worksheet/form_template
- /api/lite/orders/worksheet
- /api/lite/orders/packing/fbm/sticker/file
- /api/lite/orders/packing/fbm/sticker
- /api/lite/orders/upload_fbm_docs_ff
- /api/lite/orders/pallet/fbm/sticker/file
- /api/lite/orders/pallet/fbm/sticker
- /api/lite/orders/packing/fbm/sticker/xls
- /api/lite/orders/fbo/delivery/warehouses
/api/lite/orders/worksheet/form_template
Запрос шаблона анкеты FBM
/api/lite/orders/worksheet/form_template?order_id=123437
параметр order_id - ИД заказа в Кактусе, обязательный
Поле | Тип | Описание |
id | string | ИД поля анкеты в Кактусе. |
extId | string | Внешний ИД поля анкеты. Используется для сопоставления при передаче во внешние системы |
name | string | Вопрос, который отображается над полем |
tooltip | string |
Подсказка к полю (всплывайка при наведении на символ (?)) Если null, или отсутствует, то символ подсказки не отображается |
value | string |
Значение поля по умолчанию |
mandatory | boolean |
Обязательность заполнения поля. При дальнейшей валидации, проверяется заполненность value |
inputType | string |
Тип поля ввода. Влияет на отрисовку на форме. Значения: INPUT, TEXTAREA |
Пример результата запроса
{
"success": true,
"requirements": {
"form": true,
"packing_sticker_type": "NONE",
"pallet_sticker_type":"PDF"
},
"form_content": [
{
"id": "1000",
"name": "Наименование юрлица",
"value": "",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1001",
"name": "Номер поставки МП",
"value": "",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1002",
"name": "Дата доставки на склад МП",
"value": "",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1003",
"name": "Тип отгрузки: короба, моно, микс",
"value": "",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1004",
"name": "Дополнительная упаковка: да/нет",
"value": "",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1005",
"name": "Нанесение дополнительного стикера с описанием товара",
"value": "",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1006",
"name": "Минимальное количество товара в коробе",
"value": "",
"mandatory": true,
"inputType": "INPUT"
}
]
}
/api/lite/orders/worksheet
Запрос анкеты FBM по заказу
/api/lite/orders/worksheet?orderId=TS100307
параметр orderId - ИД заказа в Кактусе, обязательный.
Поле |
Тип | Описание |
id | string | ИД поля анкеты в Кактусе. |
extId | string | Внешний ИД поля анкеты. Используется для сопоставления при передаче во внешние системы |
name | string | Вопрос, который отображается над полем |
tooltip | string |
Подсказка к полю (всплывайка при наведении на символ (?)) Если null, или отсутствует, то символ подсказки не отображается |
value | string |
Значение поля по умолчанию |
mandatory | boolean |
Обязательность заполнения поля. При дальнейшей валидации, проверяется заполненность value |
inputType | string |
Тип поля ввода. Влияет на отрисовку на форме. Значения: INPUT, TEXTAREA |
Пример результата запроса
Если анкета заполнялась:
{
"success": true,
"orderId": "1000",
"form_content": [
{
"id": "1000",
"extId":"WB000001"
"name": "Порядковый номер палеты",
"tooltip": "Подсказка к полю (всплывайка при наведении на символ (?))"
"value": "23445",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1001",
"name": "Количество палет в поставке",
"value": "5",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1002",
"name": "Количество коробов на данной палете",
"value": "2",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1003",
"name": "Номер поставки",
"value": "4433221",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1004",
"name": "Склад назначения (а при транзите также транзитный склад)",
"value": "ООО Вектор, ул. Складская, стр.1",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1005",
"name": "Тип коробов (моно, микс)",
"value": "моно",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1006",
"name": "Наименование юридического лица",
"value": "ООО Вектор",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1007",
"name": "Дата поставки",
"value": "20.07.2021",
"mandatory": true,
"inputType": "INPUT"
}
]
}
Либо, если анкета не заполнялась:
{
"success": true,
"orderId": "1000",
"form_content": null
}
Создание/редактирование анкеты FBM по заказу
/api/lite/orders/worksheet
orderId - ИД заказа в Кактусе, следует обязательно указывать.
Пример запроса
{
"success": true,
"orderId": "1000",
"form_content": [
{
"id": "1000",
"extId":"WB000001"
"name": "Порядковый номер палеты",
"tooltip": "Подсказка к полю (всплывайка при наведении на символ (?))"
"value": "23445",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1001",
"name": "Количество палет в поставке",
"value": "5",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1002",
"name": "Количество коробов на данной палете",
"value": "2",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1003",
"name": "Номер поставки",
"value": "4433221",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1004",
"name": "Склад назначения (а при транзите также транзитный склад)",
"value": "ООО Вектор, ул. Складская, стр.1",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1005",
"name": "Тип коробов (моно, микс)",
"value": "моно",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1006",
"name": "Наименование юридического лица",
"value": "ООО Вектор",
"mandatory": true,
"inputType": "INPUT"
},
{
"id": "1007",
"name": "Дата поставки",
"value": "20.07.2021",
"mandatory": true,
"inputType": "INPUT"
}
]
}
Ошибка:
{
"success": false,
"errors": [
{
"code": 0,
"message": "Текст ошибки"
}
]
}
/api/lite/orders/packing/fbm/sticker/file
/api/lite/orders/packing/fbm/sticker/file
Добавляет PDF файл стикера к упакованному месту.
Параметры передаются как form-data:
upfile | Файл(ы) для загрузки |
id | Идентификатор заказа (humanId) |
barcode |
ШК упакованного места ("packings":[{"barcode":"201000000315",) (Если параметр не передан, то поиск ШК происходит по значению имени файла) |
print_when_packing | Печатать при упаковке |
copies_qty | Кол-во копий |
Если в значении upfile передан всего 1 файл и значение barcode передано, то загрузка происходит в режиме одиночного файла. Поиск осуществляется по ШК из значения barcode.
Если же в значении upfile 2 или более файлов или значение barcode отсутствует(null или пустое) то загрузка происходит в режиме массового прикрепления. Поиск осуществляется по ШК из названия файлов. (пример: файл BC2003.pdf, поиск будет происходить по значению "BC2003")
Пример ответа (одиночный файл):
{
"success": true,
"id": "39a3dde4-f1ab-fc40-8ac2-fd658e2ab596",
"fileType": "JPG",
"fileSource": "USER",
"fileName": "Битва_экстрасенсов_(логотип)",
"fileExt": "jpg",
"fileSize": 195261,
"url": "https://storage.yandexcloud.net/order-files-kak2c/cf2d5a4a-77c0-453d-94f6-30df07bfc261.jpg",
"printWhenPacking": false,
"copiesQty": 1,
"md5sum": "DAC4EB25F5605B754A70093312AC8B65"
}
Пример ответа (массовое прикрепление):
{
"docFiles": [
{
"copiesQty": 1,
"fileExt": "png",
"fileName": "1489000096876",
"fileSize": 57906,
"fileSource": "USER",
"fileType": "PNG",
"id": "7702bb9c-f849-8623-72f3-da02b919d78e",
"md5sum": "413A2416808C1F4C6FFE47B3E03BEA75",
"printWhenPacking": false,
"success": true,
"url": "https://storage.yandexcloud.net/order-files-kak2c/097bcfb8-e657-4592-b692-b33a858dec1a.png"
},
{
"copiesQty": 1,
"fileExt": "jpg",
"fileName": "11111111111111",
"fileSize": 38543,
"fileSource": "USER",
"fileType": "JPG",
"id": "70a4cf8e-0f15-6c0b-4585-bfb0be1354ff",
"md5sum": "3431AC1E1A19E37E33461F6B9BF3FEC5",
"printWhenPacking": false,
"success": true,
"url": "https://storage.yandexcloud.net/order-files-kak2c/2087ac74-6b97-4264-a889-3905293da836.jpg"
}
],
"success": true
}
/api/lite/orders/packing/fbm/sticker/file
Удаляет файл
В параметре id передается идентификатор файла.
Пример запроса:
DELETE https://app.kak2c.ru/api/lite/packing/fbm/sticker/file?id=b233372d-cf7b-f07b-446b-128912be7c8a
Пример ответа:
{
"success": true
}
данные по стикерам упакованных мест возвращаются в методе
/api/lite/orders?id=1001&full_info=true
...
"packings": [
{
"barcode": "4343001973680",
"fbmStickerBarcode": "WB_0032345",
"measurements": {
"success": true,
"weight": 345,
"dimensions": {
"height": 100,
"width": 180,
"depth": 100
}
},
"items": [
...
],
"files": [
{
"success": true,
"id": "da7b5b5c-34f8-1b87-0937-410c251e3b8e",
"fileType": "JPG",
"fileSource": "USER",
"fileName": "1_T-qHsJ6L5UjpJP-6JVZz0w (1)",
"fileExt": "jpeg",
"fileSize": 110724,
"url": "https://storage.yandexcloud.net/order-files-kak2c/d5e2c0ea-f968-44d1-9d70-d270ab38a773.jpeg",
"printWhenPacking": false,
"copiesQty": 1,
"md5sum": "D61372833808D44DE5F47BE77BDB4CB5"
}
]
}
],
...
/api/lite/orders/packing/fbm/sticker
/api/lite/orders/packing/fbm/sticker
Добавляет текстовый стикер к упакованному месту
Пример запроса
{
"packing_barcode": "4343001973680", //шк упакованноко места
"sticker_barcode": "WB_003234" //шк текстового стикера маркетплейса
}
Ответ
{
"success": true
}
/api/lite/orders/upload_fbm_docs_ff
/api/lite/orders/upload_fbm_docs_ff
Отправляет данные прикрепленных FBM стикеров упакованных мест и файлов заказа в темпо
Пример запроса
{
"id": "2502-123437"
}
Ответ
{
"success": true
}
/api/lite/orders/pallet/fbm/sticker/file
/api/lite/orders/pallet/fbm/sticker/file
Добавляет PDF файл стикера к паллете.
Параметры передаются как form-data:
upfile | Файл для загрузки |
barcode |
ШК паллеты ("pallets":[{"barcode":"201000000315",) (Если параметр не передан, то поиск ШК происходит по значению имени файла) |
print_when_packing | Печатать при упаковке |
copies_qty | Кол-во копий |
Если в значении upfile передан всего 1 файл и значение barcode передано, то загрузка происходит в режиме одиночного файла. Поиск осуществляется по ШК из значения barcode.
Если же в значении upfile 2 или более файлов или значение barcode отсутствует(null или пустое) то загрузка происходит в режиме массового прикрепления. Поиск осуществляется по ШК из названия файлов. (пример: файл BC2003.pdf, поиск будет происходить по значению "BC2003")
Пример ответа(одиночный файл):
{
"success": true,
"id": "39a3dde4-f1ab-fc40-8ac2-fd658e2ab596",
"fileType": "JPG",
"fileSource": "USER",
"fileName": "Битва_экстрасенсов_(логотип)",
"fileExt": "jpg",
"fileSize": 195261,
"url": "https://storage.yandexcloud.net/order-files-kak2c/cf2d5a4a-77c0-453d-94f6-30df07bfc261.jpg",
"printWhenPacking": false,
"copiesQty": 1,
"md5sum": "DAC4EB25F5605B754A70093312AC8B65"
}
Пример ответа (массовое прикрепление):
{
"docFiles": [
{
"copiesQty": 1,
"fileExt": "png",
"fileName": "1489000096876",
"fileSize": 57906,
"fileSource": "USER",
"fileType": "PNG",
"id": "7702bb9c-f849-8623-72f3-da02b919d78e",
"md5sum": "413A2416808C1F4C6FFE47B3E03BEA75",
"printWhenPacking": false,
"success": true,
"url": "https://storage.yandexcloud.net/order-files-kak2c/097bcfb8-e657-4592-b692-b33a858dec1a.png"
},
{
"copiesQty": 1,
"fileExt": "jpg",
"fileName": "11111111111111",
"fileSize": 38543,
"fileSource": "USER",
"fileType": "JPG",
"id": "70a4cf8e-0f15-6c0b-4585-bfb0be1354ff",
"md5sum": "3431AC1E1A19E37E33461F6B9BF3FEC5",
"printWhenPacking": false,
"success": true,
"url": "https://storage.yandexcloud.net/order-files-kak2c/2087ac74-6b97-4264-a889-3905293da836.jpg"
}
],
"success": true
}
/api/lite/orders/pallet/fbm/sticker/file
Удаляет файл
В параметре id передается идентификатор файла.
Пример запроса:
DELETE https://app.kak2c.ru/api/lite/pallet/fbm/sticker/file?id=b233372d-cf7b-f07b-446b-128912be7c8a
Пример ответа:
{
"success": true
}
данные по стикерам паллет возвращаются в методе
/api/lite/orders?id=1001&full_info=true
...
"pallets": [
{
"barcode": "pl705970976005-1",
"files": [
{
"copiesQty": 1,
"fileExt": "pdf",
"fileName": "ИП Ozon Хоругвино Шк на палету",
"fileSize": 22535,
"fileSource": "USER",
"fileType": "PDF",
"id": "aa22d7fa-65a2-6be0-8e0d-430ec6c874d3",
"printWhenPacking": false,
"success": true,
"url": "https://storage.yandexcloud.net/order-files-kak2c/b42eebd1-eb7e-4603-a781-5240699288d9.pdf" //ШК в формате PDF
}
],
"measurements": {
"dimensions": {
"depth": 120,
"height": 100,
"width": 120
},
"success": true,
"weight": 200
},
"num": 1,
"packings": [
{
"barcode": "201000000469",
"measurements": {
"dimensions": {
"depth": 400,
"height": 200,
"width": 300
},
"success": true,
"weight": 700
},
"palletBarcode": "pl705970976005-1"
}
]
}
],
...
/api/lite/orders/pallet/fbm/sticker
/api/lite/orders/pallet/fbm/sticker
Добавляет текстовый стикер к паллете
Пример запроса
{
"pallet_barcode": "pl705970976005-1", //шк паллеты
"sticker_barcode": "WB_003234" //шк текстового стикера маркетплейса
}
Ответ
{
"success": true
}
/api/lite/orders/packing/fbm/sticker/xls
/api/lite/orders/packing/fbm/sticker/xls
Позволяет скачать сопоставление ШК упакованных мест
параметр id - ИД заказа, обязательный
пример:
/api/lite/orders/packing/fbm/sticker/xls?id=2502-123447
Ответ
{
"exportResults": [
{
"fileID": "export_order_2502-123447",
"fileUrl": "https://storage.yandexcloud.net/items-export-kak2c/export_orders_test@tempo.ru_09.11.2021_21-53-03.xls",
"rowsTotal": 1,
"success": true
}
],
"recordsTotal": 1,
"success": true
}
/api/lite/orders/packing/fbm/sticker/xls
Импортирует сопоставление ШК из экселя
Используется заголовок запроса Content-type: multipart/form-data.
В качестве параметров запроса передается:
- id - ИД заказа, обязательный параметр
- upfile - файл с сопоставлением
Ответ
{
"success": true
}
/api/lite/orders/fbo/delivery/warehouses
/api/lite/orders/fbo/delivery/warehouses
Позволяет получить список возможных адресов доставки для FBO заказов
параметр fbmType - тип FBM, обязательный. Возможные значения: OZON, WILDBERRIES
пример:
/api/lite/orders/fbo/delivery/warehouses?fbmType=WILDBERRIES
Ответ
{
"addresses": [
{
"availabilityClass": 1,
"city": "Подольск",
"cityFias": "b22cf685-e391-42c8-aab5-a9aadb9193d4",
"country": "Россия",
"fbmType": "WILDBERRIES",
"fullAddress": "Московская обл, г Подольск, ул Поливановская, д 9",
"house": "9",
"name": "Wildberries Подольск",
"region": "Московская",
"regionFias": "29251dcf-00a1-4e34-98d4-5c47484a36d4",
"street": "Поливановская",
"zip": "142103"
},
{
"availabilityClass": 1,
"city": "Подольск",
"cityFias": "b22cf685-e391-42c8-aab5-a9aadb9193d4",
"country": "Россия",
"fbmType": "WILDBERRIES",
"fullAddress": "Московская обл, г Подольск, деревня Коледино, ул Троицкая, стр 20",
"house": "20",
"name": "Wildberries Коледино",
"region": "Московская",
"regionFias": "29251dcf-00a1-4e34-98d4-5c47484a36d4",
"settlement": "Коледино",
"settlementFias": "6473edb3-f716-4987-ac0d-60068c2f0bb4",
"street": "Троицкая ",
"zip": "142181"
},
{
"area": "Ногинск",
"areaFias": "40ae04e3-9a69-44ea-8bd7-6c6f08e1a4ca",
"availabilityClass": 1,
"city": "Ногинск",
"cityFias": "40ae04e3-9a69-44ea-8bd7-6c6f08e1a4ca",
"country": "Россия",
"fbmType": "WILDBERRIES",
"fullAddress": "Московская обл, г Ногинск, рп Обухово, тер Атлант-Парк, д 35 ",
"house": "35",
"name": "WILDBERRIES Обухово",
"region": "Московская",
"regionFias": "29251dcf-00a1-4e34-98d4-5c47484a36d4",
"settlement": "Атлант-Парк (рп Обухово)",
"settlementFias": "72c5aacd-c5af-46c4-a1fa-0768c4fa0cf7",
"zip": "142440"
},
{
"area": "Марушкинское",
"areaFias": "37477930-7e8d-47f6-89a0-f6ad39e946c9",
"availabilityClass": 2,
"city": "Москва",
"cityFias": "0c5b2444-70a0-4932-980c-b4dc0d3f02b5",
"country": "Россия",
"fbmType": "WILDBERRIES",
"fullAddress": "г Москва, поселение Марушкинское, кв-л 8",
"name": "Wildberries Внуково",
"region": "Москва",
"regionFias": "0c5b2444-70a0-4932-980c-b4dc0d3f02b5",
"settlement": "кв-л 8",
"settlementFias": "86e37fff-3ffe-4ff9-986d-fa214853b764",
"zip": "108809"
},
{
"availabilityClass": 2,
"building": "7",
"city": "Чехов",
"cityFias": "7eeb876e-7b67-4ed7-91ec-0588712db96c",
"country": "Россия",
"fbmType": "WILDBERRIES",
"fullAddress": "Московская обл, г Чехов, село Новоселки, тер промышленная зона Новоселки, влд 11 стр 7",
"house": "11",
"name": "Wildberries Чехов 2",
"region": "Московская",
"regionFias": "29251dcf-00a1-4e34-98d4-5c47484a36d4",
"settlement": "Березка СХ2 (село Новоселки)",
"settlementFias": "5d4ab092-eaf2-4ffa-ae4f-a60916511063",
"zip": "142326"
},
{
"availabilityClass": 2,
"city": "Электросталь",
"cityFias": "e0b171b6-bf2e-4d68-ab05-4d42ab2b375a",
"country": "Россия",
"fbmType": "WILDBERRIES",
"fullAddress": "Московская обл, г Электросталь, поселок Случайный, тер Массив 3, д 5",
"house": "5",
"name": "Wildberries Электросталь",
"region": "Московская",
"regionFias": "29251dcf-00a1-4e34-98d4-5c47484a36d4",
"settlement": "Массив 3 (поселок Случайный)",
"settlementFias": "89efc91f-6875-4527-b27e-3fb03dc94971",
"zip": "144004"
},
{
"area": "Пушкино",
"areaFias": "7f22cfa4-34fa-4fa0-bcb0-620cd8402cfa",
"availabilityClass": 1,
"block": "4",
"city": "Пушкино",
"cityFias": "7f22cfa4-34fa-4fa0-bcb0-620cd8402cfa",
"country": "Россия",
"fbmType": "WILDBERRIES",
"fullAddress": "Московская обл, г Пушкино, тер 33-й км автодороги М8 Холмогоры, д 16в",
"house": "16в",
"name": "Wildberries Пушкино",
"region": "Московская",
"regionFias": "29251dcf-00a1-4e34-98d4-5c47484a36d4",
"settlement": "33-й км автодороги М8 Холмогоры",
"settlementFias": "a9b12f5e-b2c4-48b6-9cf3-31923f4750a1",
"zip": "141202"
}
],
"success": true
}