Создать раздел

POST /v1/product-sections

Создаёт новый раздел в каталоге товаров. Поля передаются плоско в корне JSON, без обёртки fields.

Поля запроса (body)

Поле Битрикс24 Тип Обяз. Описание
name NAME string да Название раздела
catalogId CATALOG_ID number нет Идентификатор каталога. Если не передавать — используется каталог товаров CRM портала. Список: GET /v1/catalogs
sectionId SECTION_ID number нет Идентификатор родительского раздела для вложенности. У раздела верхнего уровня — null
code CODE string нет Символьный код раздела. Если не передавать — формируется из name
xmlId XML_ID string нет Внешний идентификатор
sort SORT number нет Индекс сортировки

Примеры

curl — личный ключ

Terminal
curl -X POST "https://vibecode.bitrix24.tech/v1/product-sections" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Одежда",
    "catalogId": 25
  }'

curl — OAuth-приложение

Terminal
curl -X POST "https://vibecode.bitrix24.tech/v1/product-sections" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Одежда",
    "catalogId": 25
  }'

JavaScript — личный ключ

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/product-sections', {
  method: 'POST',
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    name: 'Одежда',
    catalogId: 25,
  }),
})

const { success, data } = await res.json()
console.log('ID раздела:', data.id)

JavaScript — OAuth-приложение

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/product-sections', {
  method: 'POST',
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    name: 'Одежда',
    catalogId: 25,
  }),
})

const { success, data } = await res.json()

Поля ответа

Возвращается полный объект созданного раздела.

Поле Тип Описание
id number Идентификатор созданного раздела
name string Название раздела
catalogId number Идентификатор каталога
sectionId number Идентификатор родительского раздела или null
xmlId string Внешний идентификатор или null
code string Символьный код раздела

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

JSON
{
  "success": true,
  "data": {
    "id": 197,
    "name": "Одежда",
    "catalogId": 25,
    "sectionId": null,
    "xmlId": null,
    "code": "odezhda"
  }
}

Пример ответа при ошибке

422 — не передано название раздела:

JSON
{
  "success": false,
  "error": {
    "code": "BITRIX_ERROR",
    "message": "Не указано название раздела."
  }
}

Ошибки

HTTP Код Описание
422 BITRIX_ERROR Не передано поле name — сообщение «Не указано название раздела.»
400 READONLY_FIELD В теле передано поле, доступное только для чтения, — id
403 SCOPE_DENIED Ключу не хватает скоупа crm
401 MISSING_API_KEY Не передан заголовок X-Api-Key

Полный список общих ошибок API — Ошибки.

Смотрите также