Создание продукции
Метод для создания или обновления продукции (номенклатуры) в Цифре из 1С.
Запрос
POST /api/product/create
Параметры запроса
| Параметр |
Тип |
Обязательный |
Описание |
SecretKey |
string |
Да |
Секретный ключ |
Data |
array |
Да |
Массив продукции
Структура Data[]
|
Структура Data[] (основные поля)
| Поле |
Тип |
Обязательное |
Описание |
Guid |
string |
Да |
Идентификатор в 1C |
Name |
string |
Да |
Наименование продукции |
Sku |
string |
Нет |
Артикул или код продукции |
Unit |
string |
Нет |
Единица измерения (м³, шт, кг) |
ShortName |
string |
Нет |
Короткое название |
Specification |
boolean |
Нет |
Является ли продукция спецификацией |
Price |
number |
Нет |
Цена |
VatRate |
float |
Нет |
Процент налога (например, 20) |
VatInPrice |
boolean |
Нет |
Включен ли НДС в стоимость |
Service |
string |
Нет |
Тип услуги: mix (доставка), downtime (простой), pump (насос), other (остальное). Если товар - оставить пустым |
Parent |
array |
Нет |
Массив родительского продукта (если есть иерархия)
Структура Parent[]
|
Characteristics |
array |
Нет |
Массив характеристик товара (например, сезонность)
Структура Characteristics[]
|
OutputProducts |
array |
Нет |
Массив выходных продуктов для ресурсной спецификации
Структура OutputProducts[]
|
Структура Parent[] (родительский продукт)
| Поле |
Тип |
Обязательное |
Описание |
Guid |
string |
Да |
Идентификатор родительского продукта в 1C |
Name |
string |
Да |
Наименование родительского продукта |
Sku |
string |
Нет |
Артикул родительского продукта |
Unit |
string |
Нет |
Единица измерения |
ShortName |
string |
Нет |
Краткое название |
| Также поддерживаются все поля бетонной продукции (см. ниже) |
Структура Characteristics[] (характеристики)
| Поле |
Тип |
Обязательное |
Описание |
Guid |
string |
Да |
Идентификатор характеристики в 1C |
Name |
string |
Нет |
Наименование характеристики (например, "Лето", "Зима") |
Value |
string |
Нет |
Значение характеристики |
Примечание: Для каждой характеристики создается отдельный товар с составным именем товара: {Name продукта} {Name характеристики}
Структура OutputProducts[] (выходные продукты, только для спецификаций)
| Поле |
Тип |
Обязательное |
Описание |
Guid |
string |
Да |
Идентификатор выходного продукта в 1C |
Name |
string |
Да |
Полное наименование выходного продукта |
ShortName |
string |
Нет |
Краткое наименование |
Unit |
string |
Нет |
Единица измерения |
Sku |
string |
Нет |
Артикул/код |
Структура Data[] (дополнительные поля для бетонной продукции)
| Поле |
Тип |
Обязательное |
Описание |
ViewName | string | Нет | Вид бетонной смеси и её условное обозначение |
NumberComposition | string | Нет | № номинального состава |
Brand | string | Нет | Марка бетона (М) |
Class | string | Нет | Класс бетона (В) |
Mobility | string | Нет | Подвижность бетона (П) |
ConeDraft | string | Нет | Осадка конуса |
WorkabilityTime | string | Нет | Сохр. удобоукл., (ч-мин) |
AggregateSize | string | Нет | Наибольшая крупность заполнителя (мм) |
Class28d | string | Нет | Класс бетона, 28 суток (В) |
Strength28d | string | Нет | Прочность, 28 суток (Мпа) |
Class7d | string | Нет | Класс бетона, 7 суток (В) |
Strength7d | string | Нет | Прочность, 7 суток (Мпа) |
CompressiveStrength | string | Нет | Прочность на сжатие |
AdditiveName | string | Нет | Добавка |
AdditiveWeight | string | Нет | Масса добавки |
Cement | string | Нет | Наименование и класс прочности применяемого цемента |
Declaration | string | Нет | Регистрационный номер декларации о соответствии |
Gost | string | Нет | Номер стандарта или ТУ |
Aeff | string | Нет | Удельная эффективная активность ЕРН Аэфф |
QualityIndicators | string | Нет | Показатели качества |
Пример запроса
{
"SecretKey": "2akgzOCYsAxLwpNl",
"Data": [
{
"Guid": "22db4291-154f-11ec-973e-244bfecb4e0a",
"Name": "БСТ М400БВ30W10П4F150",
"Sku": "00-00230232",
"Unit": "м³",
"ShortName": "М400",
"Specification": false,
"Price": 5000,
"VatRate": 20,
"VatInPrice": true,
"Service": null,
"Brand": "М400",
"Class": "В30",
"Mobility": "П4",
"Gost": "ГОСТ 7473-2010"
},
{
"Guid": "33ab5192-265g-22fc-a84f-355cgfdc5f1b",
"Name": "Доставка бетона",
"Unit": "км",
"Price": 50,
"Service": "mix"
}
]
}
Ответ
Коды ответов
| Код |
Описание |
200 |
Частичный успех. Часть данных обработана, но есть ошибки валидации (success: true) |
201 |
Успешное создание. Все данные обработаны без ошибок (success: true) |
401 |
Ошибка ключа. Секретный ключ не найден (success: false) |
422 |
Ошибка валидации. Data должен быть массивом (success: false) |
500 |
Ошибка сервера. Внутренняя ошибка обработки (success: false) |
Структура ответа
| Поле |
Тип |
Описание |
success |
boolean |
Успешность операции |
message |
string |
Сообщение об успешных операциях |
data_id |
integer |
ID записи в логе |
errors |
array |
Массив ошибок (только при наличии ошибок) |
Успешный ответ (201)
{
"success": true,
"message": "Загружено товаров: 5. Загружено характеристик: 15",
"data_id": 123
}
Частичный успех с ошибками (207)
{
"success": true,
"message": "Загружено товаров: 3",
"data_id": 123,
"errors": [
"Товаров без GUID: 2",
"Товаров без названия: 1"
]
}
Ошибка ключа (401)
{
"success": false,
"message": "Секретный ключ не найден",
"data_id": null
}
Ошибка валидации данных (422)
{
"success": false,
"message": "Неверный тип данных",
"data_id": 123
}
Ошибка сервера (500)
{
"success": false,
"message": "Произошла ошибка: подробное описание ошибки",
"data_id": 123
}
Примечания
- Отправляйте только бетон, смеси и инертные материалы
- Если продукция с указанным Guid существует, она будет обновлена
- Parent: Если указан родительский продукт, он будет создан как отдельный товар
- Характеристики без поля
Guid будут пропущены
- Продукты с названиями, содержащими служебные значения ("ручной", "(не выбран)", "тест", "физ.лицо"), не будут созданы
- Для услуг заполняйте поле
Service
- Для товаров оставляйте
Service пустым или null
- Спецификации: если
Specification = true
- Не отправляйте за раз более 2000 единиц или более 1 МБ данных
См. также