Для AI-агентов: markdown этой страницы — /docs-content/entities/catalog-price-types/fields.md индекс документации — /llms.txt

Поля типа цены

GET /v1/catalog-price-types/fields

Возвращает справочник полей типа цены с типами. Поля name, sort и xmlId доступны для записи, остальные — только для чтения.

Примеры

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

Terminal
curl "https://vibecode.bitrix24.tech/v1/catalog-price-types/fields" \
  -H "X-Api-Key: YOUR_API_KEY"

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

Terminal
curl "https://vibecode.bitrix24.tech/v1/catalog-price-types/fields" \
  -H "X-Api-Key: YOUR_APP_KEY" \
  -H "Authorization: Bearer USER_SESSION_TOKEN"

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/catalog-price-types/fields', {
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
  },
})

const { success, data } = await res.json()
console.log('Полей:', Object.keys(data.fields).length)

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

javascript
const res = await fetch('https://vibecode.bitrix24.tech/v1/catalog-price-types/fields', {
  headers: {
    'X-Api-Key': 'YOUR_APP_KEY',
    'Authorization': 'Bearer USER_SESSION_TOKEN',
  },
})

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

Поля ответа

data.fields — объект, ключ которого совпадает с именем поля, а значение содержит type (тип поля), readonly (true — поле нельзя передать при создании и обновлении), label (отображаемое название) и description (краткое описание). Значения label/description приходят на русском языке. Заголовками запроса язык не переключается. У полей, которые могут прийти без значения, стоит nullable: true. У поля, обязательного при создании, стоит required: true, у поля с фиксированным набором значений — список допустимых значений enum. Список data.batch пуст: пакетный режим отключён из-за необратимого удаления цен при удалении типа.

Поле Тип RO Описание
Полеid Типnumber ROда ОписаниеИдентификатор типа цены. Это значение передаётся в catalogGroupId при работе с ценами каталога
Полеname Типstring ROнет ОписаниеНазвание типа цены, как оно задано на портале
Полеbase Типstring ROда ОписаниеY у базового типа цены портала, N у остальных
ПолеxmlId Типstring ROнет ОписаниеВнешний код интеграций импорта и выгрузки. Может быть null
Полеsort Типnumber ROнет ОписаниеПорядок сортировки в интерфейсе Битрикс24
ПолеcreatedBy Типnumber ROда ОписаниеID пользователя, создавшего тип цены. Может быть null
ПолеmodifiedBy Типnumber ROда ОписаниеID пользователя, последним изменившего тип цены. Может быть null
ПолеdateCreate Типdatetime ROда ОписаниеДата и время создания типа цены. Может быть null
ПолеtimestampX Типdatetime ROда ОписаниеДата и время последнего изменения типа цены. Может быть null

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

JSON
{
  "success": true,
  "data": {
    "fields": {
      "id": { "type": "number", "readonly": true, "label": "ID", "description": "Идентификатор типа цены. Именно это значение /v1/catalog-prices ждёт в catalogGroupId." },
      "name": { "type": "string", "readonly": false, "required": true, "label": "Название", "description": "Обязательно при создании. Название типа цены на портале." },
      "base": { "type": "string", "readonly": true, "label": "Базовый тип цены", "description": "Только чтение: Y у базового типа, N у остальных. Запись Y переключила бы базовый тип всего портала. Его id зависит от портала.", "enum": [{ "value": "N", "label": "Other" }, { "value": "Y", "label": "Base" }] },
      "xmlId": { "type": "string", "readonly": false, "nullable": true, "label": "Внешний код", "description": "Внешний идентификатор, используемый интеграциями импорта и экспорта." },
      "sort": { "type": "number", "readonly": false, "label": "Сортировка", "description": "Порядок сортировки типа цены в интерфейсе Bitrix24." },
      "createdBy": { "type": "number", "readonly": true, "nullable": true, "label": "Кем создан", "description": "ID пользователя, создавшего тип цены." },
      "modifiedBy": { "type": "number", "readonly": true, "nullable": true, "label": "Кем изменён", "description": "ID пользователя, последним изменившего тип цены." },
      "dateCreate": { "type": "datetime", "readonly": true, "nullable": true, "label": "Дата создания", "description": "Дата и время создания типа цены." },
      "timestampX": { "type": "datetime", "readonly": true, "nullable": true, "label": "Дата изменения", "description": "Дата и время последнего изменения типа цены." }
    },
    "batch": []
  }
}

name, sort и xmlId можно передать на создание и изменение. base остаётся только для чтения: установка Y переключила бы базовый тип всего портала.

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

403 — нет скоупа:

JSON
{
  "success": false,
  "error": {
    "code": "SCOPE_DENIED",
    "message": "This endpoint requires 'catalog' scope"
  }
}

Ошибки

HTTP Код Описание
HTTP403 КодSCOPE_DENIED ОписаниеAPI-ключ не имеет скоупа catalog
HTTP401 КодMISSING_API_KEY ОписаниеНе передан заголовок X-Api-Key
HTTP429 КодRATE_LIMITED ОписаниеПревышен лимит запросов: 300 в минуту на портал, все API-ключи портала делят один лимит. Действующее значение — в заголовке x-ratelimit-limit. Повторите после срока из заголовка Retry-After

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

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