{
"error": "error_brand_already_exists",
"localMessage": "Бренд Base уже существует",
"params": {
"name": "Base"
}
}Публичный API · Справочник API
Склад
Склады, проходы, стеллажи, полки, ячейки и связи со складами маркетплейсов.
Создание складов, проходов, стеллажей, полок и ячеек. Поиск ячеек и настройка связей со складами маркетплейсов.
/api/warehouse
Модель данных
Структуры данных
Поля объектов, которые используются в запросах и ответах этого раздела.
Address15 полей
idinteger · int32Поле id.
postCodestringПоле postCode.
countryCountryПоле country.
regionRegionПоле region.
regionIdinteger · int32Поле regionId.
streetstringПоле street.
housestringПоле house.
districtstringПоле district.
citystringПоле city.
localitystringПоле locality.
buildingstringПоле building.
flatstringПоле flat.
shortstringПоле short.
addressIdAddressПоле addressId.
fullstringПоле full.
Cell18 полей
idinteger · int32Идентификатор ячейки
read-onlywarehouseIdinteger · int64Склад к которому относится ячейка
passageIdinteger · int32Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр
shelfIdinteger · int32Полка стеллажа, к которой относится ячейка
rackIdinteger · int32Стеллаж, к которому относится ячейка
storageZoneIdinteger · int64Зона хранения, к которой относится ячейка
namestringНазвание ячейки. По умолчанию формируется автоматически
fullNamestringПолное название ячейки из названий прохода, стелажа, полки и ячейки
sortNamestringНазвание для сортировки ячейки из названий прохода, стелажа, полки и ячейки
barcodestringУникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки
deletedbooleanПризнак того, что ячейка удалена
widthinteger · int32Ширина ячейки для определения товаров, которые можно положить в нее
heightinteger · int32Высота ячейки для определения товаров, которые можно положить в нее
depthinteger · int32Глубина ячейки для определения товаров, которые можно положить в нее
volumenumber · doubleОбъём ячейки в кубических метрах. Имеет приоритет над габаритами
clientIdinteger · int64Клиент которому принадлежит ячейка. Проставляется автоматически
read-onlylastInventoryIdinteger · int32Идентификатор последней инвентаризации
read-onlytypestringТип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов
Country6 полей
countryIdinteger · int32Идентификатор страны
namestringНазвание страны
code2stringДвухбуквенный код страны
code3stringТрехбуквенный код страны
namesobjectПоле names.
printNamestringПоле printName.
Organization38 полей
idinteger · int64Идентификатор организации. Проставляется автоматически
read-onlynamestringПолное наименование организации
ОбязательноshortNamestringПоле shortName.
taxTypestringСистема налогооблажения
taxRateinteger · int32Ставка налога, если она отличается от стандартной
taxNdsinteger · int32Ставка налога, если она отличается от стандартной
inputTaxNdsinteger · int32Ставка входящего НДС
outputTaxNdsinteger · int32Ставка исходящего НДС
enableNewTaxCalculationbooleanВключить расчет налогов по новым правилам
useNdsCostPricebooleanУчитывать входящий НДС в себестоимости
innstringИНН
ОбязательноkppstringКПП. Проставляется только для ООО
bankstringНазвание банка
bikstringБИК счета организации
corrBillstringНомер корреспондентского счета
billNumberstringНомер счета организации
stampPathstringСсылка на изображение печати организации
read-onlystampUrlstringСсылка на изображение печати организации
read-onlystampSizeinteger · int32Размер в байтах изображения печати организации
read-onlystampWidthinteger · int32Ширина изображения печати организации
read-onlystampHeightinteger · int32Высота изображения печати организации
read-onlystampFileNamestringИмя исходного файла печати
read-onlysignaturePathstringФото подписи директора организации
read-onlysignatureUrlstringФото подписи директора организации
read-onlysignatureFileNamestringИмя исходного файла подписи
read-onlyfulfillmentContractSignerNamestringФИО подписанта со стороны фулфилмента
fulfillmentContractSignerPositionstringДолжность подписанта со стороны фулфилмента
signatureSizeinteger · int32Размер файла в байтах подписи директора организации
read-onlysignatureWidthinteger · int32Ширина изображения подписи директора
read-onlysignatureHeightinteger · int32Высота изображения подписи директора
read-onlyipPersonPersonРуководитель организации или ИП
formstringОрганизационно правовая форма
ОбязательноipbooleanПоле ip.
clientIdinteger · int64Идентификатор клиента
read-onlyaddressAddressАдресс организации
phoneNumberstringНомер телефона
addressFullstringПолный адрес
read-onlysamplebooleanВ реквизитах остались тестовые данные
read-onlyPassage6 полей
idinteger · int32Поле id.
namestringПоле name.
warehouseIdinteger · int64Поле warehouseId.
deletedbooleanПоле deleted.
clientIdinteger · int64Поле clientId.
racksRack[]Стелажи этого прохода
Person14 полей
personIdinteger · int64Поле personId.
read-onlyfirstNamestringИмя сотрудника
ОбязательноlastNamestringФамилия сотрудника
ОбязательноsurNamestringОтчество сотрудника
clientIdinteger · int64Идентификатор клиента
read-onlypositionPersonPositionДолжность сотрудника
ОбязательноversionIdinteger · int64Поле нужно передавать при изменении,для предотвращения одновременной перезаписи
read-onlycreatedUserstringПроставляется автоматически. Пользователь создавший сотрудника
read-onlycreatedDatestring · date-timeПроставляется автоматически. Дата создания сотрудника
read-onlydeletedbooleanПризнак удаления сотрудника
read-onlyuserIdinteger · int32Связь сотрудника с пользователем
read-onlyhasChangesbooleanПоле hasChanges.
fullNamestringПолные ФИО
read-onlyshortNamestringФамилия и инициалы
read-onlyPersonPosition7 полей
idinteger · int64Идентификатор должности. Проставляется автоматически
read-onlynamestringНазвание должности
ОбязательноdeletedbooleanПризнак удаления должности
read-onlyclientIdinteger · int64Идентификатор клиента
read-onlydefaultJobIdinteger · int64Работа по умолчанию для должности
createdUserstringПользователь, который создал должность
read-onlycreatedDatestring · date-timeДата создания должности
read-onlyRack7 полей
idinteger · int32Поле id.
namestringПоле name.
warehouseIdinteger · int64Поле warehouseId.
passageIdinteger · int32Поле passageId.
deletedbooleanПоле deleted.
clientIdinteger · int64Поле clientId.
shelvesShelf[]Поле shelves.
Region4 полей
regionIdinteger · int32Поле regionId.
countryIdinteger · int32Поле countryId.
namestringПоле name.
regionSynonymsRegionSynonym[]Поле regionSynonyms.
RegionSynonym4 полей
idinteger · int64Поле id.
regionIdinteger · int64Поле regionId.
synonymstringПоле synonym.
servicestringПоле service.
ServiceWarehouse7 полей
idinteger · int64Проставляется автоматически при создании
read-onlynamestringНазвание внешнего склада, можно подставлять ID
ОбязательноexternalIdstringИдентификатор склада во внешней системе для связи остатков
ОбязательноwarehouseIdinteger · int64Склад SelSup
ОбязательноservicestringСервис для которого устанавливается связь
ОбязательноorganizationIdinteger · int64Организация SelSup
ОбязательноserviceOrganizationIdinteger · int64Идентификатор организации во внешней системе
Shelf7 полей
idinteger · int32Поле id.
namestringПоле name.
warehouseIdinteger · int64Поле warehouseId.
rackIdinteger · int32Поле rackId.
deletedbooleanПоле deleted.
clientIdinteger · int64Поле clientId.
cellsCell[]Поле cells.
Warehouse45 полей
idinteger · int64Поле id.
namestringНазвание склада
servicestringМаркетплейс к которому относится склад или null если склад клиента
organizationIdinteger · int64Организация склада для реквизитов в накладных и тп
organizationIdsinteger[]Все организации склада, первая из них основная и совпадает с organizationId
fboOrganizationIdinteger · int64Организация, к которой относится данный склад (FBO)
noPlaceCellIdinteger · int32Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе
noPlaceCellCellЯчейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе
refundCellIdinteger · int32Ячейка, которая ставится для товаров из возвратов, которые пока не разместили на складе
organizationOrganizationПоле organization.
priorityinteger · int32Приоритет в резервировании остатков на этом складе. Используется для схемы работы с несколькими складами
useForOrderbooleanПоле useForOrder.
clientIdinteger · int64Поле clientId.
externalNamestringВнешнее название склада - в частности в различных выгрузках и API маркетплейсов
notSyncStocksbooleanНе передавать остатки на этом складе. Связями со складами маркетплейсов помечаются склады, на которые не нужно передавать остатки, иначе они будут обнулены
ignoreOrdersbooleanНе импортировать заказы с этого склада. Позволяет не загружать заказы FBS с этого склада
passagesPassage[]Список проходов со стелажами, полками и ячейками в случае склада клиента
warehouseServicesServiceWarehouse[]Связи нашего склада со складами маркетплейса
deliveriesobjectПоле deliveries.
deletedbooleanПризнак удаления склада
captionstringБренд который указываеться на ветрине
durationHoursinteger · int32Информация о сроках комплектации заказа
reservationDaysinteger · int32Количество дней резерва заказа
schedulestringГрафик работы
urAddressstringЮридический адрес для указания грузополучателя в УПД-2(У ОЗОНА)
citystringГород склада
longitudenumber · doubleДолгота
latitudenumber · doubleШирина
warehouseServiceIdinteger · int64Идентификатор склада на маркетплейсе
warehouseTypestringТип склада FBS/FBO/FBS_FBO
descriptionstringОписание склада
inninteger · int64ИНН склада
kppinteger · int64КПП склада
placeOfBusinessFiasIdstringИдентификатор ФИАС места осуществления деятельности склада
paymentAccountstringР/С склада
telephonestringТелефон склада
regionNamestringРегион расположения склада
regionRegionРегион расположения склада
regionIdinteger · int32Идентификатор региона из warehouser
isPrepayOnlinebooleanНаличие предоплаты
isCashbooleanНаличие оплаты наличными
isCardbooleanНаличие оплаты картой
isGoodsActivebooleanАссортимент магазина отображаеться на платформе ГУДС
orgIdWarehouseПоле orgId.
addressstringФактический адрес склада
AliexpressCategory8 полей
idinteger · int64Поле id.
namestringПоле name.
publishedbooleanПоле published.
parentIdinteger · int64Поле parentId.
aliexpressIdinteger · int64Поле aliexpressId.
lastSyncDatestring · date-timeДата последней синхронизации категории
notChangedDaysinteger · int32Количество дней, в течение которых данные категории не менялась. Используется для того, чтобы сократить обновление категорий, которые не меняются
isLeafbooleanКатегория является листовой. Карточки можно добавлять только в листовые
AvitoCategory9 полей
idinteger · int64Идентификатор категории на Авито.Совпадает с идентификатором Авито
ОбязательноnamestringПолное название категории (включает в себя названия родительских категорий)
ОбязательноshortNamestringКраткое название категории
publishedbooleanОпубликована категория
parentIdinteger · int64id родительской категории Авито. Используется при импорте обьявлений с Авито
lastSyncDatestring · date-timeДата последней синхронизации категории
isLeafbooleanКатегория является листовой. Карточки можно добавлять только в листовые
goodsTypestringТег GoodsType в фиде
categorystringТег Category в фиде
Brand11 полей
brandIdinteger · int32Идентификатор бренда
read-onlynamestringНазвание бренда
ОбязательноclientIdinteger · int64Идентификатор клиента
read-onlylogoUrlstringСсылка логотипа бренда
read-onlylogoSizeinteger · int32Размер логотипа в байтах
read-onlylogoWidthinteger · int32Ширина логотипа в пикселях
read-onlylogoHeightinteger · int32Высота логотипа в пикселях
read-onlydeletedbooleanБренд удален?
ozonNamestringНазвание бренда на Ozon
ozonIdinteger · int64ID бренда на Ozon
oneCIdstringИдентификатор 1С
Category47 полей
categoryIdinteger · int32Идентификатор категории. Проставляется автоматически
read-onlynamestringНаименование категории
ОбязательноdeletedbooleanПризнак удаленных категорий
read-onlyparentIdinteger · int32Идентификатор родительской категории
clientIdinteger · int64Идентификатор клиента
read-onlymarkedbooleanМаркируется ли категория
categoryClassstringТип категории для Честного знака. По умолчанию ставится OTHER
wildberriesTypeWildberriesTypeПредмет Вайлдбериз. Можно устанавливать либо объект,либо только идентификатор
wildberriesCategoryIdinteger · int64Идентификатор категории Wildberries, совпадает с ID категории на самом Wildberries
wildberriesFbmCommissionnumber · doubleКомиссия по тарифу FBM
read-onlywildberriesFbwCommissionnumber · doubleКомиссия по тарифу FBW
read-onlywildberriesFbsCommissionnumber · doubleКомиссия по тарифу FBS
read-onlywildberriesDbsCommissionnumber · doubleКомиссия по тарифу DBS
read-onlywildberriesEdbsCommissionnumber · doubleКомиссия по тарифу EDBS
read-onlywildberriesCAndCCommissionnumber · doubleКомиссия по тарифу C&C
read-onlywildberriesBookingCommissionnumber · doubleКомиссия за бронирование
read-onlyozonDescriptionCategoryIdinteger · int64Идентификатор категории на Ozon. Строится из ID категории + ID типа на Ozon
yandexMarketCategoryIdinteger · int64Идентификатор категории в Яндекс.Маркет. Совпадает с идентификатором категории на самом Яндекс.Маркет
yandexMarketCategoryYandexMarketCategoryКатегория Яндекс.Маркета. Можно проставлять либо объект, либо только идентификатор
ozonDescriptionCategoryOzonDescriptionCategoryКатегория Озон
ozonCommissionnumber · doubleКомиссия озона.
read-onlytnvedTnvedТНВЭД. Можно проставлять либо объект, либо идентификатор ТНВЭД
tnvedIdinteger · int64Идентификатор ТНВЭД
laundrystringПравила ухода за вещами. Разделяются запятыми
paramsstringJSON значений параметров для категории
namePatternstringШаблон названий категории
aliexpressCategoryAliexpressCategoryКатегория Aliexpress
aliexpressCategoryIdinteger · int64Идентификатор категории на самом Aliexpress
avitoCategoryAvitoCategoryКатегория Avito
lamodaCategoryLamodaCategoryКатегория Lamoda
lamodaCategoryIdinteger · int64Идентификатор категории на Lamoda
avitoCategoryIdinteger · int64Идентификатор категории на Avito
packDepthinteger · int32Глубина упаковки в мм. Проставляется всем товарам в категории
packWidthinteger · int32Ширина упаковки в мм. Проставляется всем товарам в категории
packHeightinteger · int32Высота упаковки в мм. Проставляется всем товарам в категории
packWeightinteger · int32Вес упаковки в граммах. Проставляется всем товарам в категории
hasSizebooleanПризнак разделения товаров в категории по размеру. Меняет вид редактора карточки
hasColorbooleanПризнак разделения товаров в категории по цвету. Меняет вид редактора карточки
autoNamebooleanАвтоматически формировать названия товаров в категории
removeFbsStockbooleanНе передавать остатки товаров по FBS для товаров из этой категории
oneCIdstringИдентификатор категории в 1С
externalIdstringИдентификатор категории на сайте
moySkladIdstringИдентификатор категории в сервисе МойСклад
useClientParamsbooleanПоказывать пользовательские параметры в категории
requiredExpirationDatebooleanЯвляется ли срок годности обязательным параметром
serviceCategoryMappingsobjectУниверсальные привязки категории к категориям внешних сервисов
productCountinteger · int32Количество товаров в категории. Отдается только при withProductCount=true
Competitor10 полей
idinteger · int64ID конкурента
read-onlymodelIdinteger · int64ID модели, для которой указывается конкурент
productIdinteger · int64ID конкретного товара, для которого указывается конкурент
servicestringМаркетплейс конкурента
ОбязательноurlstringURL карточки конкурента на маркетплейсе
ОбязательноserviceIdstringID карточки конкурента на сайте маркетплейса
clientIdinteger · int64ID клиента
read-onlylatestPricenumber · doubleПоследняя собранная цена
read-onlycurrencystringВалюта последней цены
read-onlylatestPriceDatestring · date-timeДата сбора последней цены
read-onlyContractor15 полей
idinteger · int64Идентификатор контрагента. Проставляется автоматически
namestringНаименование контрагента
ОбязательноversionIdinteger · int64Поле нужно передавать при изменении,для предотвращения одновременной перезаписи
clientIdinteger · int64Идентификатор клиента
read-onlycreatedUserstringЛогин пользователя, который создал контрагента
read-onlylastIncomeDatestring · date-timeДата последнего поступления для этого контрагента для сортировки
read-onlydeletedbooleanПризнак удаления контрагента
read-onlyorganizationIdinteger · int64Организация для реквизитов контрагента
legalAddressstringЮридический адрес для документов, заданный вручную
phoneNumberstringНомер телефона
emailstringАдрес электронной почты
contactNamestringИмя контакта
moySkladIdstringИдентификатор в сервисе МойСклад
urlstringСсылка на сайт
organizationOrganizationОрганизация для документов. Можно передать как сам объект, так и просто organizationId
read-onlyLamodaCategory8 полей
idinteger · int64Поле id.
namestringНазвание
shortNamestringКраткое название категории
publishedbooleanОпубликованность категории
isLeafbooleanЛистовая категория
parentIdinteger · int64Поле parentId.
lastSyncDatestring · date-timeДата последней синхронизации
notChangedDaysinteger · int32Количество дней, в течение которых данные категории не менялась. Используется для того, чтобы сократить обновление категорий, которые не меняются
Manufacturer11 полей
manufacturerIdinteger · int32Идентификатор производителя. Генерируется автоматически
titlestringНазвание производителя внешнее для печати
namestringНазвание производителя внутреннее
ОбязательноaddressstringАдрес производителя производителя внутреннее
organizationIdinteger · int64Связь производителя с организацией - контрагентом
clientIdinteger · int64Идентификатор клиента
read-onlycountryIdinteger · int32Идентификатор страны
countryNamestringНазвание страны
read-onlyinnstringИНН производителя, используется в основном для Честного знака
deletedbooleanЕсли true - производитель удален
oneCIdstringИдентификатор в 1С
MarketplaceCommissionCalculation8 полей
baseCommissionnumber · doubleПоле baseCommission.
adjustmentPercentPointsnumber · doubleПоле adjustmentPercentPoints.
effectiveCommissionnumber · doubleПоле effectiveCommission.
plannedProcessingHoursnumber · doubleПоле plannedProcessingHours.
processingHoursNormnumber · doubleПоле processingHoursNorm.
processingHoursSourcestringПоле processingHoursSource.
ruleValidFromstring · dateПоле ruleValidFrom.
ruleSourcestringПоле ruleSource.
Option14 полей
idinteger · int64Идентификатор значения, может отсутствовать
namestringНазвание значения, лучше всегда передавать
paramIdinteger · int64Идентификатор значения параметра Param.id
ozonIdinteger · int64Идентификатор значения параметра на Ozon
wildberriesIdinteger · int64Признак того, что значение параметра WB
ymIdinteger · int64Признак того, что значение параметра YM
aliexpressIdinteger · int64Идентификатор значения параметра на Aliexpress
magnitIdinteger · int64Поле magnitId.
detmirIdstringКлюч значения параметра Детского мира
clientIdinteger · int64Поле clientId.
deletedbooleanПоле deleted.
oneCIdstringИдентификатор значения параметра в 1С
dictionarybooleanПоле dictionary.
optionIdOptionПоле optionId.
OzonDescriptionCategory21 полей
idinteger · int64Идентификатор категории на Ozon. Состоит из двух идентификаторов Категории + ID типа на самом Ozon
namestringНазвание категории
ОбязательноpublishedbooleanПоле published.
parentIdinteger · int64Поле parentId.
isLeafbooleanПризнак листовой категории, в которой могут находиться товары
lastSyncDatestring · date-timeДата последней синхронизации категории с Озон
notChangedDaysinteger · int32Количество дней, в течение которых данные категории не менялась. Используется для того, чтобы сократить обновление категорий, которые не меняются
isErrorbooleanПоле isError.
errorDatestring · dateПоле errorDate.
typesstringПоле types.
typeIdinteger · int64Идентификатор типа на Ozon
purchasePercentAvgnumber · doubleСреднее значение процента выкупа. Используется в AI Финдире
purchasePercentMinnumber · doubleМинимально допустимое значение процента выкупа. Используется в AI Финдире
photoAvginteger · int32Среднее кол-во фотографий. Используется в AI Финдире
photoMininteger · int32Минимально допустимое кол-во фотографий. Используется в AI Финдире
drrAvgnumber · doubleСреднее значение ДРР. Используется в AI Финдире
drrMinnumber · doubleМинимально допустимое значение ДРР. Используется в AI Финдире
marginAvgnumber · doubleСреднее значение маржинальности. Используется в AI Финдире
marginMinnumber · doubleМинимально допустимое значение маржинальности. Используется в AI Финдире
promotionCtrAvgnumber · doubleСреднее значение CTR рекламной кампании. Используется в AI Финдире
promotionCtrMinnumber · doubleМинимально допустимое значение CTR рекламной кампании. Используется в AI Финдире
ParamValue14 полей
paramIdinteger · int64Идентификатор параметра
ОбязательноparamNamestringНазвание параметра, для тех, у кого нет ID
optionOptionЗначение перечислимого параметра
doubleValuenumber · doubleЧисловое значение параметра
longValueinteger · int64Целочисленное значение параметра
booleanValuebooleanБулево значение параметра
stringValuestringСтроковое значение параметра
dateValuestring · date-timeЗначение параметра даты
servicestringПривязка к сервису параметра
unitUnitЕдиница измерения для параметра
autobooleanАвтоматически проставленное значение параметра
createdinteger · int64Дата заполнения параметра
userstringПользователь, который заполнил параметр
lockedbooleanЗначение зафиксировано и не должно изменяться при импорте карточек с маркетплейса
PriceType7 полей
idinteger · int64Идентификатор типа цены
codestringКод типа цены
namestringНазвание типа цены
langCodestringКод языка
currencystringВалюта
servicestringСервис
clientIdinteger · int64Идентификатор клиента
Product334 полей
idinteger · int64Идентификатор товара. Проставляется автоматически
productTypestringТип товара
namestringНаименование товара внутреннее
ОбязательноdeletedbooleanПризнак удаления товара
read-onlyprintNamestringНазвание товара для внешних сервисов. Если не задано, проставляется равным наименованию товара
realSizestringРоссийский размер товара для одежды или характеристики для других категорий
vendorSizestringРазмер производителя или характеристики производителя. Не обязательно заполнять
sizestringРазмер для одежды или характеристики для внешних сервисов. Должен быть уникальным в рамках цвета
wildberriesStockCountinteger · int32Остатки товара на Вайлдбериз
read-onlyozonRealFbsbooleanПризнак использования RealFbs для товара
read-onlyozonStockCountinteger · int32Остаток товара на складах Озон
read-onlyozonStockBetweenWarehousesinteger · int32Остаток товара в Озон, которые перемещаются между складами
read-onlyremoveFbsStockbooleanНе выгружать остатки товара на маркетплейсы
noStockSyncbooleanНе синхронизировать остатки: товар полностью исключается из передачи остатков на все маркетплейсы, текущий остаток на МП не изменяется
excludeCalculatedStockFromFbsbooleanНе отправлять рассчитанный остаток комплекта на склады FBS
purchaseCurrencystringВалюта закупочной цены товара
purchasePriceInCurrencynumber · doubleЦена закупки в валюте
deliveryCostInCurrencynumber · doubleЦена на доставку в валюте
versionIdinteger · int64Поле нужно передавать при изменении,для предотвращения одновременной перезаписи
createdDatestring · date-timeДата создания товара на МП
read-onlycreatedstring · date-timeДата создания товара в SelSup
read-onlycreatedUserstringПользователь, который создал товар
read-onlysourceIncomeItemIdinteger · int64Идентификатор товара из заказа поставщика по данным которого был создан товар
sourceProductIdinteger · int64Идентификатор товара, который копировали
fulfillmentJobIdsinteger[]Поле fulfillmentJobIds.
ozonRequiredStockinteger · int32Расчитанное количество товара, для поставки на склад Озон
read-onlywildberriesRequiredStockinteger · int32Расчитанное количество товара, для поставки на склад Wildberries
read-onlywildberriesProfitnumber · doubleПрофит с продажи товара на Вайлдбериз по FBM
read-onlywildberriesProfitFbsnumber · doubleПрофит с продажи товара на Вайлдбериз по FBS
read-onlywildberriesOrderQuantityinteger · int32Количество заказов по FBO товара на Вайлдбериз за 2 недели
read-onlywildberriesSupplyingQuantityinteger · int32Поставляемое количество товара на Вайлдбериз по FBM заказам
read-onlywildberriesQuantityInWayToClientinteger · int32Поставляемое количество товара на Вайлдбериз по FBM заказам к клиенту
read-onlywildberriesQuantityInWayFromClientinteger · int32Поставляемое количество товара на Вайлдбериз по FBM заказам от клиента
read-onlywildberriesSaleQuantityinteger · int32Продажи товара на Вайлдбериз по FBM за 2 недели
read-onlywildberriesQuantityInWayinteger · int32Количество товаров на Вайлдбериз в пути
read-onlywildberriesNoSalebooleanПризнак неликвидного товара на Вайлдбериз
read-onlylastStockChangestring · date-timeДата последнего изменения стока на Вайлдбериз по FBM
read-onlyozonOrderQuantityinteger · int32Количество заказов товара по FBO на Озон по FBM и FBS за 2 недели
read-onlyozonSupplyingQuantityinteger · int32Поставляемое количество товара на Озон по FBM
read-onlyozonProfitinteger · int32Чистая маржа продажи товара на Озон по FBM
read-onlyinstockQuantityinteger · int32Остатки товара на складах клиента
read-onlyinstockQuantityValuenumber · doubleОстатки товара на складах клиента в пользовательской единице измерения
read-onlystockUnitstringЕдиница измерения остатка товара для интерфейса и внешних интеграций
calculatedInStockQuantityinteger · int32Рассчитанный остаток
read-onlycalculatedInStockQuantityValuenumber · doubleРассчитанный остаток в пользовательской единице измерения
read-onlyclientIdinteger · int64Идентификатор клиента
read-onlyorganizationIdinteger · int64Идентификатор организации
ОбязательноproductViewIdinteger · int64Идентификатор цвета
read-onlyviewProductViewИнформация о цвете товара
read-onlysuzIdstringGTIN товара
cisTypestringТип в национальном каталоге
notChangedStockinteger · int32Количество дней, в течении которых не менялся остаток товара
read-onlycardExchangesProductCardExchange[]Последние статусы обмена карточки с маркетплейсами
read-onlywildberriesStatusstringСтатус создания карточки товара в Вайлдбериз
read-onlywildberriesMessagestringОшибка создания карточки товара в Вайлдбериз
read-onlywildberriesMessageParamsstringJSON параметров ошибки создания карточки товара в Вайлдбериз
read-onlynationalCatalogStatusstringСтатус создания карточки товара в Национальном каталоге
read-onlynationalCatalogMessagestringОшибка создания карточки товара в Национальном каталоге
read-onlynationalCatalogMessageParamsstringПараметры ошибки создания карточки товара в Национальном каталоге
read-onlyozonStatusstringСтатус создания карточки товара в Озон
read-onlyozonMessagestringОшибка создания карточки товара в Озон
read-onlyozonMessageParamsstringJSON параметры ошибки создания карточки товара в Озон
read-onlyozonTaskIdinteger · int64Идентификатор задания по обновления или созданию карточки в Озон
read-onlywildberriesFbsOrdersQuantityinteger · int32Кол-во заказанных товаров на данной карточке WB по FBS за 2 недели
read-onlyozonFbsOrdersQuantityinteger · int32Кол-во заказанных товаров на данной карточке на Ozon по FBS за 2 недели
read-onlyymarketFbsOrdersQuantityinteger · int32Кол-во заказанных товаров на данной карточке на Яндекс Маркете по FBS за 2 недели
read-onlytotalSupplyingQuantityinteger · int32Кол-во заказанных товаров на данной карточке за 2 недели
read-onlyskuIdinteger · int64Идентификатор единицы хранения товара на складе. Проставляется автоматически
read-onlyskuSkuПоле sku.
barcodesProductBarcode[]Штрих-коды товара
serviceProductsServiceProduct[]Cвязи с товарами маркетплейсов
siteArticlestringартикул товара на сайте
siteIdstringайди товара на сайте
paramsstringJSON значений параметров для данного размера/характеристик
valuesParamValue[]Значения параметров карточки. Отдаются при запросе модели, если передать params=true
groupobjectГруппа карточек. Используется на списке товаров, чтобы объединить разные размеры в одну строку
read-onlyduplicatesProduct[]Дубликаты карточки по остаткам. Отдаются только на списке товаров, если включена галочка Объединять дубликаты
read-onlyhasChangesbooleanПризнак наличия изменений в товаре и ее нужно обновить при сохранении
ignoreDuplicatebooleanПризнак игнорирования дубликатов при создании
yandexMarketStockCountinteger · int64Остаток товара на складах Yandex.Market
read-onlygroupIdinteger · int64ID групповой карточки
yandexMarketStatusstringСтатус создания карточки товара на яндекс маркет
read-onlyyandexMarketMessagestringСообщение при ошибке создания карточки товара на яндекс маркет
read-onlyyandexMarketMessageParamsstringПараметры сообщения при создании товара в Яндекс.Маркет
read-onlyduplicatebooleanПризнак, что карточка является дубликатом. Отдается не для всех методов
read-onlyozonHasPhotobooleanПризнак наличия фото на Ozon
read-onlyaliexpressStatusstringСтатус создания товара на Aliexpress
read-onlyaliexpressMessagestringСообщение при создании товара на Aliexpress
read-onlyaliexpressMessageParamsstringПараметры сообщения при создании товара на Aliexpress
read-onlymoySkladTypestringТип товара в сервисе Мой Склад
read-onlymoySkladStatusstringСтатус создания карточки товара в МойСклад
read-onlyavitoStatusstringСтатус обьявления на Авито
read-onlymoySkladMessagestringОшибка создания карточки товара в МойСклад
read-onlymoySkladMessageParamsstringПараметры ошибки создания карточки товара в МойСклад
read-onlyremoveFbsStockOzonbooleanНе передавать остатки товара по FBS на озон
removeFbsStockWbbooleanНе передавать остатки товара по FBS на Wildberries
removeFbsStockAlibooleanНе передавать остатки товара по FBS на Aliepress
removeFbsStockYmbooleanНе передавать остатки товара по FBS на Яндекс.Маркет
removeFbsStockSberbooleanНе передавать остатки товара по FBS на СберМегаМаркет
quantityinteger · int32Количество товара в заказах. Возвращается только в методах income/getProductsFromOrders или wms/findStock
read-onlyincomeQuantityinteger · int32Количество товара в закупке без разделения по маркетплейсам
orderMinDatestring · date-timeМинимальная дата заказа. Возвращается только в методах income/getProductsFromOrders
read-onlyexpiredDatestring · date-timeCрок годности товара - возвращается только в методах, wms/findStock
read-onlyproductionDatestring · date-timeДата производства
read-onlystockinteger · int32Остаток товара на определенном складе - возвращается только в методах, wms/fetchStock
read-onlystockValuenumber · doubleОстаток на складе в пользовательской единице измерения
read-onlystocksobjectОстатки товара на складах - возвращается только в методах, wms/fetchStock
read-onlycellCellЯчейка хранения товара на определенном складе - возвращается только в методах, wms/fetchStock
read-onlyreservedinteger · int32Остаток товара на определенном складе - возвращается только в методах, wms/fetchStock
read-onlyreservedValuenumber · doubleРезерв в пользовательской единице измерения
read-onlycalculatedStockinteger · int32Остаток наборов на определенном складе - возвращается только в методах, wms/fetchStock, product/findProduct, supply/findProductForOrder
read-onlycalculatedStockValuenumber · doubleРассчитанный остаток набора в пользовательской единице измерения
read-onlypricenumber · doubleРозничная цена товара
competitorsCompetitor[]Карточки конкурентов с последними собранными ценами
read-onlyaverageCompetitorPricenumber · doubleСредняя последняя цена конкурентов
read-onlycompetitorPriceCurrencystringОбщая валюта цен конкурентов
read-onlyupdatedPricenumber · doubleНовая общая цена товара со скидкой. Только для методов обновления цены
priceWithoutDiscountnumber · doubleРозничная цена товара без учета скидки
updatedPriceWithoutDiscountnumber · doubleИзмененная розничная цена товара без учета скидки. Принимается только в методах обновления цены
updatedDeliveryCostnumber · doubleИзмененные прочие расходы товара Принимается только в методах обновления цены
updatedPurchasePricenumber · doubleИзмененная закупочная цена товара Принимается только в методах обновления цены
purchasePricenumber · doubleЗакупочная цена товара в руб.
isPurchasePriceUpdatedbooleanПризнак, была ли изменена закупочная цена
isDeliveryCostUpdatedbooleanПризнак, изменения прочих расходов на товар.
wholesalePricenumber · doubleОптовая цена товара
deliveryCostnumber · doubleДополнительные расходы на доставку товара в руб. Добавляются к закупочной цене
strategyIdinteger · int64Идентификатор стратегии ценообразования
ozonAverageExpensesnumber · doubleРасходы по продаже товара на Ozon
read-onlywildberriesAverageExpensesnumber · doubleРасходы по продаже товара на Wildberries
read-onlyyandexMarketAverageExpensesnumber · doubleРасходы по продаже товара на ЯМ
read-onlywildberriesSaleinteger · int32Скидка товара на Вайлдбериз
read-onlyminPricenumber · doubleМинимальная цена товара. Ниже этой цены нельзя выставлять цену на товар.Используется для Ozon при участии товара в акциях
ozonPromotionPricenumber · doubleТекущая акционная цена товара на Озон
read-onlyozonAcquiringPercentnumber · doubleМаксимальная комиссия за эквайринг OZON
read-onlyozonComissonnumber · doubleКомиссия товара на Озон FBM
read-onlysberMegaMarketSupplyingQuantityinteger · int32Поставляемое количество товара на СберМегаМаркет по FBM заказам
read-onlyyandexMarketSupplyingQuantityinteger · int32Поставляемое количество товара на Яндекс.Маркет по FBM заказам
read-onlysalesExpensesOnMpPercentnumber · doubleРасходы по продажам на маркетплейсе, %
salesCountCoefficientnumber · doubleКоэффициент пересчета продаж и возвратов в товарной аналитике
measureUnitIdinteger · int32Единица измерения товара (ID единицы измерения)
taxeRatenumber · doubleУстановленый процент налога на товар, %
desiredMarginalityPercentnumber · doubleЖелаемый % маржинальности
desiredProfitRubnumber · doubleЖелаемая прибыль, руб.
additionalCostnumber · doubleДоп. расходы на товар без записи в Финансовую аналитику, руб.
packWidthinteger · int32Ширина в упаковке мм. Имеет больший приоритет, чем значение в модели или категории, отдается на маркетплейсы
packHeightinteger · int32Высота в упаковке мм. Имеет больший приоритет, чем значение в модели или категории, отдается на маркетплейсы
packDepthinteger · int32Длина/глубина в упаковке мм. Имеет больший приоритет, чем значение в модели или категории, отдается на маркетплейсы
packWeightinteger · int32Вес в упаковке гр. Имеет больший приоритет, чем значение в модели или категории, отдается на маркетплейсы
maxLoadWeightinteger · int32Максимально допустимый вес загрузки тары гр. Применяется только для productType=CONTAINER
numOfPiecesInBoxinteger · int32Количество штук в коробе
lastWildberriesSaleDatestring · date-timeДата последней продажи на Wildberries
lastWildberriesOrderDatestring · date-timeДата последнего заказа на Wildberries
lastOzonSaleDatestring · date-timeДата последней продажи на OZON
lastOzonOrderDatestring · date-timeДата последнего заказа на OZON
totalOrdersCountinteger · int32Кол-во заказанных товаров на данной карточке по МП OZON + WB
read-onlytotalFbsOrdersCountinteger · int32Кол-во заказанных товаров на данной карточке по FBS за 2 недели
read-onlywildberriesTotalOrdersCountinteger · int32Кол-во заказанных товаров на данной карточке по МП WB
read-onlyignoreFbsWarehousesstringСписок идентификаторов складов маркетплейсов через запятую - на которые не отправлять остатки по FBS
fbsWarehousesstringСписок идентификаторов складов маркетплейсов через запятую - на которые не отправлять остатки по FBS
minFbsStockinteger · int32Минимальный остаток - если меньше, то ставим 0
maxFbsStockinteger · int32Максимальный остаток - если больше, то ставим его
wildberriesSaleLogisticnumber · doubleЛогистика WB, руб.
wildberriesReturnLogisticnumber · doubleОбратная логистика WB, руб.
wildberriesTotalLogisticsnumber · doubleЛогистика WB итого, руб.
wildberriesWarehouseRationumber · doubleКоэффициент склада WB в %
wildberriesComissionnumber · doubleКомиссия WB, %
ozonSaleLogisticnumber · doubleЛогистика Ozon, руб.
ozonReturnLogisticnumber · doubleОбратная логистика Ozon, руб.
ozonCommissionnumber · doubleКомиссия Ozon, %
maxDeliveryToPickupPointnumber · doubleМаксимальная стоимость доставки до места выдачи, руб.
ozonPurchasePercentnumber · doubleПроцент выкупа Ozon, %
wildberriesPurchasePercentnumber · doubleПроцент выкупа WB, %
minMarginalitynumber · doubleНастройки репрайсера Min % маржинальности
maxMarginalitynumber · doubleНастройки репрайсера Max % маржинальности
minProfitnumber · doubleНастройки репрайсера Min прибыль, руб.
maxProfitnumber · doubleНастройки репрайсера Max прибыль, руб.
minPriceWithDiscountnumber · doubleНастройки репрайсера Min цена со скидкой, руб.
maxPriceWithDiscountnumber · doubleНастройки репрайсера Max цена со скидкой, руб.
oldWildberriesPriceWithDiscountnumber · doubleПри установки через репрайсер скидку, заполняется, после удаление скидки, возвращает как основная цена и значение затирается
oldWildberriesSaleinteger · int32Скидка товара на Вайлдбериз до установки новой по репрайсеру, при возврате нужно проставлять null
wildberriesPromoProfitnumber · doubleРасчетный профит по акциям WB нужен для определения какая акция выгодная
wildberriesMarginalitynumber · doubleРасчетная маржинальность по WB
wildberriesPromoIdinteger · int64Идентификатор акции на ВБ
oldWildberriesPromoSalePercentnumber · doubleРасчетная маржинальность по WB
oldWildberriesPromoPriceWithDiscountnumber · doubleРасчетная маржинальность по WB
endWildberriesPriceWithSppConfignumber · doubleЦена для пользователя конечная с СПП.
ozonFbsCommissionnumber · doubleКомиссия ОЗОН ФБС
ozonFboCommissionnumber · doubleКомиссия ОЗОН ФБО
wbTotalSalesCountinteger · int64Общее кол-во продажи - возвраты, начиная с подсчета процента выкупа по ВБ
ozonTotalSalesCountinteger · int64Общее кол-во продажи - возвраты, начиная с подсчета процента выкупа по OZON
sberTotalSalesCountinteger · int64Общее кол-во продажи - возвраты, начиная с подсчета процента выкупа по SBER
yandexTotalSalesCountinteger · int64Общее кол-во продажи - возвраты, начиная с подсчета процента выкупа по YANDEX
ozonRaitingnumber · doubleРейтинг товара на Ozon
read-onlyozonFeedbackCountinteger · int32Количество отзывов на товар на Ozon
read-onlyozonPriceWithSppnumber · doubleЦена товара на Ozon с учетом СПП, руб.
read-onlyfboStockCountinteger · int64Остаток ФБО по выбранным складам/регионам
fbsStockCountinteger · int64Остаток ФБC для планирования поставок)
stockCoverageDaysinteger · int64На сколько дней хватит текущего остатка ФБО на складе
fboSupplyQuantityinteger · int64Количество поставляемого товара по выбранным складам/регионам
fboSalesinteger · int64Кол-во продаж FBO по складам/регионам для планирования поставок
fbsSalesinteger · int64Кол-во продаж FBS по складам/регионам для планирования поставок
fboOrdersinteger · int64Кол-во заказов FBO по складам/регионам для планирования поставок
fbsOrdersinteger · int64Кол-во заказов FBS по складам/регионам для планирования поставок
recommendPlannumber · doubleКол-во товара для добавления к заказу
baseDeficitinteger · int64Базовый дефицит склада до распределения остатков без склада назначения
allocatedWithoutWarehouseinteger · int64Часть общих остатков без склада назначения, распределенная на склад
skipDaysCountinteger · int32Кол-во пропущенных дней в учёте планирования поставок
organizationShortNamestringПоле organizationShortName.
contractorNamestringПоле contractorName.
supplyPlanBarcodestringПоле supplyPlanBarcode.
planCorrectionFactornumber · doubleКоэффициент коррекции для планирования поставок. На это значение умножается рассчитанное количество товара для поставки
orderBeforeinteger · int32До какого времени должен быть сделан заказ от 1 до 24
daysBeforeSupplyinteger · int32Кол-во дней до поставки. Через сколько дней с момента заказа ориентировочно будет поставка товаров
supplyPlanDaysinteger · int32На сколько дней планировать остаток
warehouseIdForSupplyReportinteger · int64Id склада на который нужно поставить рассчитанные товары. Используется только в планировании поставок
read-onlywarehouseNameForSupplyReportstringНазвание склада на который нужно поставить рассчитанные товары. Используется только в планировании поставок
read-onlywbCanBoxbooleanМожно ли отгружать товар на склад WB в коробах
read-onlywbCanMonopalletbooleanМожно ли отгружать товар на склад WB в монопаллете
read-onlywbCanSupersafebooleanМожно ли отгружать товар на склад WB в Supersafe
read-onlywbCanBoxOnPalletbooleanМожно ли отгружать товар на склад WB в коробах на паллете
read-onlymanagerstringПоле менеджера
cellIdinteger · int32Поле cellId.
drrPercentinteger · int32ДРР% - доля рекламных расходов
percentForParticipationPromoOrAdvertisinginteger · int32Закладываемый % для участия в акциях или рекламе
selsupLinkstringПоле selsupLink.
tempIdinteger · int64Временный id используется для быстрого импорта
categoryCategoryПоле category.
findirTipsobjectСоветы задачника (тип задачи - текст совета)
commissionsstringJSON с комиссиями из разных маркетплейсов
commissionCalculationsobjectРасчёт итоговой комиссии по маркетплейсам
lowStockAlertsstringJSON для уведомлений о заканчивающихся остатках по маркетплейсов
inputVatnumber · doubleВходящий НДС, руб.
outputVatnumber · doubleИсходящий НДС, руб.
finalVatnumber · doubleИтоговый НДС (исходящий - входящий), руб.
incomeTaxnumber · doubleНалог на прибыль, руб.
totalTaxnumber · doubleОбщий налог (НДС + налог на прибыль), руб.
netProfitnumber · doubleЧистая прибыль, руб.
marginnumber · doubleЧистая маржинальность, %
woocomStatusstringСтатус создания карточки товара в WooCommerce
read-onlydateStartSeason1string · dateДата начала сезона 1
dateEndSeason1string · dateДата окончания сезона 1
dateStartSeason2string · dateДата начала сезона 2
dateEndSeason2string · dateДата окончания сезона 2
dateStartSeason3string · dateДата начала сезона 3
dateEndSeason3string · dateДата окончания сезона 3
dateStartSeason4string · dateДата начала сезона 4
dateEndSeason4string · dateДата окончания сезона 4
currentGrossProfitobjectТекущая валовая прибыль. Для таблицы цены
plannedGrossProfitobjectНовая валовая прибыль. Для таблицы цены
positioninteger · int32позиция продукта
emptyBarcodesbooleanПоле emptyBarcodes.
uzumStatusstringСтатус создания карточки товара в Uzum
read-onlymakroStatusstringСтатус создания карточки товара в Makro
read-onlykaspiStatusstringСтатус создания карточки товара в Kaspi
read-onlysitestringПоле site.
anyLinkstringПоле anyLink.
anyArticlestringПоле anyArticle.
shopifyStatusstringСтатус создания карточки товара в Shopify
read-onlytakealotStatusstringСтатус создания карточки товара в Takealot
read-onlyyandexKitStatusstringСтатус создания карточки товара в Яндекс.Кит
read-onlybobShopStatusstringСтатус создания карточки товара в Bob Shop
read-onlyminPriceForAllMarketplacenumber · doubleПоле minPriceForAllMarketplace.
calculatedInstockQuantityinteger · int32Поле calculatedInstockQuantity.
woocomParentIdinteger · int64ID родительского товара в WooCommerce (для вариаций)
woocomPermalinkstringСсылка на товар в WooCommerce
yandexMarketSkuinteger · int64Идентификатор карточки товара на Yandex.Market
read-onlyexternalArticlestringУникальный артикул товара для стороннего сервиса
moySkladLinkIdstringID для ссылки на Мой Склад
read-onlydetmirArticlestringАртикул товара на Детском мире (productCode / SAP)
lamodaArticlestringАртикул товара на Lamoda
magnitArticlestringАртикль товара на Magnit
mvideoArticlestringАртикул товара на M.Video
wildberriesImtIdinteger · int64Используется для категорий, у которых не предусмотрен размер
read-onlyozonProductIdinteger · int64Идентификатор товара Озон в кабинете API
read-onlyleroyMerlinIdstringНомер карточки на Леруа Мерлен
leroyMerlinArticlestringАртикул товара на Леруа Мерлен
yandexMarketShopSkustringSKU товара на Yandex.Market
wildberriesSizeIdinteger · int64Идентификатор размера на Вайлдбериз
read-onlysberMegaMarketIdinteger · int64Карточка СберМегаМаркет
aliexpressSkustringSKU на Aliexpress
uzumProductIdinteger · int64Идентификатор товара (productId) на Uzum
read-onlylamodaParentSkustringРодительский SKU товара на Lamoda
ebayArticlestringАртикул товара на Ebay
ozonIdinteger · int64Идентификатор товара Озон на сайте. SKU в озон
read-onlysberArticlestringАртикул товара на СберМегаМаркет
ozonArticlestringУникальный артикул товара для озон. Offer ID в озон
oneCIdstringИдентификатор товара в 1С
oneCArticlestringУникальный артикул товара для 1c
detmirIdstringId товара на сайте Детского мира (для ссылки на карточку)
simalandIdinteger · int64Уникальный идентификатор товара для Simaland
lamodaSkustringSKU товара на Lamoda
walmartSkustringSKU товара на Walmart
walmartIdstringId товара на Walmart (WPID)
woocomSkustringSKU товара на WooCommerce
woocomIdinteger · int64Id товара на WooCommerce
magnitIdstringId товара на Magnit
magnitSkustringSKU товара на Magnit
opencartSkustringSKU товара в OpenCart
opencartIdinteger · int64Id товара в OpenCart
takealotSkustringSKU товара на Takealot
uzumArticlestringУникальный артикул товара для Uzum
ozonFbsSkuinteger · int64Идентификатор товара в Озон по FBS
read-onlyozonFboSkuinteger · int64Идентификатор товара в Озон по FBO
read-onlyavitoIdinteger · int64ID товара в сервисе Avito
read-onlymoySkladIdstringID товара в сервисе Мой Склад
read-onlysellerSkustringИдентификатор товара на Amazon
uzumSkuIdinteger · int64Идентификатор SKU (skuId) на Uzum
read-onlyyandexMarketProductIdinteger · int64Идентификатор карточки товара на Yandex.Market
read-onlynationalCatalogFeedIdinteger · int64Идентификатор создания карточки в национальном каталоге
read-onlynationalCatalogGoodIdinteger · int64Идентификатор товара в национальном каталоге
read-onlywildberriesPricenumber · doubleТекущая цена товара на Вайлдбериз со скидкой
read-onlywildberriesUpdatedPricenumber · doubleНовая цена товара на Вайлдбериз со скидкой.Только для методов изменения цены
wildberriesPriceWithoutDiscountnumber · doubleТекущая цена товара на Вайлдбериз без скидки
read-onlywildberriesUpdatedPriceWithoutDiscountnumber · doubleНовая цена товара на Вайлдбериз без скидки.Только для методов изменения цены
aliexpressPricenumber · doubleТекущая цена на Aliexpress со скидкой
read-onlyaliexpressPriceWithoutDiscountnumber · doubleТекущая цена на Aliexpress без скидки.
aliexpressUpdatedPricenumber · doubleНовая цена со скидкой на Aliexpress. Только для методов обновления цены
aliexpressUpdatedPriceWithoutDiscountnumber · doubleНовая цена без скидки на Aliexpress. Только для методов обновления цены
ozonPricenumber · doubleТекущая цена товара на Озон со скидкой
read-onlyozonUpdatedPricenumber · doubleНовая цена товара на Озон со скидкой.Только для методов изменения цены
ozonPriceWithoutDiscountnumber · doubleТекущая цена товара на Озон без скидки.
read-onlyozonUpdatedPriceWithoutDiscountnumber · doubleНовая цена Озон без скидки.Только для методов изменения цены
leroyMerlinPricenumber · doubleТекущая цена товара на LeroyMerlin
leroyMerlinUpdatedPricenumber · doubleНовая цена товара на LeroyMerlin.Только для методов изменения цены
avitoPricenumber · doubleТекущая цена товара на Avito
avitoUpdatedPricenumber · doubleНовая цена товара на Avito.Только для методов изменения цены
sberMegaMarketPricenumber · doubleТекущая цена на СберМегаМаркет со скидкой
read-onlysberMegaMarketUpdatedPricenumber · doubleНовая цена со скидкой на СберМегаМаркет. Только для методов изменения цены
yandexMarketPricenumber · doubleТекущая цена на Яндекс.Маркет со скидкой
read-onlyyandexMarketPriceWithoutDiscountnumber · doubleТекущая цена на Яндекс.Маркет без скидки
read-onlyyandexMarketUpdatedPricenumber · doubleНовая цена со скидкой на Яндекс.Маркет. Только для методов изменения цены
yandexMarketUpdatedPriceWithoutDiscountnumber · doubleНовая цена без скидки на Яндекс.Маркет. Только для методов изменения цены
productPricesProductPrice[]Поле productPrices.
stockRulesProductStockRulesПравила отправки остатков на маркетплейсы
ProductBarcode13 полей
idinteger · int64Поле id.
barcodestringПоле barcode.
primaryBarcodebooleanОсновной штрих-код для отображения товара
organizationIdinteger · int64Организация, если client.barcodeUniqForOrg = false, то проставляется 0. Поле включено в уникальный ключ
clientIdinteger · int64Поле clientId.
productIdinteger · int64Поле productId.
useInWildberriesbooleanПрименим ли данный штрих-код для Вайлдбериз
useInOzonbooleanПрименим ли данный штрих-код для Озон
useInYandexMarketbooleanПрименим ли данный штрих-код для Yandex.Market
useInAliexpressbooleanПрименим ли данный штрих-код для Aliexpress
useInSberMegamarketbooleanПрименим ли данный штрих-код для Sber.MegaMarket
useInWoocombooleanПрименим ли данный штрих-код для WooCommerce
formatstringПоле format.
ProductCardExchange6 полей
servicestringСервис
statusstringПоле status.
lastAttemptAtstring · date-timeПоле lastAttemptAt.
errorSourcestringПоле errorSource.
messagestringПоле message.
messageParamsstringПоле messageParams.
ProductImage8 полей
idinteger · int64Идентификатор изображения. Проставляется автоматически.
read-onlyurlstringСсылка на файл изображения
read-onlypositioninteger · int32Позиция изображения. Используется для выдачи по порядку на маркетплейсы и для отображения в интерфейсе
productViewIdinteger · int64Связь с цветом
read-onlywildberriesImgUUIDstringСвязь с идентификатором изображения WB. Сейчас не используется
read-onlyservicesstring[]Поле services.
clientIdinteger · int64Поле clientId.
angleNamestringНазвание ракурса для фотографии
ProductModel70 полей
articlestringУникальный артикул модели
ОбязательноorganizationIdinteger · int64Организация для товара
ОбязательноcategoryCategoryКатегория товара
read-onlycategoryIdinteger · int32Идентификатор категории товара
ОбязательноmanufacturerManufacturerПроизводитель товара
read-onlymanufacturerIdinteger · int32Идентификатор производителя товара
ОбязательноbrandBrandТорговая марка
read-onlybrandIdinteger · int32Идентификатор бренда для товара
Обязательноidinteger · int64Идентификатор модели. Проставляется автоматически
namestringНазвание модели внутренее
promoNamestringНазвание модели для продвижения товара. Используется в качестве названия на Wildberries
titlestringНазвание модели для печати и автоматического формирования названий товаров
wildberriesImtIdinteger · int64Идентификатор карточки товара Wildberries
read-onlydescriptionstringОписание товара
genderstringПол для товара
packWidthinteger · int32Ширина упаковки товара в мм
packHeightinteger · int32Высота упаковки товара в мм
packDepthinteger · int32Глубина упаковки товара в мм
packWeightinteger · int32Вес упаковки товара в гр
seasonstringСезон товара. Используется для фильтрации товара в заказах поставщикам
materialsstringСостав товара, нужен для одежды и обуви
laundrystringПравила ухода за вещами для одежды и обуви. Через запятую необходимо перечислить возможные значения
versionIdinteger · int64Поле нужно передавать при изменении,для предотвращения одновременной перезаписи
clientIdinteger · int64Идентификатор клиента
read-onlydeletedbooleanПризнак удаления модели
read-onlyvatstringНДС
createdDatestring · date-timeДата создания модели
read-onlycreatedUserstringПользователь, создавший модель
read-onlycountryIdinteger · int32Страна производства товара. По умолчанию проставляется из производителя
countryNamestringНазвание страны производства
read-onlykeywordsstringКлючевые слова для поиска
favouritebooleanПометка товара избранным для фильтрации
paramsstringJSON со списком значений параметров для модели
valuesParamValue[]Значения параметров карточки. Отдаются при запросе модели, если передать params=true
sourceModelIdinteger · int64Модель из которой была создана данная модель как дубликат карточки
additionalInfostringДополнительная информация о товаре
createIndexinteger · int32Индекс создания карточки - для ограничения бесплатного тарифа
read-onlybulkbooleanПризнак сборки товара по штрих-кодам, безуникальных кодов
safetyDocumentsNotRequiredbooleanДокументы, подтверждающие безопасность, не требуются
safetyDocumentIdsinteger[]Поле safetyDocumentIds.
safetyDocumentsQualityDocument[]Поле safetyDocuments.
read-onlyoneCIdstringИдентификатор товара в 1С
sitestringАдрес сайта
shelfLifeinteger · int32Срок годности в единице измерения
shelfLifeUnitstringСрок годности в единице измерения
shelfLifeCommentstringКомментарий срока годности
lifeTimeinteger · int32Срок службы в единице измерения
lifeTimeUnitstringСрок службы в единице измерения
lifeTimeCommentstringКомментарий срока службы
modelGuaranteeinteger · int32Гарантийный срок в единице измерения
modelGuaranteeUnitstringЕдиница гарантийного срока
modelGuaranteeCommentstringКомментарий гарантийного срока
hasChangesbooleanПризнак изменения информации о модели и необходимости его обновить
pricenumber · doubleРозничная цена товара. Прибавляется к закупочной цене. Используется только при создании модели из заказа поставщика, в самой моделе не хранится
deliveryCostnumber · doubleСтоимость доставки товара. Прибавляется к закупочной цене. Используется только при создании модели из заказа поставщика, в самой моделе не хранится
wholesalePricenumber · doubleПотовая цена товара. Используется только при создании модели из заказа поставщика, в самой моделе не хранится
purchasePricenumber · doubleЗакупочная цена товара. Используется только при создании модели из заказа поставщика, в самой моделе не хранится
purchaseCurrencystringВалюта закупочной цены товара. Используется только при создании модели из заказа поставщика, в самой моделе не хранится
deliveryCostInCurrencynumber · doubleПрочие расходы в валюте. Используется только при создании модели из заказа поставщика, в самой моделе не хранится
purchasePriceInCurrencynumber · doubleЗакупочная цена товара в валюье. Используется только при создании модели из заказа поставщика, в самой моделе не хранится
priceWithoutDiscountnumber · doubleЦена без скидки. Используется только при создании модели из заказа поставщика, в самой моделе не хранится
viewsProductView[]Список цветов модели
Обязательноservicesstring[]Список сервисов в которых создать карточки товара
contractorsContractor[]Список поставщиков товара
sourceIncomeItemIdinteger · int64Товар из заказа поставщика, из которого была создана модель. Используется только при создании модели из заказа поставщика, в самой моделе не хранится
costPricenumber · doubleСебестоимость считается автоматически по формуле: закупочная цена + дополнительные расходы на товар, поэтому Вам нужно заполнить эти параметры или просто закупочную цену
aliexpressGroupIdstringИдентификатор группы по которому можно посмотерть статус создания/обновления
read-onlyaliexpressIdstringКарточка aliexpress
read-onlysimpleImportbooleanПоказатель что карточка создана с помощью быстрого импорта
selectedProductsinteger[]Используется при обновлении модели для выборочной отправки на МП
ProductPrice17 полей
idinteger · int64Идентификатор записи цены
productIdinteger · int64Идентификатор товара
productobjectТовар
priceTypeIdinteger · int64Идентификатор типа цены
priceTypePriceTypeТип цены
servicestringСервис
clientIdinteger · int64Идентификатор клиента
pricenumber · doubleЦена
updatedPricenumber · doubleОбновленная цена
priceWithoutDiscountnumber · doubleЦена без скидки
updatedPriceWithoutDiscountnumber · doubleОбновленная цена без скидки
minPricenumber · doubleМинимальная цена
updatedMinPricenumber · doubleОбновленная минимальная цена
percentForParticipationPromoOrAdvertisinginteger · int32Процент расходов на участие в акциях или рекламе
isActivebooleanАктивна ли цена
articlestringУникальный идентификатор товара на маркетплейсе
pendingOperationIdstringИдентификатор асинхронной операции обновления цены (Детский мир)
ProductStock8 полей
stockinteger · int32Поле stock.
stockValuenumber · doubleПоле stockValue.
cellCellПоле cell.
reservedinteger · int32Поле reserved.
reservedValuenumber · doubleПоле reservedValue.
calculatedStockinteger · int32Поле calculatedStock.
calculatedStockValuenumber · doubleПоле calculatedStockValue.
expiredDatestring · date-timeПоле expiredDate.
ProductStockRules4 полей
minFbsStockinteger · int32Минимальный остаток - если меньше, то ставим 0
maxFbsStockinteger · int32Максимальный остаток - если больше, то ставим его
subtractFromStockinteger · int32Вычитаемое значение из остатка перед отправкой на маркетплейс
distributionRulesStockDistributionRule[]Null inherits account rules; an empty list disables distribution for the product
ProductVideo7 полей
idinteger · int64Идентификатор Видео. Проставляется автоматически.
read-onlyurlstringСсылка на файл
read-onlypositioninteger · int32Позиция видео. Используется для выдачи по порядку на маркетплейсы и для отображения в интерфейсе
productViewIdinteger · int64Связь с цветом
read-onlyproductIdinteger · int64Связь с размером
read-onlyvideoUrlsstringСсылка на видео
read-onlyservicesstring[]Поле services.
ProductView38 полей
colorstringАртикул цвета
wbArticlestringАртикул карточки Wildberries
needKizbooleanТребуется ли обязательная маркировка по данным Wildberries
idinteger · int64Идентификатор цвета. Проставляется автоматически
imagesProductImage[]Список изображений товара
videosProductVideo[]Список видео товара
productModelIdinteger · int64Идентификатор модели
read-onlymodelProductModelМодель, к которой относится цвет
read-onlyactualbooleanАктуальность цвета - нужно ли его показывать в заказах поставщикам
mainImageProductImageОсновное изображение товара
read-onlymainImageIdinteger · int64Поле mainImageId.
mainImageUrlstringСсылка на основное изображение на маркетплейсе
read-onlyimageUrlsstringСсылка на изображения
read-onlyimagesUpdatedAtstring · date-timeДата/время последнего изменения фотографий
read-onlyimage360UrlsstringСсылка на изображения 360
read-onlywildberriesIdinteger · int64Числовой идентификатор номенклатуры Wildberries, nmId
createdDatestring · date-timeДата создания цвета
read-onlycreatedUserstringПользователь, создавший цвет
read-onlyversionIdinteger · int64Поле нужно передавать при изменении,для предотвращения одновременной перезаписи
clientIdinteger · int64Идентификатор клиента
read-onlydeletedbooleanПризнак удаления цвета
read-onlykeywordsstringКлючевые слова - сейчас не используется, перенесены в модель
wildberriesRatingnumber · doubleРейтинг карточки на Вайлдбериз
read-onlywildberriesFeedbacksinteger · int32Количество отзывов на карточке на Вайлдбериз
read-onlywbRaitingnumber · doubleРейтинг карточки на Вайлдбериз
read-onlywbFeedbackCountinteger · int32Количество отзывов на карточке на Вайлдбериз
read-onlywbPriceWithSppnumber · doubleЦена карточки на Вайлдбериз с учетом СПП, руб.
read-onlywildberriesCardDoesNotOpenbooleanПризнак, что карточка не открывается на Вайлдбериз
read-onlywildberriesHasPhotobooleanПризнак наличия фото на Wildberries
read-onlyorganizationIdinteger · int64Организация карточки
read-onlyparamsstringJSON со значениями параметров цвета
additionalInfostringДополнительная информация для цвета
valuesParamValue[]Значения параметров карточки. Отдаются при запросе модели, если передать params=true
viewSourceIdinteger · int64Оригинал цвета по SKU
read-onlysizesProduct[]Список размеров для цвета
ОбязательноhasChangesbooleanПризнак изменения информации о цвете и необходимости его обновить
viewWbArticleProductViewПоле viewWbArticle.
viewVersionIdinteger · int64Поле viewVersionId.
QualityDocument13 полей
idinteger · int64Поле id.
namestringПоле name.
typestringТип документа
numberstringНомер сертификата
numberNormalizedstringНормализованный номер сертификата, используется для поиска дублей
clientIdinteger · int64Поле clientId.
versionIdinteger · int64Поле versionId.
createdUserstringПоле createdUser.
startDatestring · dateДата начала действия сертификата
expireDatestring · dateДата окончания срока действия сертификата
indefinitebooleanПоле indefinite.
dataQualityDocumentData[]Связи сертификата с брендом и категорией
imagesQualityDocumentImage[]Изображения сертификата
QualityDocumentData8 полей
idinteger · int64Поле id.
documentIdinteger · int64Сертификат
productModelIdinteger · int64Связь сертификата с продуктом
brandBrandСвязь сертификата с брендом
brandIdinteger · int32Поле brandId.
categoryCategoryСвязь категории с сертификатом
categoryIdinteger · int32Поле categoryId.
clientIdinteger · int64Поле clientId.
QualityDocumentImage5 полей
idinteger · int64Поле id.
urlstringПоле url.
positioninteger · int32Поле position.
documentIdinteger · int64Поле documentId.
clientIdinteger · int64Поле clientId.
ServiceCategoryMapping3 полей
servicestringСервис
externalIdstringПоле externalId.
namestringПоле name.
ServiceProduct20 полей
serviceProductIdinteger · int64Идентификатор продукта сервиса
productIdinteger · int64Идентификатор продукта
serviceIdinteger · int32Идентификатор сервиса
serviceListingIdinteger · int64Идентификатор листинга на сервисе
serviceCardIdinteger · int64Поле serviceCardId.
fboStockinteger · int32Остаток на ФБО складах
lastRepricerPriceStatusstringПоследний статус обновления цены через репрайсер
errorMessagestringОшибка при установки цены через репрайсер
serviceCardstringИдентификатор карточки на сервисе
serviceCardProductstringИдентификатор товара на сервисе
serviceCardUrlstringСсылка на карточку на сервисе (если несколько товаров отображаются)
serviceProductUrlstringСсылка на товар селлера на сервисе
serviceBarcodestringШтрих код на сервисе
fboCommissionsnumber · doubleКомиссия ФБО
fbsCommissionsnumber · doubleКомиссия ФБС
purchasePercentnumber · doubleПроцент выкупа
serviceArticlestringАртикул на сервисе
clientIdinteger · int64Идентификатор клиента
organizationIdinteger · int64Идентификатор организации
fieldsToClearstring[]Поля связи, которые нужно очистить при обновлении
Sku3 полей
idinteger · int64Поле id.
productProductПервый товар из которого был создан SKU
productIdinteger · int64Поле productId.
StockDistributionRule6 полей
servicestringСервис
organizationIdinteger · int64Поле organizationId.
serviceWarehouseIdinteger · int64SelSup service warehouse link ID, not the external warehouse ID
stockAboveinteger · int32Exclusive lower stock threshold
stockBelowinteger · int32Exclusive upper stock threshold
multipliernumberStock share from 0 to 1, rounded down; 0 sends zero stock
StorageZone7 полей
idinteger · int64Поле id.
warehouseIdinteger · int64Поле warehouseId.
clientIdinteger · int64Поле clientId.
namestringПоле name.
cellIdsinteger[]Поле cellIds.
productIdsinteger[]Поле productIds.
productsProduct[]Поле products.
Tnved14 полей
idinteger · int64Идентификатор кода ТНВЭД без нулей в начале
namestringНазвание кода ТНВЭД
deletedbooleanПоле deleted.
typestringТип
categoryClassstringИнформационное поле, чтобы автоматически заполнять значение в категории,при выборе ТНВЭД, но никогда не используется в документах
parentIdinteger · int64Родительский ТНВЭД
keywordsstringКлючевые слова для кода ТНВЭД
descriptionstringОписание кода ТНВЭД
paramsTnvedIdinteger · int64Идентификатор категории национального каталога (cat_id)
isInParambooleanОзначает что ТНВЭД есть в параметре Вайлдбериз - их нужно выбирать в приоритете
certificationstringНеобходимость сертификации товаров с этим ТНВЭД
codestringПоле code.
parentCodestringПоле parentCode.
certificationRequiredbooleanПоле certificationRequired.
Unit3 полей
namestringНазвание единицы измерения
measureIdinteger · int32Мера параметра
idinteger · int32Поле id.
WildberriesType32 полей
idinteger · int64Поле id.
namestringНазвание
publishedbooleanОпубликованность предмета Вайлдбериз
hasSizebooleanАтрибут, указывающий наличие размера
monoBoxMinQuantityinteger · int32Поле monoBoxMinQuantity.
monoTypestringПоле monoType.
monoMinPriceinteger · int32Поле monoMinPrice.
hasParentbooleanПоле hasParent.
parentIdinteger · int64Поле parentId.
wildberriesIdinteger · int64Идентификатор предмета на Вайлдбериз
lastSyncDatestring · date-timeДата последней синхронизации предмета с Вайлдбериз
notChangedDaysinteger · int32Количество дней, в течение которых данные категории не менялась. Используется для того, чтобы сократить обновление категорий, которые не меняются
commissionnumber · doubleКомиссия для товаров данного предмета в Вайлдбериз по FBM
fbsCommissionnumber · doubleКомиссия для товаров данного предмета в Вайлдбериз по FBS
fbwCommissionnumber · doubleКомиссия по тарифу FBW
dbsCommissionnumber · doubleКомиссия по тарифу DBS
edbsCommissionnumber · doubleКомиссия по тарифу EDBS
cAndCCommissionnumber · doubleКомиссия по тарифу C&C
bookingCommissionnumber · doubleКомиссия за бронирование
logisticPriceinteger · int32Стоимость доставки товара к клиенту на Вайлдбериз
storagePricenumber · doubleСтоимость хранения товара на складе Вайлдбериз за штуку в день
acceptancePricenumber · doubleСтоимость приемки товара на складе Вайлдбериз за штуку
needDimensionsbooleanАтрибут обязательности габаритов товара, тк стоимость хранения рассчитывается на основе габаритов
purchasePercentAvgnumber · doubleСреднее значение процента выкупа. Используется в AI Финдире
purchasePercentMinnumber · doubleМинимально допустимое значение процента выкупа. Используется в AI Финдире
photoAvginteger · int32Среднее кол-во фотографий. Используется в AI Финдире
photoMininteger · int32Минимально допустимое кол-во фотографий. Используется в AI Финдире
drrAvgnumber · doubleСреднее значение ДРР. Используется в AI Финдире
drrMinnumber · doubleМинимально допустимое значение ДПП. Используется в AI Финдире
marginAvgnumber · doubleСреднее значение маржинальности. Используется в AI Финдире
marginMinnumber · doubleМинимально допустимое значение маржинальности. Используется в AI Финдире
candCCommissionnumber · doubleПоле candCCommission.
YandexMarketCategory7 полей
idinteger · int64Поле id.
namestringНазвание категории
ОбязательноpublishedbooleanПоле published.
parentIdinteger · int64Поле parentId.
isLeafbooleanПризнак листовой категории, в которой могут находиться товары
lastSyncDatestring · date-timeДата последней синхронизации категории с Озон
notChangedDaysinteger · int32Количество дней, в течение которых данные категории не менялась. Используется для того, чтобы сократить обновление категорий, которые не меняются
CellFilter5 полей
cellIdinteger · int32Поле cellId.
shelfIdinteger · int32Поле shelfId.
rackIdinteger · int32Поле rackId.
passageIdinteger · int32Поле passageId.
warehouseIdinteger · int64Поле warehouseId.
ImportResult2 полей
createdinteger · int32Поле created.
updatedinteger · int32Поле updated.
CellOccupancy13 полей
cellIdinteger · int32Идентификатор ячейки
fullNamestringПолное название ячейки из названий прохода, стеллажа, полки и ячейки
sortNamestringНазвание для сортировки ячейки
passageIdinteger · int32Проход, к которому относится ячейка
rackIdinteger · int32Стеллаж, к которому относится ячейка
shelfIdinteger · int32Полка, к которой относится ячейка
typestringТип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов
cellVolumenumber · doubleОбъём ячейки в кубических метрах. Не заполнен, если у ячейки не заданы габариты
usedVolumenumber · doubleЗанятый товарами объём ячейки в кубических метрах. Не заполнен, если у ячейки не заданы габариты
fillPercentinteger · int32Процент заполнения ячейки от 0 до 100. Не заполнен, если у ячейки не заданы габариты
productsCountinteger · int32Количество разных товаров в ячейке
unitsCountinteger · int32Общее количество единиц товара в ячейке
incompleteProductDatabooleanПризнак того, что у части товаров в ячейке не заданы габариты упаковки, поэтому занятый объём занижен
WarehouseOccupancy11 полей
warehouseIdinteger · int64Склад, по которому построен отчёт
totalVolumenumber · doubleСуммарный объём ячеек в кубических метрах. Учитываются только ячейки с заданными габаритами
usedVolumenumber · doubleСуммарный занятый товарами объём в кубических метрах. Учитываются только ячейки с заданными габаритами
freeVolumenumber · doubleСвободный объём в кубических метрах
fillPercentinteger · int32Процент заполнения склада от 0 до 100
cellsTotalinteger · int32Общее количество ячеек в отчёте
cellsOccupiedinteger · int32Количество ячеек, в которых лежит товар
cellsFreeinteger · int32Количество пустых ячеек
cellsWithoutDimensionsinteger · int32Количество ячеек без заданных габаритов. Такие ячейки не участвуют в расчёте объёма
cellsWithIncompleteProductDatainteger · int32Количество ячеек, в которых у части товаров не заданы габариты упаковки
cellsCellOccupancy[]Заполненность каждой ячейки
Coordinates2 полей
latitudenumber · doubleПоле latitude.
longitudenumber · doubleПоле longitude.
OzonFboWarehouse5 полей
addressstringПоле address.
namestringПоле name.
coordinatesCoordinatesПоле coordinates.
warehouse_idinteger · int64Поле warehouse_id.
warehouse_typestringПоле warehouse_type.
MarketplaceFboWarehouseOption3 полей
idinteger · int64Поле id.
namestringПоле name.
addressstringПоле address.
WarehouseOfService2 полей
idobjectИдентификатор склада
namestringНазвание склада
WarehouseBalancesWithPrices11 полей
warehouseIdinteger · int64Поле warehouseId.
quantityinteger · int32Поле quantity.
distinctQuantityinteger · int64Поле distinctQuantity.
purchasePricenumber · doubleПоле purchasePrice.
additionalExpensesAmountnumber · doubleПоле additionalExpensesAmount.
wildberriesRetailPricenumber · doubleПоле wildberriesRetailPrice.
ozonRetailPricenumber · doubleПоле ozonRetailPrice.
yandexMarketRetailPricenumber · doubleПоле yandexMarketRetailPrice.
aliexpressRetailPricenumber · doubleПоле aliexpressRetailPrice.
sberMegaMarketRetailPricenumber · doubleПоле sberMegaMarketRetailPrice.
retailPriceByMarketplacenumber · doubleПоле retailPriceByMarketplace.
Ошибки
Обработка ошибок
При ошибке API возвращает её код в поле error и сообщение на языке пользователя в localMessage. Проверяйте код error в программе, а localMessage показывайте пользователю.
errorКод ошибки для обработки в программе.
localMessageСообщение на языке пользователя, которому принадлежит токен.
paramsЗначения, которые сервер подставил в сообщение об ошибке.
Язык localMessage определяется полем lang пользователя, которому принадлежит API-токен. Язык страницы документации и заголовок Accept-Language его не переключают; если язык пользователя не указан, используется русский.
{
"error": "error_brand_already_exists",
"localMessage": "Brand Base already exists",
"params": {
"name": "Base"
}
}Методы
Методы
Получить склад со списком проходов
/api/warehouse/{warehouseId}Возвращает склад клиента по идентификатору со списком проходов
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
warehouseId |
integer · int64 | Да | Поле warehouseId. |
curl --request GET 'https://api.selsup.ru/api/warehouse/1001' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/1001', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/1001', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/1001',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/1001", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Warehouse
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Название склада | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Маркетплейс к которому относится склад или null если склад клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationId |
integer · int64 | Нет | Организация склада для реквизитов в накладных и тп | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationIds |
integer[] | Нет | Все организации склада, первая из них основная и совпадает с organizationId | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fboOrganizationId |
integer · int64 | Нет | Организация, к которой относится данный склад (FBO) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCellId |
integer · int32 | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCell |
Cell | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
refundCellIdorganization
Поля объекта
Organization
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор организации. Проставляется автоматически | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Да | Полное наименование организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
shortName |
string | Нет | Поле shortName. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxType |
stringYSN, YSN_CONSUMPTION, AUSN, AUSN_CONSUMPTION, OSNO, SELF_EMPLOYED, YSN_GENERAL | Нет | Система налогооблажения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxRate |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxNds |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inputTaxNds |
integer · int32 | Нет | Ставка входящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
outputTaxNds |
integer · int32 | Нет | Ставка исходящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enableNewTaxCalculation |
boolean | Нет | Включить расчет налогов по новым правилам | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
useNdsCostPrice |
boolean | Нет | Учитывать входящий НДС в себестоимости | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inn |
string | Да | ИНН | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
kpp |
string | Нет | КПП. Проставляется только для ООО | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bank |
string | Нет | Название банка | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bik |
string | Нет | БИК счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
corrBill |
string | Нет | Номер корреспондентского счета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
billNumber |
string | Нет | Номер счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampPath |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampUrl |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampSize |
integer · int32 | Нет | Размер в байтах изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampWidth |
integer · int32 | Нет | Ширина изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampHeight |
integer · int32 | Нет | Высота изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampFileName |
string | Нет | Имя исходного файла печати | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signaturePath |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureUrl |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureFileName |
string | Нет | Имя исходного файла подписи | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerName |
string | Нет | ФИО подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerPosition |
string | Нет | Должность подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureSize |
integer · int32 | Нет | Размер файла в байтах подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureWidth |
integer · int32 | Нет | Ширина изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureHeight |
integer · int32 | Нет | Высота изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ipPerson |
Person | Нет | Руководитель организации или ИП | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
personId |
integer · int64 | Нет | Поле personId. |
firstName |
string | Да | Имя сотрудника |
lastName |
string | Да | Фамилия сотрудника |
surName |
string | Нет | Отчество сотрудника |
clientId |
integer · int64 | Нет | Идентификатор клиента |
position |
PersonPosition | Да | Должность сотрудника |
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи |
createdUser |
string | Нет | Проставляется автоматически. Пользователь создавший сотрудника |
createdDate |
string · date-time | Нет | Проставляется автоматически. Дата создания сотрудника |
deleted |
boolean | Нет | Признак удаления сотрудника |
userId |
integer · int32 | Нет | Связь сотрудника с пользователем |
hasChanges |
boolean | Нет | Поле hasChanges. |
fullName |
string | Нет | Полные ФИО |
shortName |
string | Нет | Фамилия и инициалы |
formipclientIdaddress
Поля объекта
Address
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
postCode |
string | Нет | Поле postCode. |
country |
Country | Нет | Поле country. |
region |
Region | Нет | Поле region. |
regionId |
integer · int32 | Нет | Поле regionId. |
street |
string | Нет | Поле street. |
house |
string | Нет | Поле house. |
district |
string | Нет | Поле district. |
city |
string | Нет | Поле city. |
locality |
string | Нет | Поле locality. |
building |
string | Нет | Поле building. |
flat |
string | Нет | Поле flat. |
short |
string | Нет | Поле short. |
addressId |
Address | Нет | Поле addressId. |
full |
string | Нет | Поле full. |
phoneNumberaddressFullsamplepriorityuseForOrderclientIdexternalNamenotSyncStocksignoreOrderspassages
Структура элемента массива
Passage
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||
racks |
Rack[] | Нет | Стелажи этого прохода | ||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
name |
string | Нет | Поле name. |
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
passageId |
integer · int32 | Нет | Поле passageId. |
deleted |
boolean | Нет | Поле deleted. |
clientId |
integer · int64 | Нет | Поле clientId. |
shelves |
Shelf[] | Нет | Поле shelves. |
warehouseServices
Структура элемента массива
ServiceWarehouse
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Проставляется автоматически при создании |
name |
string | Да | Название внешнего склада, можно подставлять ID |
externalId |
string | Да | Идентификатор склада во внешней системе для связи остатков |
warehouseId |
integer · int64 | Да | Склад SelSup |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис для которого устанавливается связь |
organizationId |
integer · int64 | Да | Организация SelSup |
serviceOrganizationId |
integer · int64 | Нет | Идентификатор организации во внешней системе |
deliveriesdeletedcaptiondurationHoursreservationDaysscheduleurAddresscitylongitudelatitudewarehouseServiceIdwarehouseTypedescriptioninnkppplaceOfBusinessFiasIdpaymentAccounttelephoneregionNameregion
Поля объекта
Region
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
regionId |
integer · int32 | Нет | Поле regionId. | ||||||||||||||||||||
countryId |
integer · int32 | Нет | Поле countryId. | ||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||
regionSynonyms |
RegionSynonym[] | Нет | Поле regionSynonyms. | ||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
regionId |
integer · int64 | Нет | Поле regionId. |
synonym |
string | Нет | Поле synonym. |
service |
string | Нет | Поле service. |
regionIdisPrepayOnlineisCashisCardisGoodsActiveorgIdaddress{
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}Ошибки7
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cell_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_not_found; localMessage содержит приведённый выше перевод.
error_fulfillment_client_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_fulfillment_client_access_denied; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_warehouse_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_warehouse_not_found; localMessage содержит приведённый выше перевод.
Изменить склад
/api/warehouse/{warehouseId}Редактирует склад клиента
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
warehouseId |
integer · int64 | Да | Поле warehouseId. |
Тело запроса
application/jsonПоля объектаWarehouse
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Название склада | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Маркетплейс к которому относится склад или null если склад клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationId |
integer · int64 | Нет | Организация склада для реквизитов в накладных и тп | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationIds |
integer[] | Нет | Все организации склада, первая из них основная и совпадает с organizationId | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fboOrganizationId |
integer · int64 | Нет | Организация, к которой относится данный склад (FBO) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCellId |
integer · int32 | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCell |
Cell | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
refundCellIdorganization
Поля объекта
Organization
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор организации. Проставляется автоматически | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Да | Полное наименование организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
shortName |
string | Нет | Поле shortName. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxType |
stringYSN, YSN_CONSUMPTION, AUSN, AUSN_CONSUMPTION, OSNO, SELF_EMPLOYED, YSN_GENERAL | Нет | Система налогооблажения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxRate |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxNds |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inputTaxNds |
integer · int32 | Нет | Ставка входящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
outputTaxNds |
integer · int32 | Нет | Ставка исходящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enableNewTaxCalculation |
boolean | Нет | Включить расчет налогов по новым правилам | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
useNdsCostPrice |
boolean | Нет | Учитывать входящий НДС в себестоимости | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inn |
string | Да | ИНН | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
kpp |
string | Нет | КПП. Проставляется только для ООО | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bank |
string | Нет | Название банка | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bik |
string | Нет | БИК счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
corrBill |
string | Нет | Номер корреспондентского счета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
billNumber |
string | Нет | Номер счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampPath |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampUrl |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampSize |
integer · int32 | Нет | Размер в байтах изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampWidth |
integer · int32 | Нет | Ширина изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampHeight |
integer · int32 | Нет | Высота изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampFileName |
string | Нет | Имя исходного файла печати | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signaturePath |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureUrl |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureFileName |
string | Нет | Имя исходного файла подписи | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerName |
string | Нет | ФИО подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerPosition |
string | Нет | Должность подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureSize |
integer · int32 | Нет | Размер файла в байтах подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureWidth |
integer · int32 | Нет | Ширина изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureHeight |
integer · int32 | Нет | Высота изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ipPerson |
Person | Нет | Руководитель организации или ИП | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
personId |
integer · int64 | Нет | Поле personId. |
firstName |
string | Да | Имя сотрудника |
lastName |
string | Да | Фамилия сотрудника |
surName |
string | Нет | Отчество сотрудника |
clientId |
integer · int64 | Нет | Идентификатор клиента |
position |
PersonPosition | Да | Должность сотрудника |
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи |
createdUser |
string | Нет | Проставляется автоматически. Пользователь создавший сотрудника |
createdDate |
string · date-time | Нет | Проставляется автоматически. Дата создания сотрудника |
deleted |
boolean | Нет | Признак удаления сотрудника |
userId |
integer · int32 | Нет | Связь сотрудника с пользователем |
hasChanges |
boolean | Нет | Поле hasChanges. |
fullName |
string | Нет | Полные ФИО |
shortName |
string | Нет | Фамилия и инициалы |
formipclientIdaddress
Поля объекта
Address
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
postCode |
string | Нет | Поле postCode. |
country |
Country | Нет | Поле country. |
region |
Region | Нет | Поле region. |
regionId |
integer · int32 | Нет | Поле regionId. |
street |
string | Нет | Поле street. |
house |
string | Нет | Поле house. |
district |
string | Нет | Поле district. |
city |
string | Нет | Поле city. |
locality |
string | Нет | Поле locality. |
building |
string | Нет | Поле building. |
flat |
string | Нет | Поле flat. |
short |
string | Нет | Поле short. |
addressId |
Address | Нет | Поле addressId. |
full |
string | Нет | Поле full. |
phoneNumberaddressFullsamplepriorityuseForOrderclientIdexternalNamenotSyncStocksignoreOrderspassages
Структура элемента массива
Passage
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||
racks |
Rack[] | Нет | Стелажи этого прохода | ||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
name |
string | Нет | Поле name. |
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
passageId |
integer · int32 | Нет | Поле passageId. |
deleted |
boolean | Нет | Поле deleted. |
clientId |
integer · int64 | Нет | Поле clientId. |
shelves |
Shelf[] | Нет | Поле shelves. |
warehouseServices
Структура элемента массива
ServiceWarehouse
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Проставляется автоматически при создании |
name |
string | Да | Название внешнего склада, можно подставлять ID |
externalId |
string | Да | Идентификатор склада во внешней системе для связи остатков |
warehouseId |
integer · int64 | Да | Склад SelSup |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис для которого устанавливается связь |
organizationId |
integer · int64 | Да | Организация SelSup |
serviceOrganizationId |
integer · int64 | Нет | Идентификатор организации во внешней системе |
deliveriesdeletedcaptiondurationHoursreservationDaysscheduleurAddresscitylongitudelatitudewarehouseServiceIdwarehouseTypedescriptioninnkppplaceOfBusinessFiasIdpaymentAccounttelephoneregionNameregion
Поля объекта
Region
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
regionId |
integer · int32 | Нет | Поле regionId. | ||||||||||||||||||||
countryId |
integer · int32 | Нет | Поле countryId. | ||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||
regionSynonyms |
RegionSynonym[] | Нет | Поле regionSynonyms. | ||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
regionId |
integer · int64 | Нет | Поле regionId. |
synonym |
string | Нет | Поле synonym. |
service |
string | Нет | Поле service. |
regionIdisPrepayOnlineisCashisCardisGoodsActiveorgIdaddresscurl --request PUT 'https://api.selsup.ru/api/warehouse/1001' \
--header 'Authorization: YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}'
const response = await fetch('https://api.selsup.ru/api/warehouse/1001', {
method: 'PUT',
headers: {
Authorization: process.env.SELSUP_API_TOKEN,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}),
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/1001', {
method: 'PUT',
headers: {
Authorization: process.env.SELSUP_API_TOKEN!,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}),
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.put(
'https://api.selsup.ru/api/warehouse/1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
json={
'id': 1001,
'name': 'Example',
'service': 'NONE',
'organizationId': 1001,
'organizationIds': 'string',
'fboOrganizationId': 1001
},
)
response.raise_for_status()
result = response.json()
<?php
$payload = <<<'JSON'
{
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}
JSON;
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/1001',
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN'), 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
)
func main() {
req, err := http.NewRequest("PUT", "https://api.selsup.ru/api/warehouse/1001", strings.NewReader(`{
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}`))
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
req.Header.Set("Content-Type", "application/json")
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.header("Content-Type", "application/json")
.method("PUT", HttpRequest.BodyPublishers.ofString("""
{
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}
"""))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Warehouse
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Название склада | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Маркетплейс к которому относится склад или null если склад клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationId |
integer · int64 | Нет | Организация склада для реквизитов в накладных и тп | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationIds |
integer[] | Нет | Все организации склада, первая из них основная и совпадает с organizationId | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fboOrganizationId |
integer · int64 | Нет | Организация, к которой относится данный склад (FBO) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCellId |
integer · int32 | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCell |
Cell | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
refundCellIdorganization
Поля объекта
Organization
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор организации. Проставляется автоматически | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Да | Полное наименование организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
shortName |
string | Нет | Поле shortName. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxType |
stringYSN, YSN_CONSUMPTION, AUSN, AUSN_CONSUMPTION, OSNO, SELF_EMPLOYED, YSN_GENERAL | Нет | Система налогооблажения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxRate |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxNds |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inputTaxNds |
integer · int32 | Нет | Ставка входящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
outputTaxNds |
integer · int32 | Нет | Ставка исходящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enableNewTaxCalculation |
boolean | Нет | Включить расчет налогов по новым правилам | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
useNdsCostPrice |
boolean | Нет | Учитывать входящий НДС в себестоимости | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inn |
string | Да | ИНН | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
kpp |
string | Нет | КПП. Проставляется только для ООО | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bank |
string | Нет | Название банка | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bik |
string | Нет | БИК счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
corrBill |
string | Нет | Номер корреспондентского счета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
billNumber |
string | Нет | Номер счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampPath |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampUrl |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampSize |
integer · int32 | Нет | Размер в байтах изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampWidth |
integer · int32 | Нет | Ширина изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampHeight |
integer · int32 | Нет | Высота изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampFileName |
string | Нет | Имя исходного файла печати | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signaturePath |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureUrl |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureFileName |
string | Нет | Имя исходного файла подписи | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerName |
string | Нет | ФИО подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerPosition |
string | Нет | Должность подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureSize |
integer · int32 | Нет | Размер файла в байтах подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureWidth |
integer · int32 | Нет | Ширина изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureHeight |
integer · int32 | Нет | Высота изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ipPerson |
Person | Нет | Руководитель организации или ИП | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
personId |
integer · int64 | Нет | Поле personId. |
firstName |
string | Да | Имя сотрудника |
lastName |
string | Да | Фамилия сотрудника |
surName |
string | Нет | Отчество сотрудника |
clientId |
integer · int64 | Нет | Идентификатор клиента |
position |
PersonPosition | Да | Должность сотрудника |
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи |
createdUser |
string | Нет | Проставляется автоматически. Пользователь создавший сотрудника |
createdDate |
string · date-time | Нет | Проставляется автоматически. Дата создания сотрудника |
deleted |
boolean | Нет | Признак удаления сотрудника |
userId |
integer · int32 | Нет | Связь сотрудника с пользователем |
hasChanges |
boolean | Нет | Поле hasChanges. |
fullName |
string | Нет | Полные ФИО |
shortName |
string | Нет | Фамилия и инициалы |
formipclientIdaddress
Поля объекта
Address
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
postCode |
string | Нет | Поле postCode. |
country |
Country | Нет | Поле country. |
region |
Region | Нет | Поле region. |
regionId |
integer · int32 | Нет | Поле regionId. |
street |
string | Нет | Поле street. |
house |
string | Нет | Поле house. |
district |
string | Нет | Поле district. |
city |
string | Нет | Поле city. |
locality |
string | Нет | Поле locality. |
building |
string | Нет | Поле building. |
flat |
string | Нет | Поле flat. |
short |
string | Нет | Поле short. |
addressId |
Address | Нет | Поле addressId. |
full |
string | Нет | Поле full. |
phoneNumberaddressFullsamplepriorityuseForOrderclientIdexternalNamenotSyncStocksignoreOrderspassages
Структура элемента массива
Passage
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||
racks |
Rack[] | Нет | Стелажи этого прохода | ||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
name |
string | Нет | Поле name. |
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
passageId |
integer · int32 | Нет | Поле passageId. |
deleted |
boolean | Нет | Поле deleted. |
clientId |
integer · int64 | Нет | Поле clientId. |
shelves |
Shelf[] | Нет | Поле shelves. |
warehouseServices
Структура элемента массива
ServiceWarehouse
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Проставляется автоматически при создании |
name |
string | Да | Название внешнего склада, можно подставлять ID |
externalId |
string | Да | Идентификатор склада во внешней системе для связи остатков |
warehouseId |
integer · int64 | Да | Склад SelSup |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис для которого устанавливается связь |
organizationId |
integer · int64 | Да | Организация SelSup |
serviceOrganizationId |
integer · int64 | Нет | Идентификатор организации во внешней системе |
deliveriesdeletedcaptiondurationHoursreservationDaysscheduleurAddresscitylongitudelatitudewarehouseServiceIdwarehouseTypedescriptioninnkppplaceOfBusinessFiasIdpaymentAccounttelephoneregionNameregion
Поля объекта
Region
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
regionId |
integer · int32 | Нет | Поле regionId. | ||||||||||||||||||||
countryId |
integer · int32 | Нет | Поле countryId. | ||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||
regionSynonyms |
RegionSynonym[] | Нет | Поле regionSynonyms. | ||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
regionId |
integer · int64 | Нет | Поле regionId. |
synonym |
string | Нет | Поле synonym. |
service |
string | Нет | Поле service. |
regionIdisPrepayOnlineisCashisCardisGoodsActiveorgIdaddress{
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}Ошибки27
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_base_creatingПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_base_creating; localMessage содержит приведённый выше перевод.
error_cabinet_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cabinet_access_denied; localMessage содержит приведённый выше перевод.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_duplicate_warehouse_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_duplicate_warehouse_name; localMessage содержит приведённый выше перевод.
error_empty_first_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_first_name; localMessage содержит приведённый выше перевод.
error_empty_last_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_last_name; localMessage содержит приведённый выше перевод.
error_empty_organization_formПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_form; localMessage содержит приведённый выше перевод.
error_empty_organization_innПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_inn; localMessage содержит приведённый выше перевод.
error_empty_organization_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_name; localMessage содержит приведённый выше перевод.
error_empty_position_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_position_name; localMessage содержит приведённый выше перевод.
error_empty_warehouse_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_warehouse_name; localMessage содержит приведённый выше перевод.
error_map_directory_published_location_invalidПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_map_directory_published_location_invalid; localMessage содержит приведённый выше перевод.
error_max_pageПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_max_page; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_organization_create_failedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_create_failed; localMessage содержит приведённый выше перевод.
error_organization_existsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_exists; localMessage содержит приведённый выше перевод.
error_organization_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_not_found; localMessage содержит приведённый выше перевод.
error_position_existsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_position_exists; localMessage содержит приведённый выше перевод.
error_reloadПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_reload; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
error_warehouse_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_warehouse_not_found; localMessage содержит приведённый выше перевод.
error_warehouses_limit_exceededПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_warehouses_limit_exceeded; localMessage содержит приведённый выше перевод.
error_wrong_innПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_wrong_inn; localMessage содержит приведённый выше перевод.
error_wrong_versionПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_wrong_version; localMessage содержит приведённый выше перевод.
Удалить склад
/api/warehouse/{warehouseId}Помечает склад удаленным
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
warehouseId |
integer · int64 | Да | Поле warehouseId. |
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
restore |
boolean | Нет | Поле restore. |
curl --request DELETE 'https://api.selsup.ru/api/warehouse/1001' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/1001', {
method: 'DELETE',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/1001', {
method: 'DELETE',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.delete(
'https://api.selsup.ru/api/warehouse/1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/1001',
CURLOPT_CUSTOMREQUEST => 'DELETE',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("DELETE", "https://api.selsup.ru/api/warehouse/1001", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("DELETE", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200"string"Ошибки3
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
Создать или изменить зону хранения
/api/warehouse/storage-zoneСоздать или изменить зону хранения.
Тело запроса
application/jsonПоля объектаStorageZone
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cellIds |
integer[] | Нет | Поле cellIds. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
productIds |
integer[] | Нет | Поле productIds. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
products |
Product[] | Нет | Поле products. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор товара. Проставляется автоматически | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
productType |
stringPRODUCT, SET, SERVICE, DIGITAL, CONTAINER | Нет | Тип товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Да | Наименование товара внутреннее | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Признак удаления товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
printName |
string | Нет | Название товара для внешних сервисов. Если не задано, проставляется равным наименованию товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
realSize |
string | Нет | Российский размер товара для одежды или характеристики для других категорий | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
vendorSize |
string | Нет | Размер производителя или характеристики производителя. Не обязательно заполнять | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
size |
string | Нет | Размер для одежды или характеристики для внешних сервисов. Должен быть уникальным в рамках цвета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesStockCount |
integer · int32 | Нет | Остатки товара на Вайлдбериз | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonRealFbs |
boolean | Нет | Признак использования RealFbs для товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonStockCount |
integer · int32 | Нет | Остаток товара на складах Озон | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonStockBetweenWarehouses |
integer · int32 | Нет | Остаток товара в Озон, которые перемещаются между складами | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
removeFbsStock |
boolean | Нет | Не выгружать остатки товара на маркетплейсы | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noStockSync |
boolean | Нет | Не синхронизировать остатки: товар полностью исключается из передачи остатков на все маркетплейсы, текущий остаток на МП не изменяется | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
excludeCalculatedStockFromFbs |
boolean | Нет | Не отправлять рассчитанный остаток комплекта на склады FBS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
purchaseCurrency |
stringRUB, USD, EUR, AUD, AZN, GBP, AMD, BYN, BGN, BRL, HUF, VND, HKD, GEL, DKK, AED, EGP, INR, IDR, KZT, CAD, QAR, KGS, CNY, MDL, NZD, NOK, PLN, RON, XDR, SGD, TJS, THB, TRY, TMT, UZS, UAH, CZK, SEK, CHF, RSD, ZAR, KRW, JPY | Нет | Валюта закупочной цены товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
purchasePriceInCurrency |
number · double | Нет | Цена закупки в валюте | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deliveryCostInCurrency |
number · double | Нет | Цена на доставку в валюте | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
createdDate |
string · date-time | Нет | Дата создания товара на МП | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
created |
string · date-time | Нет | Дата создания товара в SelSup | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
createdUser |
string | Нет | Пользователь, который создал товар | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sourceIncomeItemId |
integer · int64 | Нет | Идентификатор товара из заказа поставщика по данным которого был создан товар | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sourceProductId |
integer · int64 | Нет | Идентификатор товара, который копировали | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentJobIds |
integer[] | Нет | Поле fulfillmentJobIds. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonRequiredStock |
integer · int32 | Нет | Расчитанное количество товара, для поставки на склад Озон | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesRequiredStock |
integer · int32 | Нет | Расчитанное количество товара, для поставки на склад Wildberries | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesProfit |
number · double | Нет | Профит с продажи товара на Вайлдбериз по FBM | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesProfitFbs |
number · double | Нет | Профит с продажи товара на Вайлдбериз по FBS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesOrderQuantity |
integer · int32 | Нет | Количество заказов по FBO товара на Вайлдбериз за 2 недели | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesSupplyingQuantity |
integer · int32 | Нет | Поставляемое количество товара на Вайлдбериз по FBM заказам | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesQuantityInWayToClient |
integer · int32 | Нет | Поставляемое количество товара на Вайлдбериз по FBM заказам к клиенту | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesQuantityInWayFromClient |
integer · int32 | Нет | Поставляемое количество товара на Вайлдбериз по FBM заказам от клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesSaleQuantity |
integer · int32 | Нет | Продажи товара на Вайлдбериз по FBM за 2 недели | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesQuantityInWay |
integer · int32 | Нет | Количество товаров на Вайлдбериз в пути | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesNoSale |
boolean | Нет | Признак неликвидного товара на Вайлдбериз | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
lastStockChange |
string · date-time | Нет | Дата последнего изменения стока на Вайлдбериз по FBM | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonOrderQuantity |
integer · int32 | Нет | Количество заказов товара по FBO на Озон по FBM и FBS за 2 недели | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonSupplyingQuantity |
integer · int32 | Нет | Поставляемое количество товара на Озон по FBM | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonProfit |
integer · int32 | Нет | Чистая маржа продажи товара на Озон по FBM | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
instockQuantity |
integer · int32 | Нет | Остатки товара на складах клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
instockQuantityValue |
number · double | Нет | Остатки товара на складах клиента в пользовательской единице измерения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stockUnit |
stringPCS, G, KG, ML, L | Нет | Единица измерения остатка товара для интерфейса и внешних интеграций | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
calculatedInStockQuantity |
integer · int32 | Нет | Рассчитанный остаток | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
calculatedInStockQuantityValue |
number · double | Нет | Рассчитанный остаток в пользовательской единице измерения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Идентификатор клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationId |
integer · int64 | Да | Идентификатор организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
productViewId |
integer · int64 | Нет | Идентификатор цвета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
view |
ProductView | Нет | Информация о цвете товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
color |
string | Нет | Артикул цвета |
wbArticle |
string | Нет | Артикул карточки Wildberries |
needKiz |
boolean | Нет | Требуется ли обязательная маркировка по данным Wildberries |
id |
integer · int64 | Нет | Идентификатор цвета. Проставляется автоматически |
images |
ProductImage[] | Нет | Список изображений товара |
videos |
ProductVideo[] | Нет | Список видео товара |
productModelId |
integer · int64 | Нет | Идентификатор модели |
model |
ProductModel | Нет | Модель, к которой относится цвет |
actual |
boolean | Нет | Актуальность цвета - нужно ли его показывать в заказах поставщикам |
mainImage |
ProductImage | Нет | Основное изображение товара |
mainImageId |
integer · int64 | Нет | Поле mainImageId. |
mainImageUrl |
string | Нет | Ссылка на основное изображение на маркетплейсе |
imageUrls |
string | Нет | Ссылка на изображения |
imagesUpdatedAt |
string · date-time | Нет | Дата/время последнего изменения фотографий |
image360Urls |
string | Нет | Ссылка на изображения 360 |
wildberriesId |
integer · int64 | Нет | Числовой идентификатор номенклатуры Wildberries, nmId |
createdDate |
string · date-time | Нет | Дата создания цвета |
createdUser |
string | Нет | Пользователь, создавший цвет |
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи |
clientId |
integer · int64 | Нет | Идентификатор клиента |
deleted |
boolean | Нет | Признак удаления цвета |
keywords |
string | Нет | Ключевые слова - сейчас не используется, перенесены в модель |
wildberriesRating |
number · double | Нет | Рейтинг карточки на Вайлдбериз |
wildberriesFeedbacks |
integer · int32 | Нет | Количество отзывов на карточке на Вайлдбериз |
wbRaiting |
number · double | Нет | Рейтинг карточки на Вайлдбериз |
wbFeedbackCount |
integer · int32 | Нет | Количество отзывов на карточке на Вайлдбериз |
wbPriceWithSpp |
number · double | Нет | Цена карточки на Вайлдбериз с учетом СПП, руб. |
wildberriesCardDoesNotOpen |
boolean | Нет | Признак, что карточка не открывается на Вайлдбериз |
wildberriesHasPhoto |
boolean | Нет | Признак наличия фото на Wildberries |
organizationId |
integer · int64 | Нет | Организация карточки |
params |
string | Нет | JSON со значениями параметров цвета |
additionalInfo |
string | Нет | Дополнительная информация для цвета |
values |
ParamValue[] | Нет | Значения параметров карточки. Отдаются при запросе модели, если передать params=true |
viewSourceId |
integer · int64 | Нет | Оригинал цвета по SKU |
sizes |
Product[] | Да | Список размеров для цвета |
hasChanges |
boolean | Нет | Признак изменения информации о цвете и необходимости его обновить |
viewWbArticle |
ProductView | Нет | Поле viewWbArticle. |
viewVersionId |
integer · int64 | Нет | Поле viewVersionId. |
suzIdcisTypenotChangedStockcardExchanges
Структура элемента массива
ProductCardExchange
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Сервис |
status |
stringWAITING_TO_SEND, SENT, ACCEPTED, ERROR | Нет | Поле status. |
lastAttemptAt |
string · date-time | Нет | Поле lastAttemptAt. |
errorSource |
stringSELSUP, MARKETPLACE | Нет | Поле errorSource. |
message |
string | Нет | Поле message. |
messageParams |
string | Нет | Поле messageParams. |
wildberriesStatuswildberriesMessagewildberriesMessageParamsnationalCatalogStatusnationalCatalogMessagenationalCatalogMessageParamsozonStatusozonMessageozonMessageParamsozonTaskIdwildberriesFbsOrdersQuantityozonFbsOrdersQuantityymarketFbsOrdersQuantitytotalSupplyingQuantityskuIdsku
Поля объекта
Sku
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
product |
Product | Нет | Первый товар из которого был создан SKU |
productId |
integer · int64 | Нет | Поле productId. |
barcodes
Структура элемента массива
ProductBarcode
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
barcode |
string | Нет | Поле barcode. |
primaryBarcode |
boolean | Нет | Основной штрих-код для отображения товара |
organizationId |
integer · int64 | Нет | Организация, если client.barcodeUniqForOrg = false, то проставляется 0. Поле включено в уникальный ключ |
clientId |
integer · int64 | Нет | Поле clientId. |
productId |
integer · int64 | Нет | Поле productId. |
useInWildberries |
boolean | Нет | Применим ли данный штрих-код для Вайлдбериз |
useInOzon |
boolean | Нет | Применим ли данный штрих-код для Озон |
useInYandexMarket |
boolean | Нет | Применим ли данный штрих-код для Yandex.Market |
useInAliexpress |
boolean | Нет | Применим ли данный штрих-код для Aliexpress |
useInSberMegamarket |
boolean | Нет | Применим ли данный штрих-код для Sber.MegaMarket |
useInWoocom |
boolean | Нет | Применим ли данный штрих-код для WooCommerce |
format |
string | Нет | Поле format. |
serviceProducts
Структура элемента массива
ServiceProduct
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
serviceProductId |
integer · int64 | Нет | Идентификатор продукта сервиса |
productId |
integer · int64 | Нет | Идентификатор продукта |
serviceId |
integer · int32 | Нет | Идентификатор сервиса |
serviceListingId |
integer · int64 | Нет | Идентификатор листинга на сервисе |
serviceCardId |
integer · int64 | Нет | Поле serviceCardId. |
fboStock |
integer · int32 | Нет | Остаток на ФБО складах |
lastRepricerPriceStatus |
stringNONE, SUCCESS, ERROR | Нет | Последний статус обновления цены через репрайсер |
errorMessage |
string | Нет | Ошибка при установки цены через репрайсер |
serviceCard |
string | Нет | Идентификатор карточки на сервисе |
serviceCardProduct |
string | Нет | Идентификатор товара на сервисе |
serviceCardUrl |
string | Нет | Ссылка на карточку на сервисе (если несколько товаров отображаются) |
serviceProductUrl |
string | Нет | Ссылка на товар селлера на сервисе |
serviceBarcode |
string | Нет | Штрих код на сервисе |
fboCommissions |
number · double | Нет | Комиссия ФБО |
fbsCommissions |
number · double | Нет | Комиссия ФБС |
purchasePercent |
number · double | Нет | Процент выкупа |
serviceArticle |
string | Нет | Артикул на сервисе |
clientId |
integer · int64 | Нет | Идентификатор клиента |
organizationId |
integer · int64 | Нет | Идентификатор организации |
fieldsToClear |
string[] | Нет | Поля связи, которые нужно очистить при обновлении |
siteArticlesiteIdparamsvalues
Структура элемента массива
ParamValue
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
paramId |
integer · int64 | Да | Идентификатор параметра |
paramName |
string | Нет | Название параметра, для тех, у кого нет ID |
option |
Option | Нет | Значение перечислимого параметра |
doubleValue |
number · double | Нет | Числовое значение параметра |
longValue |
integer · int64 | Нет | Целочисленное значение параметра |
booleanValue |
boolean | Нет | Булево значение параметра |
stringValue |
string | Нет | Строковое значение параметра |
dateValue |
string · date-time | Нет | Значение параметра даты |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Привязка к сервису параметра |
unit |
Unit | Нет | Единица измерения для параметра |
auto |
boolean | Нет | Автоматически проставленное значение параметра |
created |
integer · int64 | Нет | Дата заполнения параметра |
user |
string | Нет | Пользователь, который заполнил параметр |
locked |
boolean | Нет | Значение зафиксировано и не должно изменяться при импорте карточек с маркетплейса |
groupduplicateshasChangesignoreDuplicateyandexMarketStockCountgroupIdyandexMarketStatusyandexMarketMessageyandexMarketMessageParamsduplicateozonHasPhotoaliexpressStatusaliexpressMessagealiexpressMessageParamsmoySkladTypemoySkladStatusavitoStatusmoySkladMessagemoySkladMessageParamsremoveFbsStockOzonremoveFbsStockWbremoveFbsStockAliremoveFbsStockYmremoveFbsStockSberquantityincomeQuantityorderMinDateexpiredDateproductionDatestockstockValuestockscell
Поля объекта
Cell
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
reservedreservedValuecalculatedStockcalculatedStockValuepricecompetitors
Структура элемента массива
Competitor
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | ID конкурента |
modelId |
integer · int64 | Нет | ID модели, для которой указывается конкурент |
productId |
integer · int64 | Нет | ID конкретного товара, для которого указывается конкурент |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Маркетплейс конкурента |
url |
string | Да | URL карточки конкурента на маркетплейсе |
serviceId |
string | Нет | ID карточки конкурента на сайте маркетплейса |
clientId |
integer · int64 | Нет | ID клиента |
latestPrice |
number · double | Нет | Последняя собранная цена |
currency |
stringRUB, USD, EUR, AUD, AZN, GBP, AMD, BYN, BGN, BRL, HUF, VND, HKD, GEL, DKK, AED, EGP, INR, IDR, KZT, CAD, QAR, KGS, CNY, MDL, NZD, NOK, PLN, RON, XDR, SGD, TJS, THB, TRY, TMT, UZS, UAH, CZK, SEK, CHF, RSD, ZAR, KRW, JPY | Нет | Валюта последней цены |
latestPriceDate |
string · date-time | Нет | Дата сбора последней цены |
averageCompetitorPricecompetitorPriceCurrencyupdatedPricepriceWithoutDiscountupdatedPriceWithoutDiscountupdatedDeliveryCostupdatedPurchasePricepurchasePriceisPurchasePriceUpdatedisDeliveryCostUpdatedwholesalePricedeliveryCoststrategyIdozonAverageExpenseswildberriesAverageExpensesyandexMarketAverageExpenseswildberriesSaleminPriceozonPromotionPriceozonAcquiringPercentozonComissonsberMegaMarketSupplyingQuantityyandexMarketSupplyingQuantitysalesExpensesOnMpPercentsalesCountCoefficientmeasureUnitIdtaxeRatedesiredMarginalityPercentdesiredProfitRubadditionalCostpackWidthpackHeightpackDepthpackWeightmaxLoadWeightnumOfPiecesInBoxlastWildberriesSaleDatelastWildberriesOrderDatelastOzonSaleDatelastOzonOrderDatetotalOrdersCounttotalFbsOrdersCountwildberriesTotalOrdersCountignoreFbsWarehousesfbsWarehousesminFbsStockmaxFbsStockwildberriesSaleLogisticwildberriesReturnLogisticwildberriesTotalLogisticswildberriesWarehouseRatiowildberriesComissionozonSaleLogisticozonReturnLogisticozonCommissionmaxDeliveryToPickupPointozonPurchasePercentwildberriesPurchasePercentminMarginalitymaxMarginalityminProfitmaxProfitminPriceWithDiscountmaxPriceWithDiscountoldWildberriesPriceWithDiscountoldWildberriesSalewildberriesPromoProfitwildberriesMarginalitywildberriesPromoIdoldWildberriesPromoSalePercentoldWildberriesPromoPriceWithDiscountendWildberriesPriceWithSppConfigozonFbsCommissionozonFboCommissionwbTotalSalesCountozonTotalSalesCountsberTotalSalesCountyandexTotalSalesCountozonRaitingozonFeedbackCountozonPriceWithSppfboStockCountfbsStockCountstockCoverageDaysfboSupplyQuantityfboSalesfbsSalesfboOrdersfbsOrdersrecommendPlanbaseDeficitallocatedWithoutWarehouseskipDaysCountorganizationShortNamecontractorNamesupplyPlanBarcodeplanCorrectionFactororderBeforedaysBeforeSupplysupplyPlanDayswarehouseIdForSupplyReportwarehouseNameForSupplyReportwbCanBoxwbCanMonopalletwbCanSupersafewbCanBoxOnPalletmanagercellIddrrPercentpercentForParticipationPromoOrAdvertisingselsupLinktempIdcategory
Поля объекта
Category
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
categoryId |
integer · int32 | Нет | Идентификатор категории. Проставляется автоматически |
name |
string | Да | Наименование категории |
deleted |
boolean | Нет | Признак удаленных категорий |
parentId |
integer · int32 | Нет | Идентификатор родительской категории |
clientId |
integer · int64 | Нет | Идентификатор клиента |
marked |
boolean | Нет | Маркируется ли категория |
categoryClass |
stringSHOES, LIGHT, DRUGS, CAMERA, TYRES, MILK, WATER, TOBACCO, FURS, BEER, BICYCLES, PERFUMES, ELECTRONIC, OTHER, NONE, FOOD, WHEELCHAIRS, OTP, NCP, BIO, ANTISEPTIC, NABEER, SOFTDRINKS, PETFOOD, SEAFOOD, MEAT, TOYS, TITAN, RADIO, OPTIC_FIBER, VEGETABLE_OIL, CONSERVE, VETPHARMA, CHEMISTRY, AUTOFLUIDS, GROCERY, BOOKS, CONSTRUCTION, FIRE, HEATER, CABLERAW, POLYMER, SWEETS, CARPARTS, NATURAL_FUR, NICOTINDEV, GADGETS, FROZEN, FERTILIZERS, HOMEWARE, VETBIO, INDUSTRIAL, PYROTECHNICS | Нет | Тип категории для Честного знака. По умолчанию ставится OTHER |
wildberriesType |
WildberriesType | Нет | Предмет Вайлдбериз. Можно устанавливать либо объект,либо только идентификатор |
wildberriesCategoryId |
integer · int64 | Нет | Идентификатор категории Wildberries, совпадает с ID категории на самом Wildberries |
wildberriesFbmCommission |
number · double | Нет | Комиссия по тарифу FBM |
wildberriesFbwCommission |
number · double | Нет | Комиссия по тарифу FBW |
wildberriesFbsCommission |
number · double | Нет | Комиссия по тарифу FBS |
wildberriesDbsCommission |
number · double | Нет | Комиссия по тарифу DBS |
wildberriesEdbsCommission |
number · double | Нет | Комиссия по тарифу EDBS |
wildberriesCAndCCommission |
number · double | Нет | Комиссия по тарифу C&C |
wildberriesBookingCommission |
number · double | Нет | Комиссия за бронирование |
ozonDescriptionCategoryId |
integer · int64 | Нет | Идентификатор категории на Ozon. Строится из ID категории + ID типа на Ozon |
yandexMarketCategoryId |
integer · int64 | Нет | Идентификатор категории в Яндекс.Маркет. Совпадает с идентификатором категории на самом Яндекс.Маркет |
yandexMarketCategory |
YandexMarketCategory | Нет | Категория Яндекс.Маркета. Можно проставлять либо объект, либо только идентификатор |
ozonDescriptionCategory |
OzonDescriptionCategory | Нет | Категория Озон |
ozonCommission |
number · double | Нет | Комиссия озона. |
tnved |
Tnved | Нет | ТНВЭД. Можно проставлять либо объект, либо идентификатор ТНВЭД |
tnvedId |
integer · int64 | Нет | Идентификатор ТНВЭД |
laundry |
string | Нет | Правила ухода за вещами. Разделяются запятыми |
params |
string | Нет | JSON значений параметров для категории |
namePattern |
string | Нет | Шаблон названий категории |
aliexpressCategory |
AliexpressCategory | Нет | Категория Aliexpress |
aliexpressCategoryId |
integer · int64 | Нет | Идентификатор категории на самом Aliexpress |
avitoCategory |
AvitoCategory | Нет | Категория Avito |
lamodaCategory |
LamodaCategory | Нет | Категория Lamoda |
lamodaCategoryId |
integer · int64 | Нет | Идентификатор категории на Lamoda |
avitoCategoryId |
integer · int64 | Нет | Идентификатор категории на Avito |
packDepth |
integer · int32 | Нет | Глубина упаковки в мм. Проставляется всем товарам в категории |
packWidth |
integer · int32 | Нет | Ширина упаковки в мм. Проставляется всем товарам в категории |
packHeight |
integer · int32 | Нет | Высота упаковки в мм. Проставляется всем товарам в категории |
packWeight |
integer · int32 | Нет | Вес упаковки в граммах. Проставляется всем товарам в категории |
hasSize |
boolean | Нет | Признак разделения товаров в категории по размеру. Меняет вид редактора карточки |
hasColor |
boolean | Нет | Признак разделения товаров в категории по цвету. Меняет вид редактора карточки |
autoName |
boolean | Нет | Автоматически формировать названия товаров в категории |
removeFbsStock |
boolean | Нет | Не передавать остатки товаров по FBS для товаров из этой категории |
oneCId |
string | Нет | Идентификатор категории в 1С |
externalId |
string | Нет | Идентификатор категории на сайте |
moySkladId |
string | Нет | Идентификатор категории в сервисе МойСклад |
useClientParams |
boolean | Нет | Показывать пользовательские параметры в категории |
requiredExpirationDate |
boolean | Нет | Является ли срок годности обязательным параметром |
serviceCategoryMappings |
object | Нет | Универсальные привязки категории к категориям внешних сервисов |
productCount |
integer · int32 | Нет | Количество товаров в категории. Отдается только при withProductCount=true |
findirTipscommissionscommissionCalculationslowStockAlertsinputVatoutputVatfinalVatincomeTaxtotalTaxnetProfitmarginwoocomStatusdateStartSeason1dateEndSeason1dateStartSeason2dateEndSeason2dateStartSeason3dateEndSeason3dateStartSeason4dateEndSeason4currentGrossProfitplannedGrossProfitpositionemptyBarcodesuzumStatusmakroStatuskaspiStatussiteanyLinkanyArticleshopifyStatustakealotStatusyandexKitStatusbobShopStatusminPriceForAllMarketplacecalculatedInstockQuantitywoocomParentIdwoocomPermalinkyandexMarketSkuexternalArticlemoySkladLinkIddetmirArticlelamodaArticlemagnitArticlemvideoArticlewildberriesImtIdozonProductIdleroyMerlinIdleroyMerlinArticleyandexMarketShopSkuwildberriesSizeIdsberMegaMarketIdaliexpressSkuuzumProductIdlamodaParentSkuebayArticleozonIdsberArticleozonArticleoneCIdoneCArticledetmirIdsimalandIdlamodaSkuwalmartSkuwalmartIdwoocomSkuwoocomIdmagnitIdmagnitSkuopencartSkuopencartIdtakealotSkuuzumArticleozonFbsSkuozonFboSkuavitoIdmoySkladIdsellerSkuuzumSkuIdyandexMarketProductIdnationalCatalogFeedIdnationalCatalogGoodIdwildberriesPricewildberriesUpdatedPricewildberriesPriceWithoutDiscountwildberriesUpdatedPriceWithoutDiscountaliexpressPricealiexpressPriceWithoutDiscountaliexpressUpdatedPricealiexpressUpdatedPriceWithoutDiscountozonPriceozonUpdatedPriceozonPriceWithoutDiscountozonUpdatedPriceWithoutDiscountleroyMerlinPriceleroyMerlinUpdatedPriceavitoPriceavitoUpdatedPricesberMegaMarketPricesberMegaMarketUpdatedPriceyandexMarketPriceyandexMarketPriceWithoutDiscountyandexMarketUpdatedPriceyandexMarketUpdatedPriceWithoutDiscountproductPrices
Структура элемента массива
ProductPrice
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор записи цены |
productId |
integer · int64 | Нет | Идентификатор товара |
product |
object | Нет | Товар |
priceTypeId |
integer · int64 | Нет | Идентификатор типа цены |
priceType |
PriceType | Нет | Тип цены |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Сервис |
clientId |
integer · int64 | Нет | Идентификатор клиента |
price |
number · double | Нет | Цена |
updatedPrice |
number · double | Нет | Обновленная цена |
priceWithoutDiscount |
number · double | Нет | Цена без скидки |
updatedPriceWithoutDiscount |
number · double | Нет | Обновленная цена без скидки |
minPrice |
number · double | Нет | Минимальная цена |
updatedMinPrice |
number · double | Нет | Обновленная минимальная цена |
percentForParticipationPromoOrAdvertising |
integer · int32 | Нет | Процент расходов на участие в акциях или рекламе |
isActive |
boolean | Нет | Активна ли цена |
article |
string | Нет | Уникальный идентификатор товара на маркетплейсе |
pendingOperationId |
string | Нет | Идентификатор асинхронной операции обновления цены (Детский мир) |
stockRules
Поля объекта
ProductStockRules
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
minFbsStock |
integer · int32 | Нет | Минимальный остаток - если меньше, то ставим 0 |
maxFbsStock |
integer · int32 | Нет | Максимальный остаток - если больше, то ставим его |
subtractFromStock |
integer · int32 | Нет | Вычитаемое значение из остатка перед отправкой на маркетплейс |
distributionRules |
StockDistributionRule[] | Нет | Null inherits account rules; an empty list disables distribution for the product |
curl --request PUT 'https://api.selsup.ru/api/warehouse/storage-zone' \
--header 'Authorization: YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"id": 1001,
"warehouseId": 1001,
"clientId": 1001,
"name": "Example",
"cellIds": "string",
"productIds": "string"
}'
const response = await fetch('https://api.selsup.ru/api/warehouse/storage-zone', {
method: 'PUT',
headers: {
Authorization: process.env.SELSUP_API_TOKEN,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"id": 1001,
"warehouseId": 1001,
"clientId": 1001,
"name": "Example",
"cellIds": "string",
"productIds": "string"
}),
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/storage-zone', {
method: 'PUT',
headers: {
Authorization: process.env.SELSUP_API_TOKEN!,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"id": 1001,
"warehouseId": 1001,
"clientId": 1001,
"name": "Example",
"cellIds": "string",
"productIds": "string"
}),
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.put(
'https://api.selsup.ru/api/warehouse/storage-zone',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
json={
'id': 1001,
'warehouseId': 1001,
'clientId': 1001,
'name': 'Example',
'cellIds': 'string',
'productIds': 'string'
},
)
response.raise_for_status()
result = response.json()
<?php
$payload = <<<'JSON'
{
"id": 1001,
"warehouseId": 1001,
"clientId": 1001,
"name": "Example",
"cellIds": "string",
"productIds": "string"
}
JSON;
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/storage-zone',
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN'), 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
)
func main() {
req, err := http.NewRequest("PUT", "https://api.selsup.ru/api/warehouse/storage-zone", strings.NewReader(`{
"id": 1001,
"warehouseId": 1001,
"clientId": 1001,
"name": "Example",
"cellIds": "string",
"productIds": "string"
}`))
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
req.Header.Set("Content-Type", "application/json")
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/storage-zone"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.header("Content-Type", "application/json")
.method("PUT", HttpRequest.BodyPublishers.ofString("""
{
"id": 1001,
"warehouseId": 1001,
"clientId": 1001,
"name": "Example",
"cellIds": "string",
"productIds": "string"
}
"""))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
StorageZone
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cellIds |
integer[] | Нет | Поле cellIds. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
productIds |
integer[] | Нет | Поле productIds. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
products |
Product[] | Нет | Поле products. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор товара. Проставляется автоматически | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
productType |
stringPRODUCT, SET, SERVICE, DIGITAL, CONTAINER | Нет | Тип товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Да | Наименование товара внутреннее | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Признак удаления товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
printName |
string | Нет | Название товара для внешних сервисов. Если не задано, проставляется равным наименованию товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
realSize |
string | Нет | Российский размер товара для одежды или характеристики для других категорий | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
vendorSize |
string | Нет | Размер производителя или характеристики производителя. Не обязательно заполнять | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
size |
string | Нет | Размер для одежды или характеристики для внешних сервисов. Должен быть уникальным в рамках цвета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesStockCount |
integer · int32 | Нет | Остатки товара на Вайлдбериз | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonRealFbs |
boolean | Нет | Признак использования RealFbs для товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonStockCount |
integer · int32 | Нет | Остаток товара на складах Озон | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonStockBetweenWarehouses |
integer · int32 | Нет | Остаток товара в Озон, которые перемещаются между складами | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
removeFbsStock |
boolean | Нет | Не выгружать остатки товара на маркетплейсы | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noStockSync |
boolean | Нет | Не синхронизировать остатки: товар полностью исключается из передачи остатков на все маркетплейсы, текущий остаток на МП не изменяется | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
excludeCalculatedStockFromFbs |
boolean | Нет | Не отправлять рассчитанный остаток комплекта на склады FBS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
purchaseCurrency |
stringRUB, USD, EUR, AUD, AZN, GBP, AMD, BYN, BGN, BRL, HUF, VND, HKD, GEL, DKK, AED, EGP, INR, IDR, KZT, CAD, QAR, KGS, CNY, MDL, NZD, NOK, PLN, RON, XDR, SGD, TJS, THB, TRY, TMT, UZS, UAH, CZK, SEK, CHF, RSD, ZAR, KRW, JPY | Нет | Валюта закупочной цены товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
purchasePriceInCurrency |
number · double | Нет | Цена закупки в валюте | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deliveryCostInCurrency |
number · double | Нет | Цена на доставку в валюте | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
createdDate |
string · date-time | Нет | Дата создания товара на МП | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
created |
string · date-time | Нет | Дата создания товара в SelSup | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
createdUser |
string | Нет | Пользователь, который создал товар | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sourceIncomeItemId |
integer · int64 | Нет | Идентификатор товара из заказа поставщика по данным которого был создан товар | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sourceProductId |
integer · int64 | Нет | Идентификатор товара, который копировали | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentJobIds |
integer[] | Нет | Поле fulfillmentJobIds. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonRequiredStock |
integer · int32 | Нет | Расчитанное количество товара, для поставки на склад Озон | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesRequiredStock |
integer · int32 | Нет | Расчитанное количество товара, для поставки на склад Wildberries | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesProfit |
number · double | Нет | Профит с продажи товара на Вайлдбериз по FBM | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesProfitFbs |
number · double | Нет | Профит с продажи товара на Вайлдбериз по FBS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesOrderQuantity |
integer · int32 | Нет | Количество заказов по FBO товара на Вайлдбериз за 2 недели | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesSupplyingQuantity |
integer · int32 | Нет | Поставляемое количество товара на Вайлдбериз по FBM заказам | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesQuantityInWayToClient |
integer · int32 | Нет | Поставляемое количество товара на Вайлдбериз по FBM заказам к клиенту | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesQuantityInWayFromClient |
integer · int32 | Нет | Поставляемое количество товара на Вайлдбериз по FBM заказам от клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesSaleQuantity |
integer · int32 | Нет | Продажи товара на Вайлдбериз по FBM за 2 недели | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesQuantityInWay |
integer · int32 | Нет | Количество товаров на Вайлдбериз в пути | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesNoSale |
boolean | Нет | Признак неликвидного товара на Вайлдбериз | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
lastStockChange |
string · date-time | Нет | Дата последнего изменения стока на Вайлдбериз по FBM | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonOrderQuantity |
integer · int32 | Нет | Количество заказов товара по FBO на Озон по FBM и FBS за 2 недели | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonSupplyingQuantity |
integer · int32 | Нет | Поставляемое количество товара на Озон по FBM | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonProfit |
integer · int32 | Нет | Чистая маржа продажи товара на Озон по FBM | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
instockQuantity |
integer · int32 | Нет | Остатки товара на складах клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
instockQuantityValue |
number · double | Нет | Остатки товара на складах клиента в пользовательской единице измерения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stockUnit |
stringPCS, G, KG, ML, L | Нет | Единица измерения остатка товара для интерфейса и внешних интеграций | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
calculatedInStockQuantity |
integer · int32 | Нет | Рассчитанный остаток | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
calculatedInStockQuantityValue |
number · double | Нет | Рассчитанный остаток в пользовательской единице измерения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Идентификатор клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationId |
integer · int64 | Да | Идентификатор организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
productViewId |
integer · int64 | Нет | Идентификатор цвета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
view |
ProductView | Нет | Информация о цвете товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
color |
string | Нет | Артикул цвета |
wbArticle |
string | Нет | Артикул карточки Wildberries |
needKiz |
boolean | Нет | Требуется ли обязательная маркировка по данным Wildberries |
id |
integer · int64 | Нет | Идентификатор цвета. Проставляется автоматически |
images |
ProductImage[] | Нет | Список изображений товара |
videos |
ProductVideo[] | Нет | Список видео товара |
productModelId |
integer · int64 | Нет | Идентификатор модели |
model |
ProductModel | Нет | Модель, к которой относится цвет |
actual |
boolean | Нет | Актуальность цвета - нужно ли его показывать в заказах поставщикам |
mainImage |
ProductImage | Нет | Основное изображение товара |
mainImageId |
integer · int64 | Нет | Поле mainImageId. |
mainImageUrl |
string | Нет | Ссылка на основное изображение на маркетплейсе |
imageUrls |
string | Нет | Ссылка на изображения |
imagesUpdatedAt |
string · date-time | Нет | Дата/время последнего изменения фотографий |
image360Urls |
string | Нет | Ссылка на изображения 360 |
wildberriesId |
integer · int64 | Нет | Числовой идентификатор номенклатуры Wildberries, nmId |
createdDate |
string · date-time | Нет | Дата создания цвета |
createdUser |
string | Нет | Пользователь, создавший цвет |
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи |
clientId |
integer · int64 | Нет | Идентификатор клиента |
deleted |
boolean | Нет | Признак удаления цвета |
keywords |
string | Нет | Ключевые слова - сейчас не используется, перенесены в модель |
wildberriesRating |
number · double | Нет | Рейтинг карточки на Вайлдбериз |
wildberriesFeedbacks |
integer · int32 | Нет | Количество отзывов на карточке на Вайлдбериз |
wbRaiting |
number · double | Нет | Рейтинг карточки на Вайлдбериз |
wbFeedbackCount |
integer · int32 | Нет | Количество отзывов на карточке на Вайлдбериз |
wbPriceWithSpp |
number · double | Нет | Цена карточки на Вайлдбериз с учетом СПП, руб. |
wildberriesCardDoesNotOpen |
boolean | Нет | Признак, что карточка не открывается на Вайлдбериз |
wildberriesHasPhoto |
boolean | Нет | Признак наличия фото на Wildberries |
organizationId |
integer · int64 | Нет | Организация карточки |
params |
string | Нет | JSON со значениями параметров цвета |
additionalInfo |
string | Нет | Дополнительная информация для цвета |
values |
ParamValue[] | Нет | Значения параметров карточки. Отдаются при запросе модели, если передать params=true |
viewSourceId |
integer · int64 | Нет | Оригинал цвета по SKU |
sizes |
Product[] | Да | Список размеров для цвета |
hasChanges |
boolean | Нет | Признак изменения информации о цвете и необходимости его обновить |
viewWbArticle |
ProductView | Нет | Поле viewWbArticle. |
viewVersionId |
integer · int64 | Нет | Поле viewVersionId. |
suzIdcisTypenotChangedStockcardExchanges
Структура элемента массива
ProductCardExchange
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Сервис |
status |
stringWAITING_TO_SEND, SENT, ACCEPTED, ERROR | Нет | Поле status. |
lastAttemptAt |
string · date-time | Нет | Поле lastAttemptAt. |
errorSource |
stringSELSUP, MARKETPLACE | Нет | Поле errorSource. |
message |
string | Нет | Поле message. |
messageParams |
string | Нет | Поле messageParams. |
wildberriesStatuswildberriesMessagewildberriesMessageParamsnationalCatalogStatusnationalCatalogMessagenationalCatalogMessageParamsozonStatusozonMessageozonMessageParamsozonTaskIdwildberriesFbsOrdersQuantityozonFbsOrdersQuantityymarketFbsOrdersQuantitytotalSupplyingQuantityskuIdsku
Поля объекта
Sku
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
product |
Product | Нет | Первый товар из которого был создан SKU |
productId |
integer · int64 | Нет | Поле productId. |
barcodes
Структура элемента массива
ProductBarcode
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
barcode |
string | Нет | Поле barcode. |
primaryBarcode |
boolean | Нет | Основной штрих-код для отображения товара |
organizationId |
integer · int64 | Нет | Организация, если client.barcodeUniqForOrg = false, то проставляется 0. Поле включено в уникальный ключ |
clientId |
integer · int64 | Нет | Поле clientId. |
productId |
integer · int64 | Нет | Поле productId. |
useInWildberries |
boolean | Нет | Применим ли данный штрих-код для Вайлдбериз |
useInOzon |
boolean | Нет | Применим ли данный штрих-код для Озон |
useInYandexMarket |
boolean | Нет | Применим ли данный штрих-код для Yandex.Market |
useInAliexpress |
boolean | Нет | Применим ли данный штрих-код для Aliexpress |
useInSberMegamarket |
boolean | Нет | Применим ли данный штрих-код для Sber.MegaMarket |
useInWoocom |
boolean | Нет | Применим ли данный штрих-код для WooCommerce |
format |
string | Нет | Поле format. |
serviceProducts
Структура элемента массива
ServiceProduct
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
serviceProductId |
integer · int64 | Нет | Идентификатор продукта сервиса |
productId |
integer · int64 | Нет | Идентификатор продукта |
serviceId |
integer · int32 | Нет | Идентификатор сервиса |
serviceListingId |
integer · int64 | Нет | Идентификатор листинга на сервисе |
serviceCardId |
integer · int64 | Нет | Поле serviceCardId. |
fboStock |
integer · int32 | Нет | Остаток на ФБО складах |
lastRepricerPriceStatus |
stringNONE, SUCCESS, ERROR | Нет | Последний статус обновления цены через репрайсер |
errorMessage |
string | Нет | Ошибка при установки цены через репрайсер |
serviceCard |
string | Нет | Идентификатор карточки на сервисе |
serviceCardProduct |
string | Нет | Идентификатор товара на сервисе |
serviceCardUrl |
string | Нет | Ссылка на карточку на сервисе (если несколько товаров отображаются) |
serviceProductUrl |
string | Нет | Ссылка на товар селлера на сервисе |
serviceBarcode |
string | Нет | Штрих код на сервисе |
fboCommissions |
number · double | Нет | Комиссия ФБО |
fbsCommissions |
number · double | Нет | Комиссия ФБС |
purchasePercent |
number · double | Нет | Процент выкупа |
serviceArticle |
string | Нет | Артикул на сервисе |
clientId |
integer · int64 | Нет | Идентификатор клиента |
organizationId |
integer · int64 | Нет | Идентификатор организации |
fieldsToClear |
string[] | Нет | Поля связи, которые нужно очистить при обновлении |
siteArticlesiteIdparamsvalues
Структура элемента массива
ParamValue
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
paramId |
integer · int64 | Да | Идентификатор параметра |
paramName |
string | Нет | Название параметра, для тех, у кого нет ID |
option |
Option | Нет | Значение перечислимого параметра |
doubleValue |
number · double | Нет | Числовое значение параметра |
longValue |
integer · int64 | Нет | Целочисленное значение параметра |
booleanValue |
boolean | Нет | Булево значение параметра |
stringValue |
string | Нет | Строковое значение параметра |
dateValue |
string · date-time | Нет | Значение параметра даты |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Привязка к сервису параметра |
unit |
Unit | Нет | Единица измерения для параметра |
auto |
boolean | Нет | Автоматически проставленное значение параметра |
created |
integer · int64 | Нет | Дата заполнения параметра |
user |
string | Нет | Пользователь, который заполнил параметр |
locked |
boolean | Нет | Значение зафиксировано и не должно изменяться при импорте карточек с маркетплейса |
groupduplicateshasChangesignoreDuplicateyandexMarketStockCountgroupIdyandexMarketStatusyandexMarketMessageyandexMarketMessageParamsduplicateozonHasPhotoaliexpressStatusaliexpressMessagealiexpressMessageParamsmoySkladTypemoySkladStatusavitoStatusmoySkladMessagemoySkladMessageParamsremoveFbsStockOzonremoveFbsStockWbremoveFbsStockAliremoveFbsStockYmremoveFbsStockSberquantityincomeQuantityorderMinDateexpiredDateproductionDatestockstockValuestockscell
Поля объекта
Cell
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
reservedreservedValuecalculatedStockcalculatedStockValuepricecompetitors
Структура элемента массива
Competitor
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | ID конкурента |
modelId |
integer · int64 | Нет | ID модели, для которой указывается конкурент |
productId |
integer · int64 | Нет | ID конкретного товара, для которого указывается конкурент |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Маркетплейс конкурента |
url |
string | Да | URL карточки конкурента на маркетплейсе |
serviceId |
string | Нет | ID карточки конкурента на сайте маркетплейса |
clientId |
integer · int64 | Нет | ID клиента |
latestPrice |
number · double | Нет | Последняя собранная цена |
currency |
stringRUB, USD, EUR, AUD, AZN, GBP, AMD, BYN, BGN, BRL, HUF, VND, HKD, GEL, DKK, AED, EGP, INR, IDR, KZT, CAD, QAR, KGS, CNY, MDL, NZD, NOK, PLN, RON, XDR, SGD, TJS, THB, TRY, TMT, UZS, UAH, CZK, SEK, CHF, RSD, ZAR, KRW, JPY | Нет | Валюта последней цены |
latestPriceDate |
string · date-time | Нет | Дата сбора последней цены |
averageCompetitorPricecompetitorPriceCurrencyupdatedPricepriceWithoutDiscountupdatedPriceWithoutDiscountupdatedDeliveryCostupdatedPurchasePricepurchasePriceisPurchasePriceUpdatedisDeliveryCostUpdatedwholesalePricedeliveryCoststrategyIdozonAverageExpenseswildberriesAverageExpensesyandexMarketAverageExpenseswildberriesSaleminPriceozonPromotionPriceozonAcquiringPercentozonComissonsberMegaMarketSupplyingQuantityyandexMarketSupplyingQuantitysalesExpensesOnMpPercentsalesCountCoefficientmeasureUnitIdtaxeRatedesiredMarginalityPercentdesiredProfitRubadditionalCostpackWidthpackHeightpackDepthpackWeightmaxLoadWeightnumOfPiecesInBoxlastWildberriesSaleDatelastWildberriesOrderDatelastOzonSaleDatelastOzonOrderDatetotalOrdersCounttotalFbsOrdersCountwildberriesTotalOrdersCountignoreFbsWarehousesfbsWarehousesminFbsStockmaxFbsStockwildberriesSaleLogisticwildberriesReturnLogisticwildberriesTotalLogisticswildberriesWarehouseRatiowildberriesComissionozonSaleLogisticozonReturnLogisticozonCommissionmaxDeliveryToPickupPointozonPurchasePercentwildberriesPurchasePercentminMarginalitymaxMarginalityminProfitmaxProfitminPriceWithDiscountmaxPriceWithDiscountoldWildberriesPriceWithDiscountoldWildberriesSalewildberriesPromoProfitwildberriesMarginalitywildberriesPromoIdoldWildberriesPromoSalePercentoldWildberriesPromoPriceWithDiscountendWildberriesPriceWithSppConfigozonFbsCommissionozonFboCommissionwbTotalSalesCountozonTotalSalesCountsberTotalSalesCountyandexTotalSalesCountozonRaitingozonFeedbackCountozonPriceWithSppfboStockCountfbsStockCountstockCoverageDaysfboSupplyQuantityfboSalesfbsSalesfboOrdersfbsOrdersrecommendPlanbaseDeficitallocatedWithoutWarehouseskipDaysCountorganizationShortNamecontractorNamesupplyPlanBarcodeplanCorrectionFactororderBeforedaysBeforeSupplysupplyPlanDayswarehouseIdForSupplyReportwarehouseNameForSupplyReportwbCanBoxwbCanMonopalletwbCanSupersafewbCanBoxOnPalletmanagercellIddrrPercentpercentForParticipationPromoOrAdvertisingselsupLinktempIdcategory
Поля объекта
Category
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
categoryId |
integer · int32 | Нет | Идентификатор категории. Проставляется автоматически |
name |
string | Да | Наименование категории |
deleted |
boolean | Нет | Признак удаленных категорий |
parentId |
integer · int32 | Нет | Идентификатор родительской категории |
clientId |
integer · int64 | Нет | Идентификатор клиента |
marked |
boolean | Нет | Маркируется ли категория |
categoryClass |
stringSHOES, LIGHT, DRUGS, CAMERA, TYRES, MILK, WATER, TOBACCO, FURS, BEER, BICYCLES, PERFUMES, ELECTRONIC, OTHER, NONE, FOOD, WHEELCHAIRS, OTP, NCP, BIO, ANTISEPTIC, NABEER, SOFTDRINKS, PETFOOD, SEAFOOD, MEAT, TOYS, TITAN, RADIO, OPTIC_FIBER, VEGETABLE_OIL, CONSERVE, VETPHARMA, CHEMISTRY, AUTOFLUIDS, GROCERY, BOOKS, CONSTRUCTION, FIRE, HEATER, CABLERAW, POLYMER, SWEETS, CARPARTS, NATURAL_FUR, NICOTINDEV, GADGETS, FROZEN, FERTILIZERS, HOMEWARE, VETBIO, INDUSTRIAL, PYROTECHNICS | Нет | Тип категории для Честного знака. По умолчанию ставится OTHER |
wildberriesType |
WildberriesType | Нет | Предмет Вайлдбериз. Можно устанавливать либо объект,либо только идентификатор |
wildberriesCategoryId |
integer · int64 | Нет | Идентификатор категории Wildberries, совпадает с ID категории на самом Wildberries |
wildberriesFbmCommission |
number · double | Нет | Комиссия по тарифу FBM |
wildberriesFbwCommission |
number · double | Нет | Комиссия по тарифу FBW |
wildberriesFbsCommission |
number · double | Нет | Комиссия по тарифу FBS |
wildberriesDbsCommission |
number · double | Нет | Комиссия по тарифу DBS |
wildberriesEdbsCommission |
number · double | Нет | Комиссия по тарифу EDBS |
wildberriesCAndCCommission |
number · double | Нет | Комиссия по тарифу C&C |
wildberriesBookingCommission |
number · double | Нет | Комиссия за бронирование |
ozonDescriptionCategoryId |
integer · int64 | Нет | Идентификатор категории на Ozon. Строится из ID категории + ID типа на Ozon |
yandexMarketCategoryId |
integer · int64 | Нет | Идентификатор категории в Яндекс.Маркет. Совпадает с идентификатором категории на самом Яндекс.Маркет |
yandexMarketCategory |
YandexMarketCategory | Нет | Категория Яндекс.Маркета. Можно проставлять либо объект, либо только идентификатор |
ozonDescriptionCategory |
OzonDescriptionCategory | Нет | Категория Озон |
ozonCommission |
number · double | Нет | Комиссия озона. |
tnved |
Tnved | Нет | ТНВЭД. Можно проставлять либо объект, либо идентификатор ТНВЭД |
tnvedId |
integer · int64 | Нет | Идентификатор ТНВЭД |
laundry |
string | Нет | Правила ухода за вещами. Разделяются запятыми |
params |
string | Нет | JSON значений параметров для категории |
namePattern |
string | Нет | Шаблон названий категории |
aliexpressCategory |
AliexpressCategory | Нет | Категория Aliexpress |
aliexpressCategoryId |
integer · int64 | Нет | Идентификатор категории на самом Aliexpress |
avitoCategory |
AvitoCategory | Нет | Категория Avito |
lamodaCategory |
LamodaCategory | Нет | Категория Lamoda |
lamodaCategoryId |
integer · int64 | Нет | Идентификатор категории на Lamoda |
avitoCategoryId |
integer · int64 | Нет | Идентификатор категории на Avito |
packDepth |
integer · int32 | Нет | Глубина упаковки в мм. Проставляется всем товарам в категории |
packWidth |
integer · int32 | Нет | Ширина упаковки в мм. Проставляется всем товарам в категории |
packHeight |
integer · int32 | Нет | Высота упаковки в мм. Проставляется всем товарам в категории |
packWeight |
integer · int32 | Нет | Вес упаковки в граммах. Проставляется всем товарам в категории |
hasSize |
boolean | Нет | Признак разделения товаров в категории по размеру. Меняет вид редактора карточки |
hasColor |
boolean | Нет | Признак разделения товаров в категории по цвету. Меняет вид редактора карточки |
autoName |
boolean | Нет | Автоматически формировать названия товаров в категории |
removeFbsStock |
boolean | Нет | Не передавать остатки товаров по FBS для товаров из этой категории |
oneCId |
string | Нет | Идентификатор категории в 1С |
externalId |
string | Нет | Идентификатор категории на сайте |
moySkladId |
string | Нет | Идентификатор категории в сервисе МойСклад |
useClientParams |
boolean | Нет | Показывать пользовательские параметры в категории |
requiredExpirationDate |
boolean | Нет | Является ли срок годности обязательным параметром |
serviceCategoryMappings |
object | Нет | Универсальные привязки категории к категориям внешних сервисов |
productCount |
integer · int32 | Нет | Количество товаров в категории. Отдается только при withProductCount=true |
findirTipscommissionscommissionCalculationslowStockAlertsinputVatoutputVatfinalVatincomeTaxtotalTaxnetProfitmarginwoocomStatusdateStartSeason1dateEndSeason1dateStartSeason2dateEndSeason2dateStartSeason3dateEndSeason3dateStartSeason4dateEndSeason4currentGrossProfitplannedGrossProfitpositionemptyBarcodesuzumStatusmakroStatuskaspiStatussiteanyLinkanyArticleshopifyStatustakealotStatusyandexKitStatusbobShopStatusminPriceForAllMarketplacecalculatedInstockQuantitywoocomParentIdwoocomPermalinkyandexMarketSkuexternalArticlemoySkladLinkIddetmirArticlelamodaArticlemagnitArticlemvideoArticlewildberriesImtIdozonProductIdleroyMerlinIdleroyMerlinArticleyandexMarketShopSkuwildberriesSizeIdsberMegaMarketIdaliexpressSkuuzumProductIdlamodaParentSkuebayArticleozonIdsberArticleozonArticleoneCIdoneCArticledetmirIdsimalandIdlamodaSkuwalmartSkuwalmartIdwoocomSkuwoocomIdmagnitIdmagnitSkuopencartSkuopencartIdtakealotSkuuzumArticleozonFbsSkuozonFboSkuavitoIdmoySkladIdsellerSkuuzumSkuIdyandexMarketProductIdnationalCatalogFeedIdnationalCatalogGoodIdwildberriesPricewildberriesUpdatedPricewildberriesPriceWithoutDiscountwildberriesUpdatedPriceWithoutDiscountaliexpressPricealiexpressPriceWithoutDiscountaliexpressUpdatedPricealiexpressUpdatedPriceWithoutDiscountozonPriceozonUpdatedPriceozonPriceWithoutDiscountozonUpdatedPriceWithoutDiscountleroyMerlinPriceleroyMerlinUpdatedPriceavitoPriceavitoUpdatedPricesberMegaMarketPricesberMegaMarketUpdatedPriceyandexMarketPriceyandexMarketPriceWithoutDiscountyandexMarketUpdatedPriceyandexMarketUpdatedPriceWithoutDiscountproductPrices
Структура элемента массива
ProductPrice
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор записи цены |
productId |
integer · int64 | Нет | Идентификатор товара |
product |
object | Нет | Товар |
priceTypeId |
integer · int64 | Нет | Идентификатор типа цены |
priceType |
PriceType | Нет | Тип цены |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Сервис |
clientId |
integer · int64 | Нет | Идентификатор клиента |
price |
number · double | Нет | Цена |
updatedPrice |
number · double | Нет | Обновленная цена |
priceWithoutDiscount |
number · double | Нет | Цена без скидки |
updatedPriceWithoutDiscount |
number · double | Нет | Обновленная цена без скидки |
minPrice |
number · double | Нет | Минимальная цена |
updatedMinPrice |
number · double | Нет | Обновленная минимальная цена |
percentForParticipationPromoOrAdvertising |
integer · int32 | Нет | Процент расходов на участие в акциях или рекламе |
isActive |
boolean | Нет | Активна ли цена |
article |
string | Нет | Уникальный идентификатор товара на маркетплейсе |
pendingOperationId |
string | Нет | Идентификатор асинхронной операции обновления цены (Детский мир) |
stockRules
Поля объекта
ProductStockRules
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
minFbsStock |
integer · int32 | Нет | Минимальный остаток - если меньше, то ставим 0 |
maxFbsStock |
integer · int32 | Нет | Максимальный остаток - если больше, то ставим его |
subtractFromStock |
integer · int32 | Нет | Вычитаемое значение из остатка перед отправкой на маркетплейс |
distributionRules |
StockDistributionRule[] | Нет | Null inherits account rules; an empty list disables distribution for the product |
{
"id": 1001,
"warehouseId": 1001,
"clientId": 1001,
"name": "Example",
"cellIds": "string",
"productIds": "string"
}Ошибки12
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_storage_zone_invalid_cellsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_storage_zone_invalid_cells; localMessage содержит приведённый выше перевод.
error_storage_zone_invalid_productsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_storage_zone_invalid_products; localMessage содержит приведённый выше перевод.
error_storage_zone_name_existsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_storage_zone_name_exists; localMessage содержит приведённый выше перевод.
error_storage_zone_name_requiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_storage_zone_name_required; localMessage содержит приведённый выше перевод.
error_storage_zone_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_storage_zone_not_found; localMessage содержит приведённый выше перевод.
error_storage_zone_warehouse_requiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_storage_zone_warehouse_required; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
error_warehouse_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_warehouse_not_found; localMessage содержит приведённый выше перевод.
Создание или обновление полки
/api/warehouse/shelfПозволяет создать или обновить полку на складе
Тело запроса
application/jsonПоля объектаShelf
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
rackId |
integer · int32 | Нет | Поле rackId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cells |
Cell[] | Нет | Поле cells. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
curl --request PUT 'https://api.selsup.ru/api/warehouse/shelf' \
--header 'Authorization: YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"rackId": 1001,
"deleted": false,
"clientId": 1001
}'
const response = await fetch('https://api.selsup.ru/api/warehouse/shelf', {
method: 'PUT',
headers: {
Authorization: process.env.SELSUP_API_TOKEN,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"rackId": 1001,
"deleted": false,
"clientId": 1001
}),
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/shelf', {
method: 'PUT',
headers: {
Authorization: process.env.SELSUP_API_TOKEN!,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"rackId": 1001,
"deleted": false,
"clientId": 1001
}),
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.put(
'https://api.selsup.ru/api/warehouse/shelf',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
json={
'id': 1001,
'name': 'Example',
'warehouseId': 1001,
'rackId': 1001,
'deleted': False,
'clientId': 1001
},
)
response.raise_for_status()
result = response.json()
<?php
$payload = <<<'JSON'
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"rackId": 1001,
"deleted": false,
"clientId": 1001
}
JSON;
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/shelf',
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN'), 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
)
func main() {
req, err := http.NewRequest("PUT", "https://api.selsup.ru/api/warehouse/shelf", strings.NewReader(`{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"rackId": 1001,
"deleted": false,
"clientId": 1001
}`))
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
req.Header.Set("Content-Type", "application/json")
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/shelf"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.header("Content-Type", "application/json")
.method("PUT", HttpRequest.BodyPublishers.ofString("""
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"rackId": 1001,
"deleted": false,
"clientId": 1001
}
"""))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Shelf
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
rackId |
integer · int32 | Нет | Поле rackId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cells |
Cell[] | Нет | Поле cells. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"rackId": 1001,
"deleted": false,
"clientId": 1001
}Ошибки8
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_shelf_already_existПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_shelf_already_exist; localMessage содержит приведённый выше перевод.
error_shelf_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_shelf_not_found; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
Создание или обновление стеллажа
/api/warehouse/rackПозволяет создать или обновить стеллаж на складе
Тело запроса
application/jsonПоля объектаRack
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
passageId |
integer · int32 | Нет | Поле passageId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
shelves |
Shelf[] | Нет | Поле shelves. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
rackId |
integer · int32 | Нет | Поле rackId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cells |
Cell[] | Нет | Поле cells. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
curl --request PUT 'https://api.selsup.ru/api/warehouse/rack' \
--header 'Authorization: YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"passageId": 1001,
"deleted": false,
"clientId": 1001
}'
const response = await fetch('https://api.selsup.ru/api/warehouse/rack', {
method: 'PUT',
headers: {
Authorization: process.env.SELSUP_API_TOKEN,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"passageId": 1001,
"deleted": false,
"clientId": 1001
}),
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/rack', {
method: 'PUT',
headers: {
Authorization: process.env.SELSUP_API_TOKEN!,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"passageId": 1001,
"deleted": false,
"clientId": 1001
}),
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.put(
'https://api.selsup.ru/api/warehouse/rack',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
json={
'id': 1001,
'name': 'Example',
'warehouseId': 1001,
'passageId': 1001,
'deleted': False,
'clientId': 1001
},
)
response.raise_for_status()
result = response.json()
<?php
$payload = <<<'JSON'
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"passageId": 1001,
"deleted": false,
"clientId": 1001
}
JSON;
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/rack',
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN'), 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
)
func main() {
req, err := http.NewRequest("PUT", "https://api.selsup.ru/api/warehouse/rack", strings.NewReader(`{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"passageId": 1001,
"deleted": false,
"clientId": 1001
}`))
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
req.Header.Set("Content-Type", "application/json")
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/rack"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.header("Content-Type", "application/json")
.method("PUT", HttpRequest.BodyPublishers.ofString("""
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"passageId": 1001,
"deleted": false,
"clientId": 1001
}
"""))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Rack
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
passageId |
integer · int32 | Нет | Поле passageId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
shelves |
Shelf[] | Нет | Поле shelves. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
rackId |
integer · int32 | Нет | Поле rackId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cells |
Cell[] | Нет | Поле cells. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"passageId": 1001,
"deleted": false,
"clientId": 1001
}Ошибки8
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_rack_already_existПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_rack_already_exist; localMessage содержит приведённый выше перевод.
error_rack_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_rack_not_found; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
Создание или обновление прохода
/api/warehouse/passageПозволяет создать или обновить проход на складе
Тело запроса
application/jsonПоля объектаPassage
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
racks |
Rack[] | Нет | Стелажи этого прохода | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||
passageId |
integer · int32 | Нет | Поле passageId. | ||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||
shelves |
Shelf[] | Нет | Поле shelves. | ||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
name |
string | Нет | Поле name. |
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
rackId |
integer · int32 | Нет | Поле rackId. |
deleted |
boolean | Нет | Поле deleted. |
clientId |
integer · int64 | Нет | Поле clientId. |
cells |
Cell[] | Нет | Поле cells. |
curl --request PUT 'https://api.selsup.ru/api/warehouse/passage' \
--header 'Authorization: YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"deleted": false,
"clientId": 1001,
"racks": "string"
}'
const response = await fetch('https://api.selsup.ru/api/warehouse/passage', {
method: 'PUT',
headers: {
Authorization: process.env.SELSUP_API_TOKEN,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"deleted": false,
"clientId": 1001,
"racks": "string"
}),
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/passage', {
method: 'PUT',
headers: {
Authorization: process.env.SELSUP_API_TOKEN!,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"deleted": false,
"clientId": 1001,
"racks": "string"
}),
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.put(
'https://api.selsup.ru/api/warehouse/passage',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
json={
'id': 1001,
'name': 'Example',
'warehouseId': 1001,
'deleted': False,
'clientId': 1001,
'racks': 'string'
},
)
response.raise_for_status()
result = response.json()
<?php
$payload = <<<'JSON'
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"deleted": false,
"clientId": 1001,
"racks": "string"
}
JSON;
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/passage',
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN'), 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
)
func main() {
req, err := http.NewRequest("PUT", "https://api.selsup.ru/api/warehouse/passage", strings.NewReader(`{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"deleted": false,
"clientId": 1001,
"racks": "string"
}`))
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
req.Header.Set("Content-Type", "application/json")
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/passage"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.header("Content-Type", "application/json")
.method("PUT", HttpRequest.BodyPublishers.ofString("""
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"deleted": false,
"clientId": 1001,
"racks": "string"
}
"""))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Passage
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
racks |
Rack[] | Нет | Стелажи этого прохода | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||
passageId |
integer · int32 | Нет | Поле passageId. | ||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||
shelves |
Shelf[] | Нет | Поле shelves. | ||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
name |
string | Нет | Поле name. |
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
rackId |
integer · int32 | Нет | Поле rackId. |
deleted |
boolean | Нет | Поле deleted. |
clientId |
integer · int64 | Нет | Поле clientId. |
cells |
Cell[] | Нет | Поле cells. |
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"deleted": false,
"clientId": 1001,
"racks": "string"
}Ошибки8
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_passage_already_existПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_passage_already_exist; localMessage содержит приведённый выше перевод.
error_passage_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_passage_not_found; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
Создание или обновление ячейки
/api/warehouse/cellПозволяет создать или обновить ячейку на складе
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
passageId |
integer · int32 | Да | Поле passageId. |
rackId |
integer · int32 | Да | Поле rackId. |
shelfId |
integer · int32 | Да | Поле shelfId. |
Тело запроса
application/jsonПоля объектаCell
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
curl --request PUT 'https://api.selsup.ru/api/warehouse/cell?passageId=1001&rackId=1001&shelfId=1001' \
--header 'Authorization: YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"id": 1001,
"warehouseId": 1001,
"passageId": 1001,
"shelfId": 1001,
"rackId": 1001,
"storageZoneId": 1001
}'
const response = await fetch('https://api.selsup.ru/api/warehouse/cell?passageId=1001&rackId=1001&shelfId=1001', {
method: 'PUT',
headers: {
Authorization: process.env.SELSUP_API_TOKEN,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"id": 1001,
"warehouseId": 1001,
"passageId": 1001,
"shelfId": 1001,
"rackId": 1001,
"storageZoneId": 1001
}),
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/cell?passageId=1001&rackId=1001&shelfId=1001', {
method: 'PUT',
headers: {
Authorization: process.env.SELSUP_API_TOKEN!,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"id": 1001,
"warehouseId": 1001,
"passageId": 1001,
"shelfId": 1001,
"rackId": 1001,
"storageZoneId": 1001
}),
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.put(
'https://api.selsup.ru/api/warehouse/cell?passageId=1001&rackId=1001&shelfId=1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
json={
'id': 1001,
'warehouseId': 1001,
'passageId': 1001,
'shelfId': 1001,
'rackId': 1001,
'storageZoneId': 1001
},
)
response.raise_for_status()
result = response.json()
<?php
$payload = <<<'JSON'
{
"id": 1001,
"warehouseId": 1001,
"passageId": 1001,
"shelfId": 1001,
"rackId": 1001,
"storageZoneId": 1001
}
JSON;
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/cell?passageId=1001&rackId=1001&shelfId=1001',
CURLOPT_CUSTOMREQUEST => 'PUT',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN'), 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
)
func main() {
req, err := http.NewRequest("PUT", "https://api.selsup.ru/api/warehouse/cell?passageId=1001&rackId=1001&shelfId=1001", strings.NewReader(`{
"id": 1001,
"warehouseId": 1001,
"passageId": 1001,
"shelfId": 1001,
"rackId": 1001,
"storageZoneId": 1001
}`))
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
req.Header.Set("Content-Type", "application/json")
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/cell?passageId=1001&rackId=1001&shelfId=1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.header("Content-Type", "application/json")
.method("PUT", HttpRequest.BodyPublishers.ofString("""
{
"id": 1001,
"warehouseId": 1001,
"passageId": 1001,
"shelfId": 1001,
"rackId": 1001,
"storageZoneId": 1001
}
"""))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Cell
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
{
"id": 1001,
"warehouseId": 1001,
"passageId": 1001,
"shelfId": 1001,
"rackId": 1001,
"storageZoneId": 1001
}Ошибки8
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_cell_already_existПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_already_exist; localMessage содержит приведённый выше перевод.
error_cell_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_not_found; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
Копировать полку на складе
/api/warehouse/shelf/{shelfId}/copyКопирует полку со всей внутренней структурой
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
shelfId |
integer · int32 | Да | Поле shelfId. |
curl --request POST 'https://api.selsup.ru/api/warehouse/shelf/1001/copy' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/shelf/1001/copy', {
method: 'POST',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/shelf/1001/copy', {
method: 'POST',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.post(
'https://api.selsup.ru/api/warehouse/shelf/1001/copy',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/shelf/1001/copy',
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("POST", "https://api.selsup.ru/api/warehouse/shelf/1001/copy", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/shelf/1001/copy"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("POST", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Shelf
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
rackId |
integer · int32 | Нет | Поле rackId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cells |
Cell[] | Нет | Поле cells. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"rackId": 1001,
"deleted": false,
"clientId": 1001
}Ошибки7
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_shelf_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_shelf_not_found; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
Удалить привязку склада к складу маркетплейса
/api/warehouse/removeServiceWarehouseУдалить привязку склада к складу маркетплейса.
Тело запроса
application/jsonПоля объектаServiceWarehouse
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Проставляется автоматически при создании |
name |
string | Да | Название внешнего склада, можно подставлять ID |
externalId |
string | Да | Идентификатор склада во внешней системе для связи остатков |
warehouseId |
integer · int64 | Да | Склад SelSup |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис для которого устанавливается связь |
organizationId |
integer · int64 | Да | Организация SelSup |
serviceOrganizationId |
integer · int64 | Нет | Идентификатор организации во внешней системе |
curl --request POST 'https://api.selsup.ru/api/warehouse/removeServiceWarehouse' \
--header 'Authorization: YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"name": "Example",
"externalId": "string",
"warehouseId": 1001,
"service": "NONE",
"organizationId": 1001,
"id": 1001
}'
const response = await fetch('https://api.selsup.ru/api/warehouse/removeServiceWarehouse', {
method: 'POST',
headers: {
Authorization: process.env.SELSUP_API_TOKEN,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"name": "Example",
"externalId": "string",
"warehouseId": 1001,
"service": "NONE",
"organizationId": 1001,
"id": 1001
}),
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/removeServiceWarehouse', {
method: 'POST',
headers: {
Authorization: process.env.SELSUP_API_TOKEN!,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"name": "Example",
"externalId": "string",
"warehouseId": 1001,
"service": "NONE",
"organizationId": 1001,
"id": 1001
}),
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
import os
import requests
response = requests.post(
'https://api.selsup.ru/api/warehouse/removeServiceWarehouse',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
json={
'name': 'Example',
'externalId': 'string',
'warehouseId': 1001,
'service': 'NONE',
'organizationId': 1001,
'id': 1001
},
)
response.raise_for_status()
<?php
$payload = <<<'JSON'
{
"name": "Example",
"externalId": "string",
"warehouseId": 1001,
"service": "NONE",
"organizationId": 1001,
"id": 1001
}
JSON;
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/removeServiceWarehouse',
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN'), 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
)
func main() {
req, err := http.NewRequest("POST", "https://api.selsup.ru/api/warehouse/removeServiceWarehouse", strings.NewReader(`{
"name": "Example",
"externalId": "string",
"warehouseId": 1001,
"service": "NONE",
"organizationId": 1001,
"id": 1001
}`))
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
req.Header.Set("Content-Type", "application/json")
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/removeServiceWarehouse"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.header("Content-Type", "application/json")
.method("POST", HttpRequest.BodyPublishers.ofString("""
{
"name": "Example",
"externalId": "string",
"warehouseId": 1001,
"service": "NONE",
"organizationId": 1001,
"id": 1001
}
"""))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200Тело ответа пустое.
Ошибки23
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_base_creatingПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_base_creating; localMessage содержит приведённый выше перевод.
error_cabinet_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cabinet_access_denied; localMessage содержит приведённый выше перевод.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_empty_first_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_first_name; localMessage содержит приведённый выше перевод.
error_empty_last_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_last_name; localMessage содержит приведённый выше перевод.
error_empty_organization_formПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_form; localMessage содержит приведённый выше перевод.
error_empty_organization_innПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_inn; localMessage содержит приведённый выше перевод.
error_empty_organization_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_name; localMessage содержит приведённый выше перевод.
error_empty_position_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_position_name; localMessage содержит приведённый выше перевод.
error_max_pageПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_max_page; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_organization_create_failedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_create_failed; localMessage содержит приведённый выше перевод.
error_organization_existsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_exists; localMessage содержит приведённый выше перевод.
error_organization_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_not_found; localMessage содержит приведённый выше перевод.
error_position_existsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_position_exists; localMessage содержит приведённый выше перевод.
error_reloadПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_reload; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
error_user_does_not_have_this_organizationПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_user_does_not_have_this_organization; localMessage содержит приведённый выше перевод.
error_wrong_innПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_wrong_inn; localMessage содержит приведённый выше перевод.
error_wrong_versionПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_wrong_version; localMessage содержит приведённый выше перевод.
Копировать стеллаж на складе
/api/warehouse/rack/{rackId}/copyКопирует стеллаж со всей внутренней структурой
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
rackId |
integer · int32 | Да | Поле rackId. |
curl --request POST 'https://api.selsup.ru/api/warehouse/rack/1001/copy' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/rack/1001/copy', {
method: 'POST',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/rack/1001/copy', {
method: 'POST',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.post(
'https://api.selsup.ru/api/warehouse/rack/1001/copy',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/rack/1001/copy',
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("POST", "https://api.selsup.ru/api/warehouse/rack/1001/copy", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/rack/1001/copy"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("POST", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Rack
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
passageId |
integer · int32 | Нет | Поле passageId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
shelves |
Shelf[] | Нет | Поле shelves. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
rackId |
integer · int32 | Нет | Поле rackId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cells |
Cell[] | Нет | Поле cells. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"passageId": 1001,
"deleted": false,
"clientId": 1001
}Ошибки7
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_rack_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_rack_not_found; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
Копировать проход на складе
/api/warehouse/passage/{passageId}/copyКопирует проход со всей внутренней структурой
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
passageId |
integer · int32 | Да | Поле passageId. |
curl --request POST 'https://api.selsup.ru/api/warehouse/passage/1001/copy' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/passage/1001/copy', {
method: 'POST',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/passage/1001/copy', {
method: 'POST',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.post(
'https://api.selsup.ru/api/warehouse/passage/1001/copy',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/passage/1001/copy',
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("POST", "https://api.selsup.ru/api/warehouse/passage/1001/copy", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/passage/1001/copy"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("POST", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Passage
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
racks |
Rack[] | Нет | Стелажи этого прохода | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||
passageId |
integer · int32 | Нет | Поле passageId. | ||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||
shelves |
Shelf[] | Нет | Поле shelves. | ||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
name |
string | Нет | Поле name. |
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
rackId |
integer · int32 | Нет | Поле rackId. |
deleted |
boolean | Нет | Поле deleted. |
clientId |
integer · int64 | Нет | Поле clientId. |
cells |
Cell[] | Нет | Поле cells. |
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"deleted": false,
"clientId": 1001,
"racks": "string"
}Ошибки7
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_passage_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_passage_not_found; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
Получить ячейки по фильтру
/api/warehouse/getCellsByFilterПозволяет получить список ячеек по id склада, прохода, стеллажа или полки. Фильтр принимает один параметр
Тело запроса
application/jsonПоля объектаCellFilter
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
cellId |
integer · int32 | Нет | Поле cellId. |
shelfId |
integer · int32 | Нет | Поле shelfId. |
rackId |
integer · int32 | Нет | Поле rackId. |
passageId |
integer · int32 | Нет | Поле passageId. |
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
curl --request POST 'https://api.selsup.ru/api/warehouse/getCellsByFilter' \
--header 'Authorization: YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"cellId": 1001,
"shelfId": 1001,
"rackId": 1001,
"passageId": 1001,
"warehouseId": 1001
}'
const response = await fetch('https://api.selsup.ru/api/warehouse/getCellsByFilter', {
method: 'POST',
headers: {
Authorization: process.env.SELSUP_API_TOKEN,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"cellId": 1001,
"shelfId": 1001,
"rackId": 1001,
"passageId": 1001,
"warehouseId": 1001
}),
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/getCellsByFilter', {
method: 'POST',
headers: {
Authorization: process.env.SELSUP_API_TOKEN!,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"cellId": 1001,
"shelfId": 1001,
"rackId": 1001,
"passageId": 1001,
"warehouseId": 1001
}),
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.post(
'https://api.selsup.ru/api/warehouse/getCellsByFilter',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
json={
'cellId': 1001,
'shelfId': 1001,
'rackId': 1001,
'passageId': 1001,
'warehouseId': 1001
},
)
response.raise_for_status()
result = response.json()
<?php
$payload = <<<'JSON'
{
"cellId": 1001,
"shelfId": 1001,
"rackId": 1001,
"passageId": 1001,
"warehouseId": 1001
}
JSON;
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/getCellsByFilter',
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN'), 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
)
func main() {
req, err := http.NewRequest("POST", "https://api.selsup.ru/api/warehouse/getCellsByFilter", strings.NewReader(`{
"cellId": 1001,
"shelfId": 1001,
"rackId": 1001,
"passageId": 1001,
"warehouseId": 1001
}`))
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
req.Header.Set("Content-Type", "application/json")
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/getCellsByFilter"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.header("Content-Type", "application/json")
.method("POST", HttpRequest.BodyPublishers.ofString("""
{
"cellId": 1001,
"shelfId": 1001,
"rackId": 1001,
"passageId": 1001,
"warehouseId": 1001
}
"""))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Структура элемента массива
Cell[]
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
[
"string"
]Ошибки6
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_fulfillment_client_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_fulfillment_client_access_denied; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
Добавить связь склада SelSup к складу маркетплейса
/api/warehouse/createServiceWarehouseПозволяет установить связь склада SelSup со складом маркетплейса для передачи остатков на этот склад. Обязательные поля: name, externalId, warehouseId, service, organizationId. Связь со складом проставляется через warehouse/getWarehouseOfService - метод, который непосредственно получает склады с маркетплейсов. Внимание особенность: для WB и Ozon обязательно все склады должны быть связаны со складом маркетплейса или со специальным складом SelSup с флажком не передавать остатки, иначе остатки на этом складе будут обнулены
Тело запроса
application/jsonПоля объектаServiceWarehouse
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Проставляется автоматически при создании |
name |
string | Да | Название внешнего склада, можно подставлять ID |
externalId |
string | Да | Идентификатор склада во внешней системе для связи остатков |
warehouseId |
integer · int64 | Да | Склад SelSup |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис для которого устанавливается связь |
organizationId |
integer · int64 | Да | Организация SelSup |
serviceOrganizationId |
integer · int64 | Нет | Идентификатор организации во внешней системе |
curl --request POST 'https://api.selsup.ru/api/warehouse/createServiceWarehouse' \
--header 'Authorization: YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"name": "Example",
"externalId": "string",
"warehouseId": 1001,
"service": "NONE",
"organizationId": 1001,
"id": 1001
}'
const response = await fetch('https://api.selsup.ru/api/warehouse/createServiceWarehouse', {
method: 'POST',
headers: {
Authorization: process.env.SELSUP_API_TOKEN,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"name": "Example",
"externalId": "string",
"warehouseId": 1001,
"service": "NONE",
"organizationId": 1001,
"id": 1001
}),
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/createServiceWarehouse', {
method: 'POST',
headers: {
Authorization: process.env.SELSUP_API_TOKEN!,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"name": "Example",
"externalId": "string",
"warehouseId": 1001,
"service": "NONE",
"organizationId": 1001,
"id": 1001
}),
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.post(
'https://api.selsup.ru/api/warehouse/createServiceWarehouse',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
json={
'name': 'Example',
'externalId': 'string',
'warehouseId': 1001,
'service': 'NONE',
'organizationId': 1001,
'id': 1001
},
)
response.raise_for_status()
result = response.json()
<?php
$payload = <<<'JSON'
{
"name": "Example",
"externalId": "string",
"warehouseId": 1001,
"service": "NONE",
"organizationId": 1001,
"id": 1001
}
JSON;
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/createServiceWarehouse',
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN'), 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
)
func main() {
req, err := http.NewRequest("POST", "https://api.selsup.ru/api/warehouse/createServiceWarehouse", strings.NewReader(`{
"name": "Example",
"externalId": "string",
"warehouseId": 1001,
"service": "NONE",
"organizationId": 1001,
"id": 1001
}`))
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
req.Header.Set("Content-Type", "application/json")
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/createServiceWarehouse"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.header("Content-Type", "application/json")
.method("POST", HttpRequest.BodyPublishers.ofString("""
{
"name": "Example",
"externalId": "string",
"warehouseId": 1001,
"service": "NONE",
"organizationId": 1001,
"id": 1001
}
"""))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
ServiceWarehouse
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Проставляется автоматически при создании |
name |
string | Да | Название внешнего склада, можно подставлять ID |
externalId |
string | Да | Идентификатор склада во внешней системе для связи остатков |
warehouseId |
integer · int64 | Да | Склад SelSup |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис для которого устанавливается связь |
organizationId |
integer · int64 | Да | Организация SelSup |
serviceOrganizationId |
integer · int64 | Нет | Идентификатор организации во внешней системе |
{
"name": "Example",
"externalId": "string",
"warehouseId": 1001,
"service": "NONE",
"organizationId": 1001,
"id": 1001
}Ошибки26
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_base_creatingПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_base_creating; localMessage содержит приведённый выше перевод.
error_cabinet_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cabinet_access_denied; localMessage содержит приведённый выше перевод.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_empty_first_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_first_name; localMessage содержит приведённый выше перевод.
error_empty_last_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_last_name; localMessage содержит приведённый выше перевод.
error_empty_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_name; localMessage содержит приведённый выше перевод.
error_empty_organization_formПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_form; localMessage содержит приведённый выше перевод.
error_empty_organization_innПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_inn; localMessage содержит приведённый выше перевод.
error_empty_organization_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_name; localMessage содержит приведённый выше перевод.
error_empty_position_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_position_name; localMessage содержит приведённый выше перевод.
error_empty_serviceПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_service; localMessage содержит приведённый выше перевод.
error_max_pageПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_max_page; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_organization_create_failedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_create_failed; localMessage содержит приведённый выше перевод.
error_organization_existsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_exists; localMessage содержит приведённый выше перевод.
error_organization_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_not_found; localMessage содержит приведённый выше перевод.
error_position_existsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_position_exists; localMessage содержит приведённый выше перевод.
error_reloadПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_reload; localMessage содержит приведённый выше перевод.
error_service_warehouse_existsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_service_warehouse_exists; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
error_warehouse_empty_idПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_warehouse_empty_id; localMessage содержит приведённый выше перевод.
error_wrong_innПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_wrong_inn; localMessage содержит приведённый выше перевод.
error_wrong_versionПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_wrong_version; localMessage содержит приведённый выше перевод.
Создание нескольких ячеек
/api/warehouse/cellsПозволяет создать до 100 ячеек на одной полке за один запрос
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
passageId |
integer · int32 | Да | Поле passageId. |
rackId |
integer · int32 | Да | Поле rackId. |
shelfId |
integer · int32 | Да | Поле shelfId. |
Тело запроса
application/jsonСтруктура элемента массиваCell[]
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
curl --request POST 'https://api.selsup.ru/api/warehouse/cells?passageId=1001&rackId=1001&shelfId=1001' \
--header 'Authorization: YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '[
"string"
]'
const response = await fetch('https://api.selsup.ru/api/warehouse/cells?passageId=1001&rackId=1001&shelfId=1001', {
method: 'POST',
headers: {
Authorization: process.env.SELSUP_API_TOKEN,
'Content-Type': 'application/json',
},
body: JSON.stringify([
"string"
]),
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/cells?passageId=1001&rackId=1001&shelfId=1001', {
method: 'POST',
headers: {
Authorization: process.env.SELSUP_API_TOKEN!,
'Content-Type': 'application/json',
},
body: JSON.stringify([
"string"
]),
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.post(
'https://api.selsup.ru/api/warehouse/cells?passageId=1001&rackId=1001&shelfId=1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
json=[
'string'
],
)
response.raise_for_status()
result = response.json()
<?php
$payload = <<<'JSON'
[
"string"
]
JSON;
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/cells?passageId=1001&rackId=1001&shelfId=1001',
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN'), 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
)
func main() {
req, err := http.NewRequest("POST", "https://api.selsup.ru/api/warehouse/cells?passageId=1001&rackId=1001&shelfId=1001", strings.NewReader(`[
"string"
]`))
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
req.Header.Set("Content-Type", "application/json")
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/cells?passageId=1001&rackId=1001&shelfId=1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.header("Content-Type", "application/json")
.method("POST", HttpRequest.BodyPublishers.ofString("""
[
"string"
]
"""))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Структура элемента массива
Cell[]
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
[
"string"
]Ошибки9
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_cell_already_existПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_already_exist; localMessage содержит приведённый выше перевод.
error_cell_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_not_found; localMessage содержит приведённый выше перевод.
error_cells_batch_size_invalidПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cells_batch_size_invalid; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
Выгрузить ячейки склада в Excel
/api/warehouse/cells/excelВыгрузить ячейки склада в Excel.
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
warehouseId |
integer · int64 | Да | Поле warehouseId. |
curl --request GET 'https://api.selsup.ru/api/warehouse/cells/excel?warehouseId=1001' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/cells/excel?warehouseId=1001', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/cells/excel?warehouseId=1001', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/cells/excel?warehouseId=1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/cells/excel?warehouseId=1001',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/cells/excel?warehouseId=1001", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/cells/excel?warehouseId=1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200"string"Ошибки8
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_cells_excel_failedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cells_excel_failed; localMessage содержит приведённый выше перевод.
error_cells_excel_limitПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cells_excel_limit; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_warehouse_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_warehouse_not_found; localMessage содержит приведённый выше перевод.
Загрузить ячейки склада из Excel
/api/warehouse/cells/excelЗагрузить ячейки склада из Excel.
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
warehouseId |
integer · int64 | Да | Поле warehouseId. |
Тело запроса
multipart/form-data| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
file |
string · binary | Да | Поле file. |
curl --request POST 'https://api.selsup.ru/api/warehouse/cells/excel?warehouseId=1001' \
--header 'Authorization: YOUR_API_TOKEN' \
--form 'file=@./file.bin'
const form = new FormData();
form.append('file', fileInput.files[0]);
const response = await fetch('https://api.selsup.ru/api/warehouse/cells/excel?warehouseId=1001', {
method: 'POST',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
body: form,
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const form: FormData = new FormData();
form.append('file', fileInput.files![0]);
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/cells/excel?warehouseId=1001', {
method: 'POST',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
body: form,
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.post(
'https://api.selsup.ru/api/warehouse/cells/excel?warehouseId=1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
files={'file': open('./logo.png', 'rb')},
)
response.raise_for_status()
result = response.json()
<?php
$payload = ['file' => new CURLFile('./logo.png')];
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/cells/excel?warehouseId=1001',
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"bytes"
"fmt"
"io"
"mime/multipart"
"net/http"
"os"
"path/filepath"
)
func main() {
var body bytes.Buffer
writer := multipart.NewWriter(&body)
file, err := os.Open("./logo.png")
if err != nil { panic(err) }
defer file.Close()
part, err := writer.CreateFormFile("file", filepath.Base(file.Name()))
if err != nil { panic(err) }
if _, err = io.Copy(part, file); err != nil { panic(err) }
writer.Close()
req, err := http.NewRequest("POST", "https://api.selsup.ru/api/warehouse/cells/excel?warehouseId=1001", &body)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
req.Header.Set("Content-Type", writer.FormDataContentType())
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.nio.charset.StandardCharsets;
import java.nio.file.Files;
import java.nio.file.Path;
public class SelSupExample {
public static void main(String[] args) throws Exception {
String boundary = "SelSupBoundary" + System.currentTimeMillis();
byte[] file = Files.readAllBytes(Path.of("./logo.png"));
byte[] head = ("--" + boundary + "\r\n" +
"Content-Disposition: form-data; name=\"file\"; filename=\"logo.png\"\r\n" +
"Content-Type: image/png\r\n\r\n").getBytes(StandardCharsets.UTF_8);
byte[] tail = ("\r\n--" + boundary + "--\r\n").getBytes(StandardCharsets.UTF_8);
byte[] payload = new byte[head.length + file.length + tail.length];
System.arraycopy(head, 0, payload, 0, head.length);
System.arraycopy(file, 0, payload, head.length, file.length);
System.arraycopy(tail, 0, payload, head.length + file.length, tail.length);
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/cells/excel?warehouseId=1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.header("Content-Type", "multipart/form-data; boundary=" + boundary)
.method("POST", HttpRequest.BodyPublishers.ofByteArray(payload))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
ImportResult
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
created |
integer · int32 | Нет | Поле created. |
updated |
integer · int32 | Нет | Поле updated. |
{
"created": 1,
"updated": 1
}Ошибки16
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_cells_excel_conflictПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cells_excel_conflict; localMessage содержит приведённый выше перевод.
error_cells_excel_dimensionsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cells_excel_dimensions; localMessage содержит приведённый выше перевод.
error_cells_excel_failedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cells_excel_failed; localMessage содержит приведённый выше перевод.
error_cells_excel_id_invalidПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cells_excel_id_invalid; localMessage содержит приведённый выше перевод.
error_cells_excel_limitПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cells_excel_limit; localMessage содержит приведённый выше перевод.
error_cells_excel_parentПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cells_excel_parent; localMessage содержит приведённый выше перевод.
error_cells_excel_rowПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cells_excel_row; localMessage содержит приведённый выше перевод.
error_incorrect_excelПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_incorrect_excel; localMessage содержит приведённый выше перевод.
error_max_upload_size_exceededПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_max_upload_size_exceeded; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
error_warehouse_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_warehouse_not_found; localMessage содержит приведённый выше перевод.
Создать склад
/api/warehouse/Создает новый склад клиента
Тело запроса
application/jsonПоля объектаWarehouse
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Название склада | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Маркетплейс к которому относится склад или null если склад клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationId |
integer · int64 | Нет | Организация склада для реквизитов в накладных и тп | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationIds |
integer[] | Нет | Все организации склада, первая из них основная и совпадает с organizationId | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fboOrganizationId |
integer · int64 | Нет | Организация, к которой относится данный склад (FBO) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCellId |
integer · int32 | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCell |
Cell | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
refundCellIdorganization
Поля объекта
Organization
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор организации. Проставляется автоматически | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Да | Полное наименование организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
shortName |
string | Нет | Поле shortName. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxType |
stringYSN, YSN_CONSUMPTION, AUSN, AUSN_CONSUMPTION, OSNO, SELF_EMPLOYED, YSN_GENERAL | Нет | Система налогооблажения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxRate |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxNds |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inputTaxNds |
integer · int32 | Нет | Ставка входящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
outputTaxNds |
integer · int32 | Нет | Ставка исходящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enableNewTaxCalculation |
boolean | Нет | Включить расчет налогов по новым правилам | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
useNdsCostPrice |
boolean | Нет | Учитывать входящий НДС в себестоимости | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inn |
string | Да | ИНН | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
kpp |
string | Нет | КПП. Проставляется только для ООО | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bank |
string | Нет | Название банка | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bik |
string | Нет | БИК счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
corrBill |
string | Нет | Номер корреспондентского счета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
billNumber |
string | Нет | Номер счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampPath |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampUrl |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampSize |
integer · int32 | Нет | Размер в байтах изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampWidth |
integer · int32 | Нет | Ширина изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampHeight |
integer · int32 | Нет | Высота изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampFileName |
string | Нет | Имя исходного файла печати | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signaturePath |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureUrl |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureFileName |
string | Нет | Имя исходного файла подписи | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerName |
string | Нет | ФИО подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerPosition |
string | Нет | Должность подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureSize |
integer · int32 | Нет | Размер файла в байтах подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureWidth |
integer · int32 | Нет | Ширина изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureHeight |
integer · int32 | Нет | Высота изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ipPerson |
Person | Нет | Руководитель организации или ИП | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
personId |
integer · int64 | Нет | Поле personId. |
firstName |
string | Да | Имя сотрудника |
lastName |
string | Да | Фамилия сотрудника |
surName |
string | Нет | Отчество сотрудника |
clientId |
integer · int64 | Нет | Идентификатор клиента |
position |
PersonPosition | Да | Должность сотрудника |
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи |
createdUser |
string | Нет | Проставляется автоматически. Пользователь создавший сотрудника |
createdDate |
string · date-time | Нет | Проставляется автоматически. Дата создания сотрудника |
deleted |
boolean | Нет | Признак удаления сотрудника |
userId |
integer · int32 | Нет | Связь сотрудника с пользователем |
hasChanges |
boolean | Нет | Поле hasChanges. |
fullName |
string | Нет | Полные ФИО |
shortName |
string | Нет | Фамилия и инициалы |
formipclientIdaddress
Поля объекта
Address
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
postCode |
string | Нет | Поле postCode. |
country |
Country | Нет | Поле country. |
region |
Region | Нет | Поле region. |
regionId |
integer · int32 | Нет | Поле regionId. |
street |
string | Нет | Поле street. |
house |
string | Нет | Поле house. |
district |
string | Нет | Поле district. |
city |
string | Нет | Поле city. |
locality |
string | Нет | Поле locality. |
building |
string | Нет | Поле building. |
flat |
string | Нет | Поле flat. |
short |
string | Нет | Поле short. |
addressId |
Address | Нет | Поле addressId. |
full |
string | Нет | Поле full. |
phoneNumberaddressFullsamplepriorityuseForOrderclientIdexternalNamenotSyncStocksignoreOrderspassages
Структура элемента массива
Passage
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||
racks |
Rack[] | Нет | Стелажи этого прохода | ||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
name |
string | Нет | Поле name. |
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
passageId |
integer · int32 | Нет | Поле passageId. |
deleted |
boolean | Нет | Поле deleted. |
clientId |
integer · int64 | Нет | Поле clientId. |
shelves |
Shelf[] | Нет | Поле shelves. |
warehouseServices
Структура элемента массива
ServiceWarehouse
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Проставляется автоматически при создании |
name |
string | Да | Название внешнего склада, можно подставлять ID |
externalId |
string | Да | Идентификатор склада во внешней системе для связи остатков |
warehouseId |
integer · int64 | Да | Склад SelSup |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис для которого устанавливается связь |
organizationId |
integer · int64 | Да | Организация SelSup |
serviceOrganizationId |
integer · int64 | Нет | Идентификатор организации во внешней системе |
deliveriesdeletedcaptiondurationHoursreservationDaysscheduleurAddresscitylongitudelatitudewarehouseServiceIdwarehouseTypedescriptioninnkppplaceOfBusinessFiasIdpaymentAccounttelephoneregionNameregion
Поля объекта
Region
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
regionId |
integer · int32 | Нет | Поле regionId. | ||||||||||||||||||||
countryId |
integer · int32 | Нет | Поле countryId. | ||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||
regionSynonyms |
RegionSynonym[] | Нет | Поле regionSynonyms. | ||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
regionId |
integer · int64 | Нет | Поле regionId. |
synonym |
string | Нет | Поле synonym. |
service |
string | Нет | Поле service. |
regionIdisPrepayOnlineisCashisCardisGoodsActiveorgIdaddresscurl --request POST 'https://api.selsup.ru/api/warehouse/' \
--header 'Authorization: YOUR_API_TOKEN' \
--header 'Content-Type: application/json' \
--data '{
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}'
const response = await fetch('https://api.selsup.ru/api/warehouse/', {
method: 'POST',
headers: {
Authorization: process.env.SELSUP_API_TOKEN,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}),
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/', {
method: 'POST',
headers: {
Authorization: process.env.SELSUP_API_TOKEN!,
'Content-Type': 'application/json',
},
body: JSON.stringify({
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}),
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.post(
'https://api.selsup.ru/api/warehouse/',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
json={
'id': 1001,
'name': 'Example',
'service': 'NONE',
'organizationId': 1001,
'organizationIds': 'string',
'fboOrganizationId': 1001
},
)
response.raise_for_status()
result = response.json()
<?php
$payload = <<<'JSON'
{
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}
JSON;
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/',
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN'), 'Content-Type: application/json'],
CURLOPT_POSTFIELDS => $payload,
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
"strings"
)
func main() {
req, err := http.NewRequest("POST", "https://api.selsup.ru/api/warehouse/", strings.NewReader(`{
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}`))
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
req.Header.Set("Content-Type", "application/json")
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.header("Content-Type", "application/json")
.method("POST", HttpRequest.BodyPublishers.ofString("""
{
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}
"""))
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Warehouse
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Название склада | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Маркетплейс к которому относится склад или null если склад клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationId |
integer · int64 | Нет | Организация склада для реквизитов в накладных и тп | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationIds |
integer[] | Нет | Все организации склада, первая из них основная и совпадает с organizationId | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fboOrganizationId |
integer · int64 | Нет | Организация, к которой относится данный склад (FBO) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCellId |
integer · int32 | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCell |
Cell | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
refundCellIdorganization
Поля объекта
Organization
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор организации. Проставляется автоматически | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Да | Полное наименование организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
shortName |
string | Нет | Поле shortName. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxType |
stringYSN, YSN_CONSUMPTION, AUSN, AUSN_CONSUMPTION, OSNO, SELF_EMPLOYED, YSN_GENERAL | Нет | Система налогооблажения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxRate |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxNds |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inputTaxNds |
integer · int32 | Нет | Ставка входящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
outputTaxNds |
integer · int32 | Нет | Ставка исходящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enableNewTaxCalculation |
boolean | Нет | Включить расчет налогов по новым правилам | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
useNdsCostPrice |
boolean | Нет | Учитывать входящий НДС в себестоимости | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inn |
string | Да | ИНН | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
kpp |
string | Нет | КПП. Проставляется только для ООО | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bank |
string | Нет | Название банка | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bik |
string | Нет | БИК счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
corrBill |
string | Нет | Номер корреспондентского счета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
billNumber |
string | Нет | Номер счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampPath |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampUrl |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampSize |
integer · int32 | Нет | Размер в байтах изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampWidth |
integer · int32 | Нет | Ширина изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampHeight |
integer · int32 | Нет | Высота изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampFileName |
string | Нет | Имя исходного файла печати | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signaturePath |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureUrl |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureFileName |
string | Нет | Имя исходного файла подписи | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerName |
string | Нет | ФИО подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerPosition |
string | Нет | Должность подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureSize |
integer · int32 | Нет | Размер файла в байтах подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureWidth |
integer · int32 | Нет | Ширина изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureHeight |
integer · int32 | Нет | Высота изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ipPerson |
Person | Нет | Руководитель организации или ИП | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
personId |
integer · int64 | Нет | Поле personId. |
firstName |
string | Да | Имя сотрудника |
lastName |
string | Да | Фамилия сотрудника |
surName |
string | Нет | Отчество сотрудника |
clientId |
integer · int64 | Нет | Идентификатор клиента |
position |
PersonPosition | Да | Должность сотрудника |
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи |
createdUser |
string | Нет | Проставляется автоматически. Пользователь создавший сотрудника |
createdDate |
string · date-time | Нет | Проставляется автоматически. Дата создания сотрудника |
deleted |
boolean | Нет | Признак удаления сотрудника |
userId |
integer · int32 | Нет | Связь сотрудника с пользователем |
hasChanges |
boolean | Нет | Поле hasChanges. |
fullName |
string | Нет | Полные ФИО |
shortName |
string | Нет | Фамилия и инициалы |
formipclientIdaddress
Поля объекта
Address
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
postCode |
string | Нет | Поле postCode. |
country |
Country | Нет | Поле country. |
region |
Region | Нет | Поле region. |
regionId |
integer · int32 | Нет | Поле regionId. |
street |
string | Нет | Поле street. |
house |
string | Нет | Поле house. |
district |
string | Нет | Поле district. |
city |
string | Нет | Поле city. |
locality |
string | Нет | Поле locality. |
building |
string | Нет | Поле building. |
flat |
string | Нет | Поле flat. |
short |
string | Нет | Поле short. |
addressId |
Address | Нет | Поле addressId. |
full |
string | Нет | Поле full. |
phoneNumberaddressFullsamplepriorityuseForOrderclientIdexternalNamenotSyncStocksignoreOrderspassages
Структура элемента массива
Passage
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||
racks |
Rack[] | Нет | Стелажи этого прохода | ||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
name |
string | Нет | Поле name. |
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
passageId |
integer · int32 | Нет | Поле passageId. |
deleted |
boolean | Нет | Поле deleted. |
clientId |
integer · int64 | Нет | Поле clientId. |
shelves |
Shelf[] | Нет | Поле shelves. |
warehouseServices
Структура элемента массива
ServiceWarehouse
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Проставляется автоматически при создании |
name |
string | Да | Название внешнего склада, можно подставлять ID |
externalId |
string | Да | Идентификатор склада во внешней системе для связи остатков |
warehouseId |
integer · int64 | Да | Склад SelSup |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис для которого устанавливается связь |
organizationId |
integer · int64 | Да | Организация SelSup |
serviceOrganizationId |
integer · int64 | Нет | Идентификатор организации во внешней системе |
deliveriesdeletedcaptiondurationHoursreservationDaysscheduleurAddresscitylongitudelatitudewarehouseServiceIdwarehouseTypedescriptioninnkppplaceOfBusinessFiasIdpaymentAccounttelephoneregionNameregion
Поля объекта
Region
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
regionId |
integer · int32 | Нет | Поле regionId. | ||||||||||||||||||||
countryId |
integer · int32 | Нет | Поле countryId. | ||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||
regionSynonyms |
RegionSynonym[] | Нет | Поле regionSynonyms. | ||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
regionId |
integer · int64 | Нет | Поле regionId. |
synonym |
string | Нет | Поле synonym. |
service |
string | Нет | Поле service. |
regionIdisPrepayOnlineisCashisCardisGoodsActiveorgIdaddress{
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}Ошибки27
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_base_creatingПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_base_creating; localMessage содержит приведённый выше перевод.
error_cabinet_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cabinet_access_denied; localMessage содержит приведённый выше перевод.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_duplicate_warehouse_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_duplicate_warehouse_name; localMessage содержит приведённый выше перевод.
error_empty_first_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_first_name; localMessage содержит приведённый выше перевод.
error_empty_last_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_last_name; localMessage содержит приведённый выше перевод.
error_empty_organization_formПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_form; localMessage содержит приведённый выше перевод.
error_empty_organization_innПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_inn; localMessage содержит приведённый выше перевод.
error_empty_organization_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_name; localMessage содержит приведённый выше перевод.
error_empty_position_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_position_name; localMessage содержит приведённый выше перевод.
error_empty_warehouse_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_warehouse_name; localMessage содержит приведённый выше перевод.
error_map_directory_published_location_invalidПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_map_directory_published_location_invalid; localMessage содержит приведённый выше перевод.
error_max_pageПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_max_page; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_organization_create_failedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_create_failed; localMessage содержит приведённый выше перевод.
error_organization_existsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_exists; localMessage содержит приведённый выше перевод.
error_organization_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_not_found; localMessage содержит приведённый выше перевод.
error_position_existsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_position_exists; localMessage содержит приведённый выше перевод.
error_reloadПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_reload; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
error_warehouse_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_warehouse_not_found; localMessage содержит приведённый выше перевод.
error_warehouses_limit_exceededПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_warehouses_limit_exceeded; localMessage содержит приведённый выше перевод.
error_wrong_innПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_wrong_inn; localMessage содержит приведённый выше перевод.
error_wrong_versionПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_wrong_version; localMessage содержит приведённый выше перевод.
Получить структуру склада
/api/warehouse/{warehouseId}/structureВозвращает проходы склада с вложенными стеллажами и полками
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
warehouseId |
integer · int64 | Да | Поле warehouseId. |
curl --request GET 'https://api.selsup.ru/api/warehouse/1001/structure' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/1001/structure', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/1001/structure', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/1001/structure',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/1001/structure',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/1001/structure", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/1001/structure"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Warehouse
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Название склада | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Маркетплейс к которому относится склад или null если склад клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationId |
integer · int64 | Нет | Организация склада для реквизитов в накладных и тп | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationIds |
integer[] | Нет | Все организации склада, первая из них основная и совпадает с organizationId | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fboOrganizationId |
integer · int64 | Нет | Организация, к которой относится данный склад (FBO) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCellId |
integer · int32 | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCell |
Cell | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
refundCellIdorganization
Поля объекта
Organization
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор организации. Проставляется автоматически | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Да | Полное наименование организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
shortName |
string | Нет | Поле shortName. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxType |
stringYSN, YSN_CONSUMPTION, AUSN, AUSN_CONSUMPTION, OSNO, SELF_EMPLOYED, YSN_GENERAL | Нет | Система налогооблажения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxRate |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxNds |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inputTaxNds |
integer · int32 | Нет | Ставка входящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
outputTaxNds |
integer · int32 | Нет | Ставка исходящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enableNewTaxCalculation |
boolean | Нет | Включить расчет налогов по новым правилам | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
useNdsCostPrice |
boolean | Нет | Учитывать входящий НДС в себестоимости | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inn |
string | Да | ИНН | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
kpp |
string | Нет | КПП. Проставляется только для ООО | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bank |
string | Нет | Название банка | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bik |
string | Нет | БИК счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
corrBill |
string | Нет | Номер корреспондентского счета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
billNumber |
string | Нет | Номер счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampPath |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampUrl |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampSize |
integer · int32 | Нет | Размер в байтах изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampWidth |
integer · int32 | Нет | Ширина изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampHeight |
integer · int32 | Нет | Высота изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampFileName |
string | Нет | Имя исходного файла печати | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signaturePath |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureUrl |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureFileName |
string | Нет | Имя исходного файла подписи | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerName |
string | Нет | ФИО подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerPosition |
string | Нет | Должность подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureSize |
integer · int32 | Нет | Размер файла в байтах подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureWidth |
integer · int32 | Нет | Ширина изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureHeight |
integer · int32 | Нет | Высота изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ipPerson |
Person | Нет | Руководитель организации или ИП | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
personId |
integer · int64 | Нет | Поле personId. |
firstName |
string | Да | Имя сотрудника |
lastName |
string | Да | Фамилия сотрудника |
surName |
string | Нет | Отчество сотрудника |
clientId |
integer · int64 | Нет | Идентификатор клиента |
position |
PersonPosition | Да | Должность сотрудника |
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи |
createdUser |
string | Нет | Проставляется автоматически. Пользователь создавший сотрудника |
createdDate |
string · date-time | Нет | Проставляется автоматически. Дата создания сотрудника |
deleted |
boolean | Нет | Признак удаления сотрудника |
userId |
integer · int32 | Нет | Связь сотрудника с пользователем |
hasChanges |
boolean | Нет | Поле hasChanges. |
fullName |
string | Нет | Полные ФИО |
shortName |
string | Нет | Фамилия и инициалы |
formipclientIdaddress
Поля объекта
Address
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
postCode |
string | Нет | Поле postCode. |
country |
Country | Нет | Поле country. |
region |
Region | Нет | Поле region. |
regionId |
integer · int32 | Нет | Поле regionId. |
street |
string | Нет | Поле street. |
house |
string | Нет | Поле house. |
district |
string | Нет | Поле district. |
city |
string | Нет | Поле city. |
locality |
string | Нет | Поле locality. |
building |
string | Нет | Поле building. |
flat |
string | Нет | Поле flat. |
short |
string | Нет | Поле short. |
addressId |
Address | Нет | Поле addressId. |
full |
string | Нет | Поле full. |
phoneNumberaddressFullsamplepriorityuseForOrderclientIdexternalNamenotSyncStocksignoreOrderspassages
Структура элемента массива
Passage
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||
racks |
Rack[] | Нет | Стелажи этого прохода | ||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
name |
string | Нет | Поле name. |
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
passageId |
integer · int32 | Нет | Поле passageId. |
deleted |
boolean | Нет | Поле deleted. |
clientId |
integer · int64 | Нет | Поле clientId. |
shelves |
Shelf[] | Нет | Поле shelves. |
warehouseServices
Структура элемента массива
ServiceWarehouse
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Проставляется автоматически при создании |
name |
string | Да | Название внешнего склада, можно подставлять ID |
externalId |
string | Да | Идентификатор склада во внешней системе для связи остатков |
warehouseId |
integer · int64 | Да | Склад SelSup |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис для которого устанавливается связь |
organizationId |
integer · int64 | Да | Организация SelSup |
serviceOrganizationId |
integer · int64 | Нет | Идентификатор организации во внешней системе |
deliveriesdeletedcaptiondurationHoursreservationDaysscheduleurAddresscitylongitudelatitudewarehouseServiceIdwarehouseTypedescriptioninnkppplaceOfBusinessFiasIdpaymentAccounttelephoneregionNameregion
Поля объекта
Region
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
regionId |
integer · int32 | Нет | Поле regionId. | ||||||||||||||||||||
countryId |
integer · int32 | Нет | Поле countryId. | ||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||
regionSynonyms |
RegionSynonym[] | Нет | Поле regionSynonyms. | ||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
regionId |
integer · int64 | Нет | Поле regionId. |
synonym |
string | Нет | Поле synonym. |
service |
string | Нет | Поле service. |
regionIdisPrepayOnlineisCashisCardisGoodsActiveorgIdaddress{
"id": 1001,
"name": "Example",
"service": "NONE",
"organizationId": 1001,
"organizationIds": "string",
"fboOrganizationId": 1001
}Ошибки8
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_cell_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_not_found; localMessage содержит приведённый выше перевод.
error_fulfillment_client_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_fulfillment_client_access_denied; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_warehouse_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_warehouse_not_found; localMessage содержит приведённый выше перевод.
Сортировка ячеек определенного склада
/api/warehouse/{warehouseId}/sortСортировка ячеек определенного склада.
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
warehouseId |
integer · int64 | Да | Поле warehouseId. |
curl --request GET 'https://api.selsup.ru/api/warehouse/1001/sort' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/1001/sort', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/1001/sort', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/1001/sort',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/1001/sort',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/1001/sort", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/1001/sort"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200Тело ответа пустое.
Ошибки5
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
Получить заполненность ячеек склада
/api/warehouse/{warehouseId}/occupancyВозвращает заполненность каждой ячейки склада товарами в процентах от объёма ячейки, а также сводку по свободному объёму и количеству свободных и занятых ячеек. Отчёт можно сузить до прохода, стеллажа или полки
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
warehouseId |
integer · int64 | Да | Поле warehouseId. |
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
passageId |
integer · int32 | Нет | Поле passageId. |
rackId |
integer · int32 | Нет | Поле rackId. |
shelfId |
integer · int32 | Нет | Поле shelfId. |
curl --request GET 'https://api.selsup.ru/api/warehouse/1001/occupancy' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/1001/occupancy', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/1001/occupancy', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/1001/occupancy',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/1001/occupancy',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/1001/occupancy", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/1001/occupancy"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
WarehouseOccupancy
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
warehouseId |
integer · int64 | Нет | Склад, по которому построен отчёт | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
totalVolume |
number · double | Нет | Суммарный объём ячеек в кубических метрах. Учитываются только ячейки с заданными габаритами | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
usedVolume |
number · double | Нет | Суммарный занятый товарами объём в кубических метрах. Учитываются только ячейки с заданными габаритами | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
freeVolume |
number · double | Нет | Свободный объём в кубических метрах | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fillPercent |
integer · int32 | Нет | Процент заполнения склада от 0 до 100 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cellsTotal |
integer · int32 | Нет | Общее количество ячеек в отчёте | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cellsOccupied |
integer · int32 | Нет | Количество ячеек, в которых лежит товар | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cellsFree |
integer · int32 | Нет | Количество пустых ячеек | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cellsWithoutDimensions |
integer · int32 | Нет | Количество ячеек без заданных габаритов. Такие ячейки не участвуют в расчёте объёма | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cellsWithIncompleteProductData |
integer · int32 | Нет | Количество ячеек, в которых у части товаров не заданы габариты упаковки | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cells |
CellOccupancy[] | Нет | Заполненность каждой ячейки | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
cellId |
integer · int32 | Нет | Идентификатор ячейки |
fullName |
string | Нет | Полное название ячейки из названий прохода, стеллажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки |
passageId |
integer · int32 | Нет | Проход, к которому относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
shelfId |
integer · int32 | Нет | Полка, к которой относится ячейка |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
cellVolume |
number · double | Нет | Объём ячейки в кубических метрах. Не заполнен, если у ячейки не заданы габариты |
usedVolume |
number · double | Нет | Занятый товарами объём ячейки в кубических метрах. Не заполнен, если у ячейки не заданы габариты |
fillPercent |
integer · int32 | Нет | Процент заполнения ячейки от 0 до 100. Не заполнен, если у ячейки не заданы габариты |
productsCount |
integer · int32 | Нет | Количество разных товаров в ячейке |
unitsCount |
integer · int32 | Нет | Общее количество единиц товара в ячейке |
incompleteProductData |
boolean | Нет | Признак того, что у части товаров в ячейке не заданы габариты упаковки, поэтому занятый объём занижен |
{
"warehouseId": 1001,
"totalVolume": 1,
"usedVolume": 1,
"freeVolume": 1,
"fillPercent": 1,
"cellsTotal": 1
}Ошибки3
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
Получить зоны хранения
/api/warehouse/storage-zonesПолучить зоны хранения.
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
curl --request GET 'https://api.selsup.ru/api/warehouse/storage-zones' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/storage-zones', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/storage-zones', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/storage-zones',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/storage-zones',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/storage-zones", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/storage-zones"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Структура элемента массива
StorageZone[]
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cellIds |
integer[] | Нет | Поле cellIds. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
productIds |
integer[] | Нет | Поле productIds. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
products |
Product[] | Нет | Поле products. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор товара. Проставляется автоматически | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
productType |
stringPRODUCT, SET, SERVICE, DIGITAL, CONTAINER | Нет | Тип товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Да | Наименование товара внутреннее | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Признак удаления товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
printName |
string | Нет | Название товара для внешних сервисов. Если не задано, проставляется равным наименованию товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
realSize |
string | Нет | Российский размер товара для одежды или характеристики для других категорий | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
vendorSize |
string | Нет | Размер производителя или характеристики производителя. Не обязательно заполнять | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
size |
string | Нет | Размер для одежды или характеристики для внешних сервисов. Должен быть уникальным в рамках цвета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesStockCount |
integer · int32 | Нет | Остатки товара на Вайлдбериз | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonRealFbs |
boolean | Нет | Признак использования RealFbs для товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonStockCount |
integer · int32 | Нет | Остаток товара на складах Озон | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonStockBetweenWarehouses |
integer · int32 | Нет | Остаток товара в Озон, которые перемещаются между складами | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
removeFbsStock |
boolean | Нет | Не выгружать остатки товара на маркетплейсы | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noStockSync |
boolean | Нет | Не синхронизировать остатки: товар полностью исключается из передачи остатков на все маркетплейсы, текущий остаток на МП не изменяется | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
excludeCalculatedStockFromFbs |
boolean | Нет | Не отправлять рассчитанный остаток комплекта на склады FBS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
purchaseCurrency |
stringRUB, USD, EUR, AUD, AZN, GBP, AMD, BYN, BGN, BRL, HUF, VND, HKD, GEL, DKK, AED, EGP, INR, IDR, KZT, CAD, QAR, KGS, CNY, MDL, NZD, NOK, PLN, RON, XDR, SGD, TJS, THB, TRY, TMT, UZS, UAH, CZK, SEK, CHF, RSD, ZAR, KRW, JPY | Нет | Валюта закупочной цены товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
purchasePriceInCurrency |
number · double | Нет | Цена закупки в валюте | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deliveryCostInCurrency |
number · double | Нет | Цена на доставку в валюте | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
createdDate |
string · date-time | Нет | Дата создания товара на МП | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
created |
string · date-time | Нет | Дата создания товара в SelSup | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
createdUser |
string | Нет | Пользователь, который создал товар | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sourceIncomeItemId |
integer · int64 | Нет | Идентификатор товара из заказа поставщика по данным которого был создан товар | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
sourceProductId |
integer · int64 | Нет | Идентификатор товара, который копировали | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentJobIds |
integer[] | Нет | Поле fulfillmentJobIds. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonRequiredStock |
integer · int32 | Нет | Расчитанное количество товара, для поставки на склад Озон | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesRequiredStock |
integer · int32 | Нет | Расчитанное количество товара, для поставки на склад Wildberries | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesProfit |
number · double | Нет | Профит с продажи товара на Вайлдбериз по FBM | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesProfitFbs |
number · double | Нет | Профит с продажи товара на Вайлдбериз по FBS | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesOrderQuantity |
integer · int32 | Нет | Количество заказов по FBO товара на Вайлдбериз за 2 недели | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesSupplyingQuantity |
integer · int32 | Нет | Поставляемое количество товара на Вайлдбериз по FBM заказам | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesQuantityInWayToClient |
integer · int32 | Нет | Поставляемое количество товара на Вайлдбериз по FBM заказам к клиенту | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesQuantityInWayFromClient |
integer · int32 | Нет | Поставляемое количество товара на Вайлдбериз по FBM заказам от клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesSaleQuantity |
integer · int32 | Нет | Продажи товара на Вайлдбериз по FBM за 2 недели | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesQuantityInWay |
integer · int32 | Нет | Количество товаров на Вайлдбериз в пути | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
wildberriesNoSale |
boolean | Нет | Признак неликвидного товара на Вайлдбериз | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
lastStockChange |
string · date-time | Нет | Дата последнего изменения стока на Вайлдбериз по FBM | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonOrderQuantity |
integer · int32 | Нет | Количество заказов товара по FBO на Озон по FBM и FBS за 2 недели | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonSupplyingQuantity |
integer · int32 | Нет | Поставляемое количество товара на Озон по FBM | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ozonProfit |
integer · int32 | Нет | Чистая маржа продажи товара на Озон по FBM | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
instockQuantity |
integer · int32 | Нет | Остатки товара на складах клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
instockQuantityValue |
number · double | Нет | Остатки товара на складах клиента в пользовательской единице измерения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stockUnit |
stringPCS, G, KG, ML, L | Нет | Единица измерения остатка товара для интерфейса и внешних интеграций | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
calculatedInStockQuantity |
integer · int32 | Нет | Рассчитанный остаток | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
calculatedInStockQuantityValue |
number · double | Нет | Рассчитанный остаток в пользовательской единице измерения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Идентификатор клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationId |
integer · int64 | Да | Идентификатор организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
productViewId |
integer · int64 | Нет | Идентификатор цвета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
view |
ProductView | Нет | Информация о цвете товара | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
color |
string | Нет | Артикул цвета |
wbArticle |
string | Нет | Артикул карточки Wildberries |
needKiz |
boolean | Нет | Требуется ли обязательная маркировка по данным Wildberries |
id |
integer · int64 | Нет | Идентификатор цвета. Проставляется автоматически |
images |
ProductImage[] | Нет | Список изображений товара |
videos |
ProductVideo[] | Нет | Список видео товара |
productModelId |
integer · int64 | Нет | Идентификатор модели |
model |
ProductModel | Нет | Модель, к которой относится цвет |
actual |
boolean | Нет | Актуальность цвета - нужно ли его показывать в заказах поставщикам |
mainImage |
ProductImage | Нет | Основное изображение товара |
mainImageId |
integer · int64 | Нет | Поле mainImageId. |
mainImageUrl |
string | Нет | Ссылка на основное изображение на маркетплейсе |
imageUrls |
string | Нет | Ссылка на изображения |
imagesUpdatedAt |
string · date-time | Нет | Дата/время последнего изменения фотографий |
image360Urls |
string | Нет | Ссылка на изображения 360 |
wildberriesId |
integer · int64 | Нет | Числовой идентификатор номенклатуры Wildberries, nmId |
createdDate |
string · date-time | Нет | Дата создания цвета |
createdUser |
string | Нет | Пользователь, создавший цвет |
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи |
clientId |
integer · int64 | Нет | Идентификатор клиента |
deleted |
boolean | Нет | Признак удаления цвета |
keywords |
string | Нет | Ключевые слова - сейчас не используется, перенесены в модель |
wildberriesRating |
number · double | Нет | Рейтинг карточки на Вайлдбериз |
wildberriesFeedbacks |
integer · int32 | Нет | Количество отзывов на карточке на Вайлдбериз |
wbRaiting |
number · double | Нет | Рейтинг карточки на Вайлдбериз |
wbFeedbackCount |
integer · int32 | Нет | Количество отзывов на карточке на Вайлдбериз |
wbPriceWithSpp |
number · double | Нет | Цена карточки на Вайлдбериз с учетом СПП, руб. |
wildberriesCardDoesNotOpen |
boolean | Нет | Признак, что карточка не открывается на Вайлдбериз |
wildberriesHasPhoto |
boolean | Нет | Признак наличия фото на Wildberries |
organizationId |
integer · int64 | Нет | Организация карточки |
params |
string | Нет | JSON со значениями параметров цвета |
additionalInfo |
string | Нет | Дополнительная информация для цвета |
values |
ParamValue[] | Нет | Значения параметров карточки. Отдаются при запросе модели, если передать params=true |
viewSourceId |
integer · int64 | Нет | Оригинал цвета по SKU |
sizes |
Product[] | Да | Список размеров для цвета |
hasChanges |
boolean | Нет | Признак изменения информации о цвете и необходимости его обновить |
viewWbArticle |
ProductView | Нет | Поле viewWbArticle. |
viewVersionId |
integer · int64 | Нет | Поле viewVersionId. |
suzIdcisTypenotChangedStockcardExchanges
Структура элемента массива
ProductCardExchange
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Сервис |
status |
stringWAITING_TO_SEND, SENT, ACCEPTED, ERROR | Нет | Поле status. |
lastAttemptAt |
string · date-time | Нет | Поле lastAttemptAt. |
errorSource |
stringSELSUP, MARKETPLACE | Нет | Поле errorSource. |
message |
string | Нет | Поле message. |
messageParams |
string | Нет | Поле messageParams. |
wildberriesStatuswildberriesMessagewildberriesMessageParamsnationalCatalogStatusnationalCatalogMessagenationalCatalogMessageParamsozonStatusozonMessageozonMessageParamsozonTaskIdwildberriesFbsOrdersQuantityozonFbsOrdersQuantityymarketFbsOrdersQuantitytotalSupplyingQuantityskuIdsku
Поля объекта
Sku
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
product |
Product | Нет | Первый товар из которого был создан SKU |
productId |
integer · int64 | Нет | Поле productId. |
barcodes
Структура элемента массива
ProductBarcode
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
barcode |
string | Нет | Поле barcode. |
primaryBarcode |
boolean | Нет | Основной штрих-код для отображения товара |
organizationId |
integer · int64 | Нет | Организация, если client.barcodeUniqForOrg = false, то проставляется 0. Поле включено в уникальный ключ |
clientId |
integer · int64 | Нет | Поле clientId. |
productId |
integer · int64 | Нет | Поле productId. |
useInWildberries |
boolean | Нет | Применим ли данный штрих-код для Вайлдбериз |
useInOzon |
boolean | Нет | Применим ли данный штрих-код для Озон |
useInYandexMarket |
boolean | Нет | Применим ли данный штрих-код для Yandex.Market |
useInAliexpress |
boolean | Нет | Применим ли данный штрих-код для Aliexpress |
useInSberMegamarket |
boolean | Нет | Применим ли данный штрих-код для Sber.MegaMarket |
useInWoocom |
boolean | Нет | Применим ли данный штрих-код для WooCommerce |
format |
string | Нет | Поле format. |
serviceProducts
Структура элемента массива
ServiceProduct
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
serviceProductId |
integer · int64 | Нет | Идентификатор продукта сервиса |
productId |
integer · int64 | Нет | Идентификатор продукта |
serviceId |
integer · int32 | Нет | Идентификатор сервиса |
serviceListingId |
integer · int64 | Нет | Идентификатор листинга на сервисе |
serviceCardId |
integer · int64 | Нет | Поле serviceCardId. |
fboStock |
integer · int32 | Нет | Остаток на ФБО складах |
lastRepricerPriceStatus |
stringNONE, SUCCESS, ERROR | Нет | Последний статус обновления цены через репрайсер |
errorMessage |
string | Нет | Ошибка при установки цены через репрайсер |
serviceCard |
string | Нет | Идентификатор карточки на сервисе |
serviceCardProduct |
string | Нет | Идентификатор товара на сервисе |
serviceCardUrl |
string | Нет | Ссылка на карточку на сервисе (если несколько товаров отображаются) |
serviceProductUrl |
string | Нет | Ссылка на товар селлера на сервисе |
serviceBarcode |
string | Нет | Штрих код на сервисе |
fboCommissions |
number · double | Нет | Комиссия ФБО |
fbsCommissions |
number · double | Нет | Комиссия ФБС |
purchasePercent |
number · double | Нет | Процент выкупа |
serviceArticle |
string | Нет | Артикул на сервисе |
clientId |
integer · int64 | Нет | Идентификатор клиента |
organizationId |
integer · int64 | Нет | Идентификатор организации |
fieldsToClear |
string[] | Нет | Поля связи, которые нужно очистить при обновлении |
siteArticlesiteIdparamsvalues
Структура элемента массива
ParamValue
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
paramId |
integer · int64 | Да | Идентификатор параметра |
paramName |
string | Нет | Название параметра, для тех, у кого нет ID |
option |
Option | Нет | Значение перечислимого параметра |
doubleValue |
number · double | Нет | Числовое значение параметра |
longValue |
integer · int64 | Нет | Целочисленное значение параметра |
booleanValue |
boolean | Нет | Булево значение параметра |
stringValue |
string | Нет | Строковое значение параметра |
dateValue |
string · date-time | Нет | Значение параметра даты |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Привязка к сервису параметра |
unit |
Unit | Нет | Единица измерения для параметра |
auto |
boolean | Нет | Автоматически проставленное значение параметра |
created |
integer · int64 | Нет | Дата заполнения параметра |
user |
string | Нет | Пользователь, который заполнил параметр |
locked |
boolean | Нет | Значение зафиксировано и не должно изменяться при импорте карточек с маркетплейса |
groupduplicateshasChangesignoreDuplicateyandexMarketStockCountgroupIdyandexMarketStatusyandexMarketMessageyandexMarketMessageParamsduplicateozonHasPhotoaliexpressStatusaliexpressMessagealiexpressMessageParamsmoySkladTypemoySkladStatusavitoStatusmoySkladMessagemoySkladMessageParamsremoveFbsStockOzonremoveFbsStockWbremoveFbsStockAliremoveFbsStockYmremoveFbsStockSberquantityincomeQuantityorderMinDateexpiredDateproductionDatestockstockValuestockscell
Поля объекта
Cell
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
reservedreservedValuecalculatedStockcalculatedStockValuepricecompetitors
Структура элемента массива
Competitor
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | ID конкурента |
modelId |
integer · int64 | Нет | ID модели, для которой указывается конкурент |
productId |
integer · int64 | Нет | ID конкретного товара, для которого указывается конкурент |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Маркетплейс конкурента |
url |
string | Да | URL карточки конкурента на маркетплейсе |
serviceId |
string | Нет | ID карточки конкурента на сайте маркетплейса |
clientId |
integer · int64 | Нет | ID клиента |
latestPrice |
number · double | Нет | Последняя собранная цена |
currency |
stringRUB, USD, EUR, AUD, AZN, GBP, AMD, BYN, BGN, BRL, HUF, VND, HKD, GEL, DKK, AED, EGP, INR, IDR, KZT, CAD, QAR, KGS, CNY, MDL, NZD, NOK, PLN, RON, XDR, SGD, TJS, THB, TRY, TMT, UZS, UAH, CZK, SEK, CHF, RSD, ZAR, KRW, JPY | Нет | Валюта последней цены |
latestPriceDate |
string · date-time | Нет | Дата сбора последней цены |
averageCompetitorPricecompetitorPriceCurrencyupdatedPricepriceWithoutDiscountupdatedPriceWithoutDiscountupdatedDeliveryCostupdatedPurchasePricepurchasePriceisPurchasePriceUpdatedisDeliveryCostUpdatedwholesalePricedeliveryCoststrategyIdozonAverageExpenseswildberriesAverageExpensesyandexMarketAverageExpenseswildberriesSaleminPriceozonPromotionPriceozonAcquiringPercentozonComissonsberMegaMarketSupplyingQuantityyandexMarketSupplyingQuantitysalesExpensesOnMpPercentsalesCountCoefficientmeasureUnitIdtaxeRatedesiredMarginalityPercentdesiredProfitRubadditionalCostpackWidthpackHeightpackDepthpackWeightmaxLoadWeightnumOfPiecesInBoxlastWildberriesSaleDatelastWildberriesOrderDatelastOzonSaleDatelastOzonOrderDatetotalOrdersCounttotalFbsOrdersCountwildberriesTotalOrdersCountignoreFbsWarehousesfbsWarehousesminFbsStockmaxFbsStockwildberriesSaleLogisticwildberriesReturnLogisticwildberriesTotalLogisticswildberriesWarehouseRatiowildberriesComissionozonSaleLogisticozonReturnLogisticozonCommissionmaxDeliveryToPickupPointozonPurchasePercentwildberriesPurchasePercentminMarginalitymaxMarginalityminProfitmaxProfitminPriceWithDiscountmaxPriceWithDiscountoldWildberriesPriceWithDiscountoldWildberriesSalewildberriesPromoProfitwildberriesMarginalitywildberriesPromoIdoldWildberriesPromoSalePercentoldWildberriesPromoPriceWithDiscountendWildberriesPriceWithSppConfigozonFbsCommissionozonFboCommissionwbTotalSalesCountozonTotalSalesCountsberTotalSalesCountyandexTotalSalesCountozonRaitingozonFeedbackCountozonPriceWithSppfboStockCountfbsStockCountstockCoverageDaysfboSupplyQuantityfboSalesfbsSalesfboOrdersfbsOrdersrecommendPlanbaseDeficitallocatedWithoutWarehouseskipDaysCountorganizationShortNamecontractorNamesupplyPlanBarcodeplanCorrectionFactororderBeforedaysBeforeSupplysupplyPlanDayswarehouseIdForSupplyReportwarehouseNameForSupplyReportwbCanBoxwbCanMonopalletwbCanSupersafewbCanBoxOnPalletmanagercellIddrrPercentpercentForParticipationPromoOrAdvertisingselsupLinktempIdcategory
Поля объекта
Category
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
categoryId |
integer · int32 | Нет | Идентификатор категории. Проставляется автоматически |
name |
string | Да | Наименование категории |
deleted |
boolean | Нет | Признак удаленных категорий |
parentId |
integer · int32 | Нет | Идентификатор родительской категории |
clientId |
integer · int64 | Нет | Идентификатор клиента |
marked |
boolean | Нет | Маркируется ли категория |
categoryClass |
stringSHOES, LIGHT, DRUGS, CAMERA, TYRES, MILK, WATER, TOBACCO, FURS, BEER, BICYCLES, PERFUMES, ELECTRONIC, OTHER, NONE, FOOD, WHEELCHAIRS, OTP, NCP, BIO, ANTISEPTIC, NABEER, SOFTDRINKS, PETFOOD, SEAFOOD, MEAT, TOYS, TITAN, RADIO, OPTIC_FIBER, VEGETABLE_OIL, CONSERVE, VETPHARMA, CHEMISTRY, AUTOFLUIDS, GROCERY, BOOKS, CONSTRUCTION, FIRE, HEATER, CABLERAW, POLYMER, SWEETS, CARPARTS, NATURAL_FUR, NICOTINDEV, GADGETS, FROZEN, FERTILIZERS, HOMEWARE, VETBIO, INDUSTRIAL, PYROTECHNICS | Нет | Тип категории для Честного знака. По умолчанию ставится OTHER |
wildberriesType |
WildberriesType | Нет | Предмет Вайлдбериз. Можно устанавливать либо объект,либо только идентификатор |
wildberriesCategoryId |
integer · int64 | Нет | Идентификатор категории Wildberries, совпадает с ID категории на самом Wildberries |
wildberriesFbmCommission |
number · double | Нет | Комиссия по тарифу FBM |
wildberriesFbwCommission |
number · double | Нет | Комиссия по тарифу FBW |
wildberriesFbsCommission |
number · double | Нет | Комиссия по тарифу FBS |
wildberriesDbsCommission |
number · double | Нет | Комиссия по тарифу DBS |
wildberriesEdbsCommission |
number · double | Нет | Комиссия по тарифу EDBS |
wildberriesCAndCCommission |
number · double | Нет | Комиссия по тарифу C&C |
wildberriesBookingCommission |
number · double | Нет | Комиссия за бронирование |
ozonDescriptionCategoryId |
integer · int64 | Нет | Идентификатор категории на Ozon. Строится из ID категории + ID типа на Ozon |
yandexMarketCategoryId |
integer · int64 | Нет | Идентификатор категории в Яндекс.Маркет. Совпадает с идентификатором категории на самом Яндекс.Маркет |
yandexMarketCategory |
YandexMarketCategory | Нет | Категория Яндекс.Маркета. Можно проставлять либо объект, либо только идентификатор |
ozonDescriptionCategory |
OzonDescriptionCategory | Нет | Категория Озон |
ozonCommission |
number · double | Нет | Комиссия озона. |
tnved |
Tnved | Нет | ТНВЭД. Можно проставлять либо объект, либо идентификатор ТНВЭД |
tnvedId |
integer · int64 | Нет | Идентификатор ТНВЭД |
laundry |
string | Нет | Правила ухода за вещами. Разделяются запятыми |
params |
string | Нет | JSON значений параметров для категории |
namePattern |
string | Нет | Шаблон названий категории |
aliexpressCategory |
AliexpressCategory | Нет | Категория Aliexpress |
aliexpressCategoryId |
integer · int64 | Нет | Идентификатор категории на самом Aliexpress |
avitoCategory |
AvitoCategory | Нет | Категория Avito |
lamodaCategory |
LamodaCategory | Нет | Категория Lamoda |
lamodaCategoryId |
integer · int64 | Нет | Идентификатор категории на Lamoda |
avitoCategoryId |
integer · int64 | Нет | Идентификатор категории на Avito |
packDepth |
integer · int32 | Нет | Глубина упаковки в мм. Проставляется всем товарам в категории |
packWidth |
integer · int32 | Нет | Ширина упаковки в мм. Проставляется всем товарам в категории |
packHeight |
integer · int32 | Нет | Высота упаковки в мм. Проставляется всем товарам в категории |
packWeight |
integer · int32 | Нет | Вес упаковки в граммах. Проставляется всем товарам в категории |
hasSize |
boolean | Нет | Признак разделения товаров в категории по размеру. Меняет вид редактора карточки |
hasColor |
boolean | Нет | Признак разделения товаров в категории по цвету. Меняет вид редактора карточки |
autoName |
boolean | Нет | Автоматически формировать названия товаров в категории |
removeFbsStock |
boolean | Нет | Не передавать остатки товаров по FBS для товаров из этой категории |
oneCId |
string | Нет | Идентификатор категории в 1С |
externalId |
string | Нет | Идентификатор категории на сайте |
moySkladId |
string | Нет | Идентификатор категории в сервисе МойСклад |
useClientParams |
boolean | Нет | Показывать пользовательские параметры в категории |
requiredExpirationDate |
boolean | Нет | Является ли срок годности обязательным параметром |
serviceCategoryMappings |
object | Нет | Универсальные привязки категории к категориям внешних сервисов |
productCount |
integer · int32 | Нет | Количество товаров в категории. Отдается только при withProductCount=true |
findirTipscommissionscommissionCalculationslowStockAlertsinputVatoutputVatfinalVatincomeTaxtotalTaxnetProfitmarginwoocomStatusdateStartSeason1dateEndSeason1dateStartSeason2dateEndSeason2dateStartSeason3dateEndSeason3dateStartSeason4dateEndSeason4currentGrossProfitplannedGrossProfitpositionemptyBarcodesuzumStatusmakroStatuskaspiStatussiteanyLinkanyArticleshopifyStatustakealotStatusyandexKitStatusbobShopStatusminPriceForAllMarketplacecalculatedInstockQuantitywoocomParentIdwoocomPermalinkyandexMarketSkuexternalArticlemoySkladLinkIddetmirArticlelamodaArticlemagnitArticlemvideoArticlewildberriesImtIdozonProductIdleroyMerlinIdleroyMerlinArticleyandexMarketShopSkuwildberriesSizeIdsberMegaMarketIdaliexpressSkuuzumProductIdlamodaParentSkuebayArticleozonIdsberArticleozonArticleoneCIdoneCArticledetmirIdsimalandIdlamodaSkuwalmartSkuwalmartIdwoocomSkuwoocomIdmagnitIdmagnitSkuopencartSkuopencartIdtakealotSkuuzumArticleozonFbsSkuozonFboSkuavitoIdmoySkladIdsellerSkuuzumSkuIdyandexMarketProductIdnationalCatalogFeedIdnationalCatalogGoodIdwildberriesPricewildberriesUpdatedPricewildberriesPriceWithoutDiscountwildberriesUpdatedPriceWithoutDiscountaliexpressPricealiexpressPriceWithoutDiscountaliexpressUpdatedPricealiexpressUpdatedPriceWithoutDiscountozonPriceozonUpdatedPriceozonPriceWithoutDiscountozonUpdatedPriceWithoutDiscountleroyMerlinPriceleroyMerlinUpdatedPriceavitoPriceavitoUpdatedPricesberMegaMarketPricesberMegaMarketUpdatedPriceyandexMarketPriceyandexMarketPriceWithoutDiscountyandexMarketUpdatedPriceyandexMarketUpdatedPriceWithoutDiscountproductPrices
Структура элемента массива
ProductPrice
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор записи цены |
productId |
integer · int64 | Нет | Идентификатор товара |
product |
object | Нет | Товар |
priceTypeId |
integer · int64 | Нет | Идентификатор типа цены |
priceType |
PriceType | Нет | Тип цены |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Сервис |
clientId |
integer · int64 | Нет | Идентификатор клиента |
price |
number · double | Нет | Цена |
updatedPrice |
number · double | Нет | Обновленная цена |
priceWithoutDiscount |
number · double | Нет | Цена без скидки |
updatedPriceWithoutDiscount |
number · double | Нет | Обновленная цена без скидки |
minPrice |
number · double | Нет | Минимальная цена |
updatedMinPrice |
number · double | Нет | Обновленная минимальная цена |
percentForParticipationPromoOrAdvertising |
integer · int32 | Нет | Процент расходов на участие в акциях или рекламе |
isActive |
boolean | Нет | Активна ли цена |
article |
string | Нет | Уникальный идентификатор товара на маркетплейсе |
pendingOperationId |
string | Нет | Идентификатор асинхронной операции обновления цены (Детский мир) |
stockRules
Поля объекта
ProductStockRules
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
minFbsStock |
integer · int32 | Нет | Минимальный остаток - если меньше, то ставим 0 |
maxFbsStock |
integer · int32 | Нет | Максимальный остаток - если больше, то ставим его |
subtractFromStock |
integer · int32 | Нет | Вычитаемое значение из остатка перед отправкой на маркетплейс |
distributionRules |
StockDistributionRule[] | Нет | Null inherits account rules; an empty list disables distribution for the product |
[
"string"
]Ошибки3
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
Получить полку со списком ячеек
/api/warehouse/shelf/{shelfId}Получить полку со списком ячеек.
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
shelfId |
integer · int32 | Да | Поле shelfId. |
curl --request GET 'https://api.selsup.ru/api/warehouse/shelf/%7BshelfId%7D?shelfId=1001' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/shelf/%7BshelfId%7D?shelfId=1001', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/shelf/%7BshelfId%7D?shelfId=1001', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/shelf/%7BshelfId%7D?shelfId=1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/shelf/%7BshelfId%7D?shelfId=1001',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/shelf/%7BshelfId%7D?shelfId=1001", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/shelf/%7BshelfId%7D?shelfId=1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Shelf
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
rackId |
integer · int32 | Нет | Поле rackId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cells |
Cell[] | Нет | Поле cells. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"rackId": 1001,
"deleted": false,
"clientId": 1001
}Ошибки7
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_fulfillment_client_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_fulfillment_client_access_denied; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_shelf_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_shelf_not_found; localMessage содержит приведённый выше перевод.
Удалить полку
/api/warehouse/shelf/{shelfId}Удаление полки со всеми ячейками
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
shelfId |
integer · int32 | Да | Поле shelfId. |
curl --request DELETE 'https://api.selsup.ru/api/warehouse/shelf/1001' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/shelf/1001', {
method: 'DELETE',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/shelf/1001', {
method: 'DELETE',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
import os
import requests
response = requests.delete(
'https://api.selsup.ru/api/warehouse/shelf/1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/shelf/1001',
CURLOPT_CUSTOMREQUEST => 'DELETE',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("DELETE", "https://api.selsup.ru/api/warehouse/shelf/1001", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/shelf/1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("DELETE", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200Тело ответа пустое.
Ошибки8
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_cell_denied_deleteПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_denied_delete; localMessage содержит приведённый выше перевод.
error_cell_used_in_orderПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_used_in_order; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
Получить список складов FBO маркетплейсов
/api/warehouse/serviceВозвращает информацию о складах FBO маркетплейсов
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Сервис |
externalName |
string | Нет | Поле externalName. |
curl --request GET 'https://api.selsup.ru/api/warehouse/service' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/service', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/service', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/service',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/service',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/service", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/service"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Структура элемента массива
Warehouse[]
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Название склада | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Маркетплейс к которому относится склад или null если склад клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationId |
integer · int64 | Нет | Организация склада для реквизитов в накладных и тп | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationIds |
integer[] | Нет | Все организации склада, первая из них основная и совпадает с organizationId | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fboOrganizationId |
integer · int64 | Нет | Организация, к которой относится данный склад (FBO) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCellId |
integer · int32 | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCell |
Cell | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
refundCellIdorganization
Поля объекта
Organization
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор организации. Проставляется автоматически | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Да | Полное наименование организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
shortName |
string | Нет | Поле shortName. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxType |
stringYSN, YSN_CONSUMPTION, AUSN, AUSN_CONSUMPTION, OSNO, SELF_EMPLOYED, YSN_GENERAL | Нет | Система налогооблажения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxRate |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxNds |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inputTaxNds |
integer · int32 | Нет | Ставка входящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
outputTaxNds |
integer · int32 | Нет | Ставка исходящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enableNewTaxCalculation |
boolean | Нет | Включить расчет налогов по новым правилам | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
useNdsCostPrice |
boolean | Нет | Учитывать входящий НДС в себестоимости | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inn |
string | Да | ИНН | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
kpp |
string | Нет | КПП. Проставляется только для ООО | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bank |
string | Нет | Название банка | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bik |
string | Нет | БИК счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
corrBill |
string | Нет | Номер корреспондентского счета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
billNumber |
string | Нет | Номер счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampPath |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampUrl |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampSize |
integer · int32 | Нет | Размер в байтах изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampWidth |
integer · int32 | Нет | Ширина изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampHeight |
integer · int32 | Нет | Высота изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampFileName |
string | Нет | Имя исходного файла печати | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signaturePath |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureUrl |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureFileName |
string | Нет | Имя исходного файла подписи | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerName |
string | Нет | ФИО подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerPosition |
string | Нет | Должность подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureSize |
integer · int32 | Нет | Размер файла в байтах подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureWidth |
integer · int32 | Нет | Ширина изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureHeight |
integer · int32 | Нет | Высота изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ipPerson |
Person | Нет | Руководитель организации или ИП | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
personId |
integer · int64 | Нет | Поле personId. |
firstName |
string | Да | Имя сотрудника |
lastName |
string | Да | Фамилия сотрудника |
surName |
string | Нет | Отчество сотрудника |
clientId |
integer · int64 | Нет | Идентификатор клиента |
position |
PersonPosition | Да | Должность сотрудника |
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи |
createdUser |
string | Нет | Проставляется автоматически. Пользователь создавший сотрудника |
createdDate |
string · date-time | Нет | Проставляется автоматически. Дата создания сотрудника |
deleted |
boolean | Нет | Признак удаления сотрудника |
userId |
integer · int32 | Нет | Связь сотрудника с пользователем |
hasChanges |
boolean | Нет | Поле hasChanges. |
fullName |
string | Нет | Полные ФИО |
shortName |
string | Нет | Фамилия и инициалы |
formipclientIdaddress
Поля объекта
Address
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
postCode |
string | Нет | Поле postCode. |
country |
Country | Нет | Поле country. |
region |
Region | Нет | Поле region. |
regionId |
integer · int32 | Нет | Поле regionId. |
street |
string | Нет | Поле street. |
house |
string | Нет | Поле house. |
district |
string | Нет | Поле district. |
city |
string | Нет | Поле city. |
locality |
string | Нет | Поле locality. |
building |
string | Нет | Поле building. |
flat |
string | Нет | Поле flat. |
short |
string | Нет | Поле short. |
addressId |
Address | Нет | Поле addressId. |
full |
string | Нет | Поле full. |
phoneNumberaddressFullsamplepriorityuseForOrderclientIdexternalNamenotSyncStocksignoreOrderspassages
Структура элемента массива
Passage
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||
racks |
Rack[] | Нет | Стелажи этого прохода | ||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
name |
string | Нет | Поле name. |
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
passageId |
integer · int32 | Нет | Поле passageId. |
deleted |
boolean | Нет | Поле deleted. |
clientId |
integer · int64 | Нет | Поле clientId. |
shelves |
Shelf[] | Нет | Поле shelves. |
warehouseServices
Структура элемента массива
ServiceWarehouse
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Проставляется автоматически при создании |
name |
string | Да | Название внешнего склада, можно подставлять ID |
externalId |
string | Да | Идентификатор склада во внешней системе для связи остатков |
warehouseId |
integer · int64 | Да | Склад SelSup |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис для которого устанавливается связь |
organizationId |
integer · int64 | Да | Организация SelSup |
serviceOrganizationId |
integer · int64 | Нет | Идентификатор организации во внешней системе |
deliveriesdeletedcaptiondurationHoursreservationDaysscheduleurAddresscitylongitudelatitudewarehouseServiceIdwarehouseTypedescriptioninnkppplaceOfBusinessFiasIdpaymentAccounttelephoneregionNameregion
Поля объекта
Region
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
regionId |
integer · int32 | Нет | Поле regionId. | ||||||||||||||||||||
countryId |
integer · int32 | Нет | Поле countryId. | ||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||
regionSynonyms |
RegionSynonym[] | Нет | Поле regionSynonyms. | ||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
regionId |
integer · int64 | Нет | Поле regionId. |
synonym |
string | Нет | Поле synonym. |
service |
string | Нет | Поле service. |
regionIdisPrepayOnlineisCashisCardisGoodsActiveorgIdaddress[
"string"
]Ошибки3
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
Получить стеллаж со списком полок
/api/warehouse/rack/{rackId}Получить стеллаж со списком полок.
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
rackId |
integer · int32 | Да | Поле rackId. |
curl --request GET 'https://api.selsup.ru/api/warehouse/rack/1001' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/rack/1001', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/rack/1001', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/rack/1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/rack/1001',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/rack/1001", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/rack/1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Rack
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
passageId |
integer · int32 | Нет | Поле passageId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
shelves |
Shelf[] | Нет | Поле shelves. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
rackId |
integer · int32 | Нет | Поле rackId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
cells |
Cell[] | Нет | Поле cells. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"passageId": 1001,
"deleted": false,
"clientId": 1001
}Ошибки7
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_fulfillment_client_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_fulfillment_client_access_denied; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_rack_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_rack_not_found; localMessage содержит приведённый выше перевод.
Удалить стеллаж
/api/warehouse/rack/{rackId}Удаление стеллажа с полками и ячейками
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
rackId |
integer · int32 | Да | Поле rackId. |
curl --request DELETE 'https://api.selsup.ru/api/warehouse/rack/1001' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/rack/1001', {
method: 'DELETE',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/rack/1001', {
method: 'DELETE',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
import os
import requests
response = requests.delete(
'https://api.selsup.ru/api/warehouse/rack/1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/rack/1001',
CURLOPT_CUSTOMREQUEST => 'DELETE',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("DELETE", "https://api.selsup.ru/api/warehouse/rack/1001", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/rack/1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("DELETE", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200Тело ответа пустое.
Ошибки8
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_cell_denied_deleteПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_denied_delete; localMessage содержит приведённый выше перевод.
error_cell_used_in_orderПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_used_in_order; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
Поиск складов Ozon для кросс-докинга
/api/warehouse/plan/crossdock-warehousesВозвращает склады кросс-докинга по поисковой строке (минимум 4 символа)
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
organizationId |
integer · int64 | Да | Поле organizationId. |
search |
string | Да | Поле search. |
curl --request GET 'https://api.selsup.ru/api/warehouse/plan/crossdock-warehouses?organizationId=1001&search=string' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/plan/crossdock-warehouses?organizationId=1001&search=string', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/plan/crossdock-warehouses?organizationId=1001&search=string', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/plan/crossdock-warehouses?organizationId=1001&search=string',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/plan/crossdock-warehouses?organizationId=1001&search=string',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/plan/crossdock-warehouses?organizationId=1001&search=string", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/plan/crossdock-warehouses?organizationId=1001&search=string"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Структура элемента массива
OzonFboWarehouse[]
| Поле | Тип | Обязательно | Описание | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
address |
string | Нет | Поле address. | ||||||||||||
name |
string | Нет | Поле name. | ||||||||||||
coordinates |
Coordinates | Нет | Поле coordinates. | ||||||||||||
Поля объекта
|
|||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
latitude |
number · double | Нет | Поле latitude. |
longitude |
number · double | Нет | Поле longitude. |
warehouse_idwarehouse_type[
"string"
]Ошибки5
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_empty_ozon_idПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_ozon_id; localMessage содержит приведённый выше перевод.
error_token_expired_or_revokedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_token_expired_or_revoked; localMessage содержит приведённый выше перевод.
Получить проход со списком стеллажей
/api/warehouse/passage/{passageId}Получить проход со списком стеллажей.
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
passageId |
integer · int32 | Да | Поле passageId. |
curl --request GET 'https://api.selsup.ru/api/warehouse/passage/1001' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/passage/1001', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/passage/1001', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/passage/1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/passage/1001',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/passage/1001", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/passage/1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Passage
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
racks |
Rack[] | Нет | Стелажи этого прохода | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||
passageId |
integer · int32 | Нет | Поле passageId. | ||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||
shelves |
Shelf[] | Нет | Поле shelves. | ||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
name |
string | Нет | Поле name. |
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
rackId |
integer · int32 | Нет | Поле rackId. |
deleted |
boolean | Нет | Поле deleted. |
clientId |
integer · int64 | Нет | Поле clientId. |
cells |
Cell[] | Нет | Поле cells. |
{
"id": 1001,
"name": "Example",
"warehouseId": 1001,
"deleted": false,
"clientId": 1001,
"racks": "string"
}Ошибки7
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_fulfillment_client_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_fulfillment_client_access_denied; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_passage_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_passage_not_found; localMessage содержит приведённый выше перевод.
Удалить проход
/api/warehouse/passage/{passageId}Удаление прохода вместе со стеллажами, полками и ячейками
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
passageId |
integer · int32 | Да | Поле passageId. |
curl --request DELETE 'https://api.selsup.ru/api/warehouse/passage/1001' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/passage/1001', {
method: 'DELETE',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/passage/1001', {
method: 'DELETE',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
import os
import requests
response = requests.delete(
'https://api.selsup.ru/api/warehouse/passage/1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/passage/1001',
CURLOPT_CUSTOMREQUEST => 'DELETE',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("DELETE", "https://api.selsup.ru/api/warehouse/passage/1001", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/passage/1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("DELETE", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200Тело ответа пустое.
Ошибки8
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_cell_denied_deleteПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_denied_delete; localMessage содержит приведённый выше перевод.
error_cell_used_in_orderПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_used_in_order; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
Получить склады FBO маркетплейса для маршрута логистики
/api/warehouse/logistics-fbo-warehousesПолучить склады FBO маркетплейса для маршрута логистики.
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис |
organizationId |
integer · int64 | Да | Поле organizationId. |
searchПо умолчанию: |
string | Нет | Поле search. |
curl --request GET 'https://api.selsup.ru/api/warehouse/logistics-fbo-warehouses?service=NONE&organizationId=1001' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/logistics-fbo-warehouses?service=NONE&organizationId=1001', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/logistics-fbo-warehouses?service=NONE&organizationId=1001', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/logistics-fbo-warehouses?service=NONE&organizationId=1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/logistics-fbo-warehouses?service=NONE&organizationId=1001',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/logistics-fbo-warehouses?service=NONE&organizationId=1001", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/logistics-fbo-warehouses?service=NONE&organizationId=1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Структура элемента массива
MarketplaceFboWarehouseOption[]
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
name |
string | Нет | Поле name. |
address |
string | Нет | Поле address. |
[
"string"
]Ошибки3
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
Список складов
/api/warehouse/listСписок складов.
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Сервис |
curl --request GET 'https://api.selsup.ru/api/warehouse/list' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/list', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/list', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/list',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/list',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/list", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/list"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Структура элемента массива
Warehouse[]
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Название склада | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Маркетплейс к которому относится склад или null если склад клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationId |
integer · int64 | Нет | Организация склада для реквизитов в накладных и тп | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationIds |
integer[] | Нет | Все организации склада, первая из них основная и совпадает с organizationId | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fboOrganizationId |
integer · int64 | Нет | Организация, к которой относится данный склад (FBO) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCellId |
integer · int32 | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCell |
Cell | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
refundCellIdorganization
Поля объекта
Organization
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор организации. Проставляется автоматически | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Да | Полное наименование организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
shortName |
string | Нет | Поле shortName. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxType |
stringYSN, YSN_CONSUMPTION, AUSN, AUSN_CONSUMPTION, OSNO, SELF_EMPLOYED, YSN_GENERAL | Нет | Система налогооблажения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxRate |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxNds |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inputTaxNds |
integer · int32 | Нет | Ставка входящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
outputTaxNds |
integer · int32 | Нет | Ставка исходящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enableNewTaxCalculation |
boolean | Нет | Включить расчет налогов по новым правилам | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
useNdsCostPrice |
boolean | Нет | Учитывать входящий НДС в себестоимости | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inn |
string | Да | ИНН | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
kpp |
string | Нет | КПП. Проставляется только для ООО | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bank |
string | Нет | Название банка | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bik |
string | Нет | БИК счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
corrBill |
string | Нет | Номер корреспондентского счета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
billNumber |
string | Нет | Номер счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampPath |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampUrl |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampSize |
integer · int32 | Нет | Размер в байтах изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampWidth |
integer · int32 | Нет | Ширина изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampHeight |
integer · int32 | Нет | Высота изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampFileName |
string | Нет | Имя исходного файла печати | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signaturePath |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureUrl |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureFileName |
string | Нет | Имя исходного файла подписи | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerName |
string | Нет | ФИО подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerPosition |
string | Нет | Должность подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureSize |
integer · int32 | Нет | Размер файла в байтах подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureWidth |
integer · int32 | Нет | Ширина изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureHeight |
integer · int32 | Нет | Высота изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ipPerson |
Person | Нет | Руководитель организации или ИП | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
personId |
integer · int64 | Нет | Поле personId. |
firstName |
string | Да | Имя сотрудника |
lastName |
string | Да | Фамилия сотрудника |
surName |
string | Нет | Отчество сотрудника |
clientId |
integer · int64 | Нет | Идентификатор клиента |
position |
PersonPosition | Да | Должность сотрудника |
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи |
createdUser |
string | Нет | Проставляется автоматически. Пользователь создавший сотрудника |
createdDate |
string · date-time | Нет | Проставляется автоматически. Дата создания сотрудника |
deleted |
boolean | Нет | Признак удаления сотрудника |
userId |
integer · int32 | Нет | Связь сотрудника с пользователем |
hasChanges |
boolean | Нет | Поле hasChanges. |
fullName |
string | Нет | Полные ФИО |
shortName |
string | Нет | Фамилия и инициалы |
formipclientIdaddress
Поля объекта
Address
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
postCode |
string | Нет | Поле postCode. |
country |
Country | Нет | Поле country. |
region |
Region | Нет | Поле region. |
regionId |
integer · int32 | Нет | Поле regionId. |
street |
string | Нет | Поле street. |
house |
string | Нет | Поле house. |
district |
string | Нет | Поле district. |
city |
string | Нет | Поле city. |
locality |
string | Нет | Поле locality. |
building |
string | Нет | Поле building. |
flat |
string | Нет | Поле flat. |
short |
string | Нет | Поле short. |
addressId |
Address | Нет | Поле addressId. |
full |
string | Нет | Поле full. |
phoneNumberaddressFullsamplepriorityuseForOrderclientIdexternalNamenotSyncStocksignoreOrderspassages
Структура элемента массива
Passage
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||
racks |
Rack[] | Нет | Стелажи этого прохода | ||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
name |
string | Нет | Поле name. |
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
passageId |
integer · int32 | Нет | Поле passageId. |
deleted |
boolean | Нет | Поле deleted. |
clientId |
integer · int64 | Нет | Поле clientId. |
shelves |
Shelf[] | Нет | Поле shelves. |
warehouseServices
Структура элемента массива
ServiceWarehouse
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Проставляется автоматически при создании |
name |
string | Да | Название внешнего склада, можно подставлять ID |
externalId |
string | Да | Идентификатор склада во внешней системе для связи остатков |
warehouseId |
integer · int64 | Да | Склад SelSup |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис для которого устанавливается связь |
organizationId |
integer · int64 | Да | Организация SelSup |
serviceOrganizationId |
integer · int64 | Нет | Идентификатор организации во внешней системе |
deliveriesdeletedcaptiondurationHoursreservationDaysscheduleurAddresscitylongitudelatitudewarehouseServiceIdwarehouseTypedescriptioninnkppplaceOfBusinessFiasIdpaymentAccounttelephoneregionNameregion
Поля объекта
Region
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
regionId |
integer · int32 | Нет | Поле regionId. | ||||||||||||||||||||
countryId |
integer · int32 | Нет | Поле countryId. | ||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||
regionSynonyms |
RegionSynonym[] | Нет | Поле regionSynonyms. | ||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
regionId |
integer · int64 | Нет | Поле regionId. |
synonym |
string | Нет | Поле synonym. |
service |
string | Нет | Поле service. |
regionIdisPrepayOnlineisCashisCardisGoodsActiveorgIdaddress[
"string"
]Ошибки34
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_bad_requestПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_bad_request; localMessage содержит приведённый выше перевод.
error_base_creatingПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_base_creating; localMessage содержит приведённый выше перевод.
error_cabinet_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cabinet_access_denied; localMessage содержит приведённый выше перевод.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_container_log_read_failedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_container_log_read_failed; localMessage содержит приведённый выше перевод.
error_container_log_request_invalidПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_container_log_request_invalid; localMessage содержит приведённый выше перевод.
error_empty_first_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_first_name; localMessage содержит приведённый выше перевод.
error_empty_last_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_last_name; localMessage содержит приведённый выше перевод.
error_empty_organization_formПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_form; localMessage содержит приведённый выше перевод.
error_empty_organization_innПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_inn; localMessage содержит приведённый выше перевод.
error_empty_organization_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_name; localMessage содержит приведённый выше перевод.
error_empty_position_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_position_name; localMessage содержит приведённый выше перевод.
error_fulfillment_client_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_fulfillment_client_access_denied; localMessage содержит приведённый выше перевод.
error_fulfillment_client_contract_requiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_fulfillment_client_contract_required; localMessage содержит приведённый выше перевод.
error_fulfillment_document_errorПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_fulfillment_document_error; localMessage содержит приведённый выше перевод.
error_fulfillment_request_invalidПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_fulfillment_request_invalid; localMessage содержит приведённый выше перевод.
error_income_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_income_not_found; localMessage содержит приведённый выше перевод.
error_max_pageПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_max_page; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_no_price_for_order_productПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_price_for_order_product; localMessage содержит приведённый выше перевод.
error_no_quantity_for_order_productПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_quantity_for_order_product; localMessage содержит приведённый выше перевод.
error_order_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_order_not_found; localMessage содержит приведённый выше перевод.
error_organization_create_failedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_create_failed; localMessage содержит приведённый выше перевод.
error_organization_existsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_exists; localMessage содержит приведённый выше перевод.
error_position_existsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_position_exists; localMessage содержит приведённый выше перевод.
error_reloadПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_reload; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
error_warehouse_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_warehouse_not_found; localMessage содержит приведённый выше перевод.
error_wrong_crm_tokenПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_wrong_crm_token; localMessage содержит приведённый выше перевод.
error_wrong_innПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_wrong_inn; localMessage содержит приведённый выше перевод.
error_wrong_versionПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_wrong_version; localMessage содержит приведённый выше перевод.
Получить список складов FBO маркетплейсов
/api/warehouse/getWarehousesByServiceВозвращает информацию о складах FBO маркетплейсов
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис |
externalName |
string | Нет | Поле externalName. |
curl --request GET 'https://api.selsup.ru/api/warehouse/getWarehousesByService?service=NONE' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/getWarehousesByService?service=NONE', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/getWarehousesByService?service=NONE', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/getWarehousesByService?service=NONE',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/getWarehousesByService?service=NONE',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/getWarehousesByService?service=NONE", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/getWarehousesByService?service=NONE"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Структура элемента массива
Warehouse[]
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Поле id. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Нет | Название склада | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Нет | Маркетплейс к которому относится склад или null если склад клиента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationId |
integer · int64 | Нет | Организация склада для реквизитов в накладных и тп | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
organizationIds |
integer[] | Нет | Все организации склада, первая из них основная и совпадает с organizationId | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fboOrganizationId |
integer · int64 | Нет | Организация, к которой относится данный склад (FBO) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCellId |
integer · int32 | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
noPlaceCell |
Cell | Нет | Ячейка, которая ставится для товаров из приемки на склад, которые пока не разместили на складе | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
refundCellIdorganization
Поля объекта
Organization
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int64 | Нет | Идентификатор организации. Проставляется автоматически | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
name |
string | Да | Полное наименование организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
shortName |
string | Нет | Поле shortName. | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxType |
stringYSN, YSN_CONSUMPTION, AUSN, AUSN_CONSUMPTION, OSNO, SELF_EMPLOYED, YSN_GENERAL | Нет | Система налогооблажения | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxRate |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
taxNds |
integer · int32 | Нет | Ставка налога, если она отличается от стандартной | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inputTaxNds |
integer · int32 | Нет | Ставка входящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
outputTaxNds |
integer · int32 | Нет | Ставка исходящего НДС | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
enableNewTaxCalculation |
boolean | Нет | Включить расчет налогов по новым правилам | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
useNdsCostPrice |
boolean | Нет | Учитывать входящий НДС в себестоимости | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
inn |
string | Да | ИНН | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
kpp |
string | Нет | КПП. Проставляется только для ООО | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bank |
string | Нет | Название банка | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
bik |
string | Нет | БИК счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
corrBill |
string | Нет | Номер корреспондентского счета | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
billNumber |
string | Нет | Номер счета организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampPath |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampUrl |
string | Нет | Ссылка на изображение печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampSize |
integer · int32 | Нет | Размер в байтах изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampWidth |
integer · int32 | Нет | Ширина изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampHeight |
integer · int32 | Нет | Высота изображения печати организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
stampFileName |
string | Нет | Имя исходного файла печати | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signaturePath |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureUrl |
string | Нет | Фото подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureFileName |
string | Нет | Имя исходного файла подписи | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerName |
string | Нет | ФИО подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
fulfillmentContractSignerPosition |
string | Нет | Должность подписанта со стороны фулфилмента | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureSize |
integer · int32 | Нет | Размер файла в байтах подписи директора организации | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureWidth |
integer · int32 | Нет | Ширина изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
signatureHeight |
integer · int32 | Нет | Высота изображения подписи директора | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ipPerson |
Person | Нет | Руководитель организации или ИП | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Поля объекта
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
personId |
integer · int64 | Нет | Поле personId. |
firstName |
string | Да | Имя сотрудника |
lastName |
string | Да | Фамилия сотрудника |
surName |
string | Нет | Отчество сотрудника |
clientId |
integer · int64 | Нет | Идентификатор клиента |
position |
PersonPosition | Да | Должность сотрудника |
versionId |
integer · int64 | Нет | Поле нужно передавать при изменении,для предотвращения одновременной перезаписи |
createdUser |
string | Нет | Проставляется автоматически. Пользователь создавший сотрудника |
createdDate |
string · date-time | Нет | Проставляется автоматически. Дата создания сотрудника |
deleted |
boolean | Нет | Признак удаления сотрудника |
userId |
integer · int32 | Нет | Связь сотрудника с пользователем |
hasChanges |
boolean | Нет | Поле hasChanges. |
fullName |
string | Нет | Полные ФИО |
shortName |
string | Нет | Фамилия и инициалы |
formipclientIdaddress
Поля объекта
Address
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
postCode |
string | Нет | Поле postCode. |
country |
Country | Нет | Поле country. |
region |
Region | Нет | Поле region. |
regionId |
integer · int32 | Нет | Поле regionId. |
street |
string | Нет | Поле street. |
house |
string | Нет | Поле house. |
district |
string | Нет | Поле district. |
city |
string | Нет | Поле city. |
locality |
string | Нет | Поле locality. |
building |
string | Нет | Поле building. |
flat |
string | Нет | Поле flat. |
short |
string | Нет | Поле short. |
addressId |
Address | Нет | Поле addressId. |
full |
string | Нет | Поле full. |
phoneNumberaddressFullsamplepriorityuseForOrderclientIdexternalNamenotSyncStocksignoreOrderspassages
Структура элемента массива
Passage
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
id |
integer · int32 | Нет | Поле id. | ||||||||||||||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||||||||||||||
warehouseId |
integer · int64 | Нет | Поле warehouseId. | ||||||||||||||||||||||||||||||||
deleted |
boolean | Нет | Поле deleted. | ||||||||||||||||||||||||||||||||
clientId |
integer · int64 | Нет | Поле clientId. | ||||||||||||||||||||||||||||||||
racks |
Rack[] | Нет | Стелажи этого прохода | ||||||||||||||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Поле id. |
name |
string | Нет | Поле name. |
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
passageId |
integer · int32 | Нет | Поле passageId. |
deleted |
boolean | Нет | Поле deleted. |
clientId |
integer · int64 | Нет | Поле clientId. |
shelves |
Shelf[] | Нет | Поле shelves. |
warehouseServices
Структура элемента массива
ServiceWarehouse
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Проставляется автоматически при создании |
name |
string | Да | Название внешнего склада, можно подставлять ID |
externalId |
string | Да | Идентификатор склада во внешней системе для связи остатков |
warehouseId |
integer · int64 | Да | Склад SelSup |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис для которого устанавливается связь |
organizationId |
integer · int64 | Да | Организация SelSup |
serviceOrganizationId |
integer · int64 | Нет | Идентификатор организации во внешней системе |
deliveriesdeletedcaptiondurationHoursreservationDaysscheduleurAddresscitylongitudelatitudewarehouseServiceIdwarehouseTypedescriptioninnkppplaceOfBusinessFiasIdpaymentAccounttelephoneregionNameregion
Поля объекта
Region
| Поле | Тип | Обязательно | Описание | ||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
regionId |
integer · int32 | Нет | Поле regionId. | ||||||||||||||||||||
countryId |
integer · int32 | Нет | Поле countryId. | ||||||||||||||||||||
name |
string | Нет | Поле name. | ||||||||||||||||||||
regionSynonyms |
RegionSynonym[] | Нет | Поле regionSynonyms. | ||||||||||||||||||||
Структура элемента массива
|
|||||||||||||||||||||||
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Поле id. |
regionId |
integer · int64 | Нет | Поле regionId. |
synonym |
string | Нет | Поле synonym. |
service |
string | Нет | Поле service. |
regionIdisPrepayOnlineisCashisCardisGoodsActiveorgIdaddress[
"string"
]Ошибки3
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
Получение списка складов маркетплейса нужной организации
/api/warehouse/getWarehouseOfServiceПолучение списка складов маркетплейса нужной организации.
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
organizationId |
integer · int64 | Да | Поле organizationId. |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис |
curl --request GET 'https://api.selsup.ru/api/warehouse/getWarehouseOfService?organizationId=1001&service=NONE' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/getWarehouseOfService?organizationId=1001&service=NONE', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/getWarehouseOfService?organizationId=1001&service=NONE', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/getWarehouseOfService?organizationId=1001&service=NONE',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/getWarehouseOfService?organizationId=1001&service=NONE',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/getWarehouseOfService?organizationId=1001&service=NONE", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/getWarehouseOfService?organizationId=1001&service=NONE"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Структура элемента массива
WarehouseOfService[]
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
object | Нет | Идентификатор склада |
name |
string | Нет | Название склада |
[
"string"
]Ошибки19
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_empty_ozon_idПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_ozon_id; localMessage содержит приведённый выше перевод.
error_no_business_id_yandex_marketПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_business_id_yandex_market; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_no_integration_with_serviceПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_integration_with_service; localMessage содержит приведённый выше перевод.
error_no_integration_with_wb_ozonПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_integration_with_wb_ozon; localMessage содержит приведённый выше перевод.
error_no_integration_with_wildberriesПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_integration_with_wildberries; localMessage содержит приведённый выше перевод.
error_no_integration_with_yandex_marketПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_integration_with_yandex_market; localMessage содержит приведённый выше перевод.
error_organization_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_not_found; localMessage содержит приведённый выше перевод.
error_ozon_apiПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_ozon_api; localMessage содержит приведённый выше перевод.
error_ozon_api_limitПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_ozon_api_limit; localMessage содержит приведённый выше перевод.
error_ozon_premium_plus_subscription_requiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_ozon_premium_plus_subscription_required; localMessage содержит приведённый выше перевод.
error_ozon_token_invalidПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_ozon_token_invalid; localMessage содержит приведённый выше перевод.
error_prepared_integration_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_prepared_integration_not_found; localMessage содержит приведённый выше перевод.
error_remote_errorПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_remote_error; localMessage содержит приведённый выше перевод.
error_service_errorПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_service_error; localMessage содержит приведённый выше перевод.
error_token_expired_or_revokedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_token_expired_or_revoked; localMessage содержит приведённый выше перевод.
Получить остатки в закупочных ценах и в розничных ценах по каждому маркетплейсу для каждого склада
/api/warehouse/getWarehouseBalancesWithPricesПолучить остатки в закупочных ценах и в розничных ценах по каждому маркетплейсу для каждого склада.
curl --request GET 'https://api.selsup.ru/api/warehouse/getWarehouseBalancesWithPrices' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/getWarehouseBalancesWithPrices', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/getWarehouseBalancesWithPrices', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/getWarehouseBalancesWithPrices',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/getWarehouseBalancesWithPrices',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/getWarehouseBalancesWithPrices", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/getWarehouseBalancesWithPrices"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Структура элемента массива
WarehouseBalancesWithPrices[]
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
warehouseId |
integer · int64 | Нет | Поле warehouseId. |
quantity |
integer · int32 | Нет | Поле quantity. |
distinctQuantity |
integer · int64 | Нет | Поле distinctQuantity. |
purchasePrice |
number · double | Нет | Поле purchasePrice. |
additionalExpensesAmount |
number · double | Нет | Поле additionalExpensesAmount. |
wildberriesRetailPrice |
number · double | Нет | Поле wildberriesRetailPrice. |
ozonRetailPrice |
number · double | Нет | Поле ozonRetailPrice. |
yandexMarketRetailPrice |
number · double | Нет | Поле yandexMarketRetailPrice. |
aliexpressRetailPrice |
number · double | Нет | Поле aliexpressRetailPrice. |
sberMegaMarketRetailPrice |
number · double | Нет | Поле sberMegaMarketRetailPrice. |
retailPriceByMarketplace |
number · double | Нет | Поле retailPriceByMarketplace. |
[
"string"
]Ошибки5
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
Получить привязки к складам маркетплейсов
/api/warehouse/getServiceWarehouseПозволяет получить список установленных связей склада SelSup со складом маркетплейсов или сервисов
curl --request GET 'https://api.selsup.ru/api/warehouse/getServiceWarehouse' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/getServiceWarehouse', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/getServiceWarehouse', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/getServiceWarehouse',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/getServiceWarehouse',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/getServiceWarehouse", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/getServiceWarehouse"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Структура элемента массива
ServiceWarehouse[]
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int64 | Нет | Проставляется автоматически при создании |
name |
string | Да | Название внешнего склада, можно подставлять ID |
externalId |
string | Да | Идентификатор склада во внешней системе для связи остатков |
warehouseId |
integer · int64 | Да | Склад SelSup |
service |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис для которого устанавливается связь |
organizationId |
integer · int64 | Да | Организация SelSup |
serviceOrganizationId |
integer · int64 | Нет | Идентификатор организации во внешней системе |
[
"string"
]Ошибки17
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_base_creatingПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_base_creating; localMessage содержит приведённый выше перевод.
error_cabinet_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cabinet_access_denied; localMessage содержит приведённый выше перевод.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_empty_organization_formПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_form; localMessage содержит приведённый выше перевод.
error_empty_organization_innПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_inn; localMessage содержит приведённый выше перевод.
error_empty_organization_nameПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_empty_organization_name; localMessage содержит приведённый выше перевод.
error_fulfillment_client_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_fulfillment_client_access_denied; localMessage содержит приведённый выше перевод.
error_fulfillment_client_contract_requiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_fulfillment_client_contract_required; localMessage содержит приведённый выше перевод.
error_max_pageПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_max_page; localMessage содержит приведённый выше перевод.
error_organization_create_failedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_create_failed; localMessage содержит приведённый выше перевод.
error_organization_existsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_organization_exists; localMessage содержит приведённый выше перевод.
error_reloadПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_reload; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
error_wrong_innПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_wrong_inn; localMessage содержит приведённый выше перевод.
Получить список регионов складов
/api/warehouse/getRegionWarehousesByServiceПолучить список регионов складов.
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
services |
stringNONE, WILDBERRIES, OZON, YANDEX_MARKET, FAMILIYA, NATIONAL_CATALOG, ALIEXPRESS, OTHER, MOY_SKLAD, SBER_MEGA_MARKET, CISLINK, ONE_C, AVITO, LEROY_MERLIN, DETMIR, KAZAN_EXPRESS, EVOTOR, WEBASYST, AMAZON, EBAY, SIMALAND, INSALES, LAMODA, OZON_PERFORMANCE, WALMART, GOOGLE, YANDEX_DISC, EMAIL, WOOCOMMERCE, MAGNIT, OPENCART, M_VIDEO, TAKEALOT, UZUM, SHOPIFY, MAKRO, YANDEX_KIT, BOB_SHOP, KASPI, DIADOC, TEKSHER, KONTUR_LOGISTICS, KONTUR_EDI, VSE_INSTRUMENTI, ELECTRONIC_SIGN | Да | Сервис |
curl --request GET 'https://api.selsup.ru/api/warehouse/getRegionWarehousesByService?services=NONE' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/getRegionWarehousesByService?services=NONE', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/getRegionWarehousesByService?services=NONE', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/getRegionWarehousesByService?services=NONE',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/getRegionWarehousesByService?services=NONE',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/getRegionWarehousesByService?services=NONE", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/getRegionWarehousesByService?services=NONE"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200[
"string"
]Ошибки4
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_service_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_service_not_found; localMessage содержит приведённый выше перевод.
Поиск ячейки по штрих-коду
/api/warehouse/findCellВозвращает ячейку по ее штрих-коду или ошибку,если ячейку не удалось найти
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
barcode |
string | Да | Поле barcode. |
curl --request GET 'https://api.selsup.ru/api/warehouse/findCell?barcode=string' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/findCell?barcode=string', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/findCell?barcode=string', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/findCell?barcode=string',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/findCell?barcode=string',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/findCell?barcode=string", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/findCell?barcode=string"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Cell
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
{
"id": 1001,
"warehouseId": 1001,
"passageId": 1001,
"shelfId": 1001,
"rackId": 1001,
"storageZoneId": 1001
}Ошибки3
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
Получить ячейку
/api/warehouse/cell/{cellId}Возвращает информацию о ячейке хранения на складе по идентификатору
Параметры запроса
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
cellId |
integer · int32 | Да | Поле cellId. |
curl --request GET 'https://api.selsup.ru/api/warehouse/cell/%7BcellId%7D?cellId=1001' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/cell/%7BcellId%7D?cellId=1001', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const result = await response.json();
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/cell/%7BcellId%7D?cellId=1001', {
method: 'GET',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
const result: unknown = await response.json();
import os
import requests
response = requests.get(
'https://api.selsup.ru/api/warehouse/cell/%7BcellId%7D?cellId=1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
result = response.json()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/cell/%7BcellId%7D?cellId=1001',
CURLOPT_CUSTOMREQUEST => 'GET',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("GET", "https://api.selsup.ru/api/warehouse/cell/%7BcellId%7D?cellId=1001", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/cell/%7BcellId%7D?cellId=1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("GET", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200
Поля объекта
Cell
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
id |
integer · int32 | Нет | Идентификатор ячейки |
warehouseId |
integer · int64 | Нет | Склад к которому относится ячейка |
passageId |
integer · int32 | Нет | Проход на складе, к которому относится ячейка. Может соджержать название этажа и пр |
shelfId |
integer · int32 | Нет | Полка стеллажа, к которой относится ячейка |
rackId |
integer · int32 | Нет | Стеллаж, к которому относится ячейка |
storageZoneId |
integer · int64 | Нет | Зона хранения, к которой относится ячейка |
name |
string | Нет | Название ячейки. По умолчанию формируется автоматически |
fullName |
string | Нет | Полное название ячейки из названий прохода, стелажа, полки и ячейки |
sortName |
string | Нет | Название для сортировки ячейки из названий прохода, стелажа, полки и ячейки |
barcode |
string | Нет | Уникальный в рамках клиента штрих-код ячейки для идентификации ячейки с помощью сканера штрих-кода. Присваивается автоматически при создании ячейки |
deleted |
boolean | Нет | Признак того, что ячейка удалена |
width |
integer · int32 | Нет | Ширина ячейки для определения товаров, которые можно положить в нее |
height |
integer · int32 | Нет | Высота ячейки для определения товаров, которые можно положить в нее |
depth |
integer · int32 | Нет | Глубина ячейки для определения товаров, которые можно положить в нее |
volume |
number · double | Нет | Объём ячейки в кубических метрах. Имеет приоритет над габаритами |
clientId |
integer · int64 | Нет | Клиент которому принадлежит ячейка. Проставляется автоматически |
lastInventoryId |
integer · int32 | Нет | Идентификатор последней инвентаризации |
type |
stringNORMAL, NO_PLACE, REFUND | Нет | Тип ячейки: NORMAL, NO_PLACE - не разложенные, REFUND - для возвратов |
{
"id": 1001,
"warehouseId": 1001,
"passageId": 1001,
"shelfId": 1001,
"rackId": 1001,
"storageZoneId": 1001
}Ошибки7
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_cell_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_not_found; localMessage содержит приведённый выше перевод.
error_fulfillment_client_access_deniedПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_fulfillment_client_access_denied; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
Удалить ячейку
/api/warehouse/cell/{cellId}Удаляет ячейку на складе. Возникает исключение, если к ячейке привязаны товары и удаление невозможно
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
cellId |
integer · int32 | Да | Поле cellId. |
curl --request DELETE 'https://api.selsup.ru/api/warehouse/cell/1001' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/cell/1001', {
method: 'DELETE',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/cell/1001', {
method: 'DELETE',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
import os
import requests
response = requests.delete(
'https://api.selsup.ru/api/warehouse/cell/1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/cell/1001',
CURLOPT_CUSTOMREQUEST => 'DELETE',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("DELETE", "https://api.selsup.ru/api/warehouse/cell/1001", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/cell/1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("DELETE", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200Тело ответа пустое.
Ошибки8
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_cell_denied_deleteПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_denied_delete; localMessage содержит приведённый выше перевод.
error_cell_used_in_orderПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cell_used_in_order; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.
Удалить зону хранения
/api/warehouse/storage-zone/{storageZoneId}Удалить зону хранения.
Параметры пути
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
storageZoneId |
integer · int64 | Да | Поле storageZoneId. |
curl --request DELETE 'https://api.selsup.ru/api/warehouse/storage-zone/1001' \
--header 'Authorization: YOUR_API_TOKEN'
const response = await fetch('https://api.selsup.ru/api/warehouse/storage-zone/1001', {
method: 'DELETE',
headers: { Authorization: process.env.SELSUP_API_TOKEN },
});
if (!response.ok) {
const error = await response.json();
throw new Error(error.error || 'selsup_request_failed');
}
const response: Response = await fetch('https://api.selsup.ru/api/warehouse/storage-zone/1001', {
method: 'DELETE',
headers: { Authorization: process.env.SELSUP_API_TOKEN! },
});
if (!response.ok) {
const error = await response.json() as { error?: string };
throw new Error(error.error ?? 'selsup_request_failed');
}
import os
import requests
response = requests.delete(
'https://api.selsup.ru/api/warehouse/storage-zone/1001',
headers={'Authorization': os.environ['SELSUP_API_TOKEN']},
)
response.raise_for_status()
<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://api.selsup.ru/api/warehouse/storage-zone/1001',
CURLOPT_CUSTOMREQUEST => 'DELETE',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_HTTPHEADER => ['Authorization: ' . getenv('SELSUP_API_TOKEN')],
]);
$response = curl_exec($curl);
$status = curl_getinfo($curl, CURLINFO_HTTP_CODE);
curl_close($curl);
if ($response === false || $status >= 400) {
throw new RuntimeException($response ?: 'selsup_request_failed');
}
echo $response;
package main
import (
"fmt"
"io"
"net/http"
"os"
)
func main() {
req, err := http.NewRequest("DELETE", "https://api.selsup.ru/api/warehouse/storage-zone/1001", nil)
if err != nil { panic(err) }
req.Header.Set("Authorization", os.Getenv("SELSUP_API_TOKEN"))
response, err := http.DefaultClient.Do(req)
if err != nil { panic(err) }
defer response.Body.Close()
result, _ := io.ReadAll(response.Body)
fmt.Printf("%d\n%s\n", response.StatusCode, result)
}
import java.net.URI;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
public class SelSupExample {
public static void main(String[] args) throws Exception {
HttpRequest request = HttpRequest.newBuilder(URI.create("https://api.selsup.ru/api/warehouse/storage-zone/1001"))
.header("Authorization", System.getenv("SELSUP_API_TOKEN"))
.method("DELETE", HttpRequest.BodyPublishers.noBody())
.build();
HttpResponse<String> response = HttpClient.newHttpClient()
.send(request, HttpResponse.BodyHandlers.ofString());
System.out.println(response.statusCode());
System.out.println(response.body());
}
}
Успешный ответ
200Тело ответа пустое.
Ошибки7
При ошибке проверьте HTTP-статус и тело ответа. Поле error содержит код ошибки, localMessage — сообщение для пользователя, params — дополнительные сведения. Обработка ошибок ↑
auth_requiredЗаголовок Authorization отсутствует, пуст или содержит недействительный токен.
error_access_deniedТокен существует, но его роль не позволяет выполнить операцию.
error_unknownНе удалось выполнить запрос из-за внутренней ошибки. Если запрос изменял данные, проверьте результат перед повторной отправкой. Для обращения в поддержку сохраните время запроса и полученный ответ.
error_cant_extract_tariffsПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_cant_extract_tariffs; localMessage содержит приведённый выше перевод.
error_no_clientПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_no_client; localMessage содержит приведённый выше перевод.
error_storage_zone_not_foundПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_storage_zone_not_found; localMessage содержит приведённый выше перевод.
error_subscription_expiredПерсональная ошибка этого метода. Для программной логики используйте стабильный код error_subscription_expired; localMessage содержит приведённый выше перевод.