gamification.shop.product.create

Scope: gamification

Кто может вызывать: Только admin или manager. Подробнее: Права доступа

Создать новый товар в магазине бонусов.

HTTP: POST

Побочные эффекты: добавляет элемент в инфоблок товаров магазина.

Параметры метода

Поля передаются через параметр fields (объект) либо напрямую:

Поле / псевдоним Тип Обяз. Описание
fields.NAME / name string да Название товара
fields.PRICE / price int да Цена в BAL
fields.ACTIVE / active string нет Активность: Y / N
fields.SECTIONS / sections int[] нет ID категорий
fields.SORT / sort int нет Порядок сортировки
fields.PREVIEW_TEXT / previewText string нет Краткое описание
fields.QUANTITY / quantity int нет Общий запас
fields.AVAILABLE_QUANTITY / availableQuantity int нет Доступное количество
fields.IS_QUANTITY / isQuantity string нет Учёт запаса: Y / N
fields.ENABLE_SELLING / enableSelling string нет Продажи включены: Y / N
fields.PREVIEW_PICTURE / previewPicture array | int нет Картинка товара: файл REST Битрикс24 ["pic.png", "<base64>"] (jpg, png, gif, webp) или ID файла, загруженного текущим пользователем в форме карточки бонуса в этой сессии; {"del": "Y"} — удалить. ID чужого файла игнорируется, путь на сервере и файловый массив — VALIDATION_ERROR
fields.ACTIVE_FROM / activeFrom string нет Дата начала активности
fields.ACTIVE_TO / activeTo string нет Дата окончания активности

Возвращаемые данные

result.result — объект созданного товара (поля — как у gamification.shop.product.get) и массив warnings.

Товар с вариантами. Цена и остаток товара с вариантами задаются у его вариантов. Если товар уже имеет тип «товар с вариантами», поля PRICE, QUANTITY, AVAILABLE_QUANTITY, IS_QUANTITY, ENABLE_SELLING игнорируются, остальные поля сохраняются, а в ответе возвращается warnings: ["PRICE_IGNORED_FOR_SKU"]. Для простого товара warnings — пустой массив.

Обработка ошибок

Справочник кодов ошибок.

Код Описание
UNAUTHORIZED Пользователь не авторизован
ACCESS_DENIED Вызывающий не является admin/manager
VALIDATION_ERROR Не переданы поля или fields не является объектом; previewPicture / fields.PREVIEW_PICTURE — не файл REST ["имя.png", "<base64>"] с изображением jpg/png/gif/webp (файловый массив, путь на сервере, не изображение; details.field = previewPicture)

Пример запроса (POST)

curl -X POST "https://{портал}/rest/{user_id}/{webhook_code}/gamification.shop.product.create.json" \
          -H "Content-Type: application/json" \
          -d '{
            "fields": {
              "NAME": "Кофе",
              "PRICE": 100,
              "ACTIVE": "Y",
              "ENABLE_SELLING": "Y"
            }
          }'
        

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

{
          "result": {
            "result": {
              "ID": "5",
              "NAME": "Кофе",
              "PRICE": "100",
              "ACTIVE": "Y"
            },
            "total": null,
            "next": null,
            "error": null
          }
        }