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

Справочники конструктора

Узнайте, какие свойства формы публикует API, какие поля сущностей CRM можно добавить в форму и какие настройки и сценарии доступны на портале. Методы группы только читают данные.

Битрикс24 API: crm.form.field.*, crm.form.configuration.get, crm.form.entityfield.list, crm.form.scenario.list, crm.form.scenariocategory.list Скоуп: crm

Поля контракта формы

GET /v1/crm-forms/fields

Возвращает схему свойств верхнего уровня CRM-формы. По ней проверяют, какие блоки конфигурации входят в контракт формы, перед созданием или изменением формы.

Параметры

Параметр Тип Описание
Параметрselect (query) Типstring ОписаниеСвойства метаданных через запятую, например name,type,multiple. Без параметра возвращаются все свойства метаданных

Примеры

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

Terminal
curl "https://vibecode.bitrix24.tech/v1/crm-forms/fields" \
  -H "X-Api-Key: YOUR_API_KEY"

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

Terminal
curl "https://vibecode.bitrix24.tech/v1/crm-forms/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/crm-forms/fields', {
  headers: {
    'X-Api-Key': 'YOUR_API_KEY',
  },
})

const { success, data } = await res.json()
console.log('Свойств формы:', data.length)

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

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

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

Поля ответа

Поле Тип Описание
Полеsuccess Типboolean ОписаниеВсегда true при успехе
Полеdata Типarray ОписаниеОписания свойств формы. Состав свойств — в таблице ниже
Полеdata[].name Типstring ОписаниеИмя свойства формы
Полеdata[].type Типstring ОписаниеТип значения: int, string, bool, date-time или object
Полеdata[].elementType Типstring | null ОписаниеТип элемента у множественного свойства, например object. null у одиночных свойств
Полеdata[].multiple Типboolean Описаниеtrue — значение свойства массив
Полеdata[].title Типstring ОписаниеПодпись свойства. Совпадает с name
Полеdata[].description Типstring | null ОписаниеОписание свойства
Полеdata[].validationRules Типarray ОписаниеПравила проверки значения
Полеdata[].requiredGroups Типarray | null ОписаниеГруппы обязательности
Полеdata[].filterable Типboolean ОписаниеОтмечено ли свойство как фильтруемое
Полеdata[].sortable Типboolean ОписаниеОтмечено ли свойство как сортируемое
Полеdata[].editable Типboolean ОписаниеПризнак изменяемости из схемы. Приходит false у всех свойств, записываемые свойства проверяет Битрикс24 при сохранении формы

Свойства формы в data:

Поле Тип RO Описание
Полеid Типint ROда ОписаниеИдентификатор формы. Список: GET /v1/crm-forms
Полеcode Типstring ROда ОписаниеСимвольный код формы
Полеname Типstring RO ОписаниеНазвание формы
Полеactive Типbool RO ОписаниеВключена ли форма. Передаётся только при создании. У существующей формы меняется через включение и выключение
Полеsystem Типbool ROда ОписаниеСистемная форма
ПолеlanguageId Типstring RO ОписаниеЯзык формы. Список: data.languages[].id в конфигурации конструктора
ПолеtemplateId Типstring RO ОписаниеШаблон формы
ПолеcreatedTime Типdate-time ROда ОписаниеВремя создания
ПолеupdatedTime Типdate-time ROда ОписаниеВремя последнего изменения. Передаётся в изменении формы как версия для защиты от перезаписи чужих изменений
ПолеactiveChangedById Типint ROда ОписаниеКто последним менял активность. Список: GET /v1/users
ПолеactiveChangedTime Типdate-time ROда ОписаниеКогда последний раз менялась активность
Полеappearance Типobject RO ОписаниеОформление: заголовок, описание, подпись и цвета кнопки
Полеcrm Типobject RO ОписаниеПривязка к CRM: схема сущностей, режим дублей, воронка. Значения — в конфигурации конструктора
Полеdependencies Типobject RO ОписаниеМассив правил зависимости полей, multiple: true
ПолеpresetFields Типobject RO ОписаниеМассив предустановленных значений полей, multiple: true
Полеresponsible Типobject RO ОписаниеОтветственные за результаты формы и учёт рабочего времени. ID ответственных — из GET /v1/users
Полеagreements Типobject RO ОписаниеСоглашения, которые посетитель принимает при отправке
Полеsubmission Типobject RO ОписаниеДействия после отправки: тексты и адреса перехода при успехе и ошибке
Полеpayment Типobject RO ОписаниеНастройки оплаты
Полеcallback Типobject RO ОписаниеНастройки обратного звонка
Полеbooking Типobject RO ОписаниеНастройки бронирования
Полеanalytics Типobject RO ОписаниеНастройки аналитики
ПолеspamProtection Типobject RO ОписаниеНастройки защиты от спама
Полеintegrations Типobject RO ОписаниеНастройки интеграций
Полеfields Типobject RO ОписаниеМассив полей формы, multiple: true. Имена полей — из GET /v1/crm-forms/entity-fields

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

JSON
{
  "success": true,
  "data": [
    {"name": "id", "type": "int", "elementType": null, "multiple": false, "title": "id", "description": null, "validationRules": [], "requiredGroups": null, "filterable": true, "sortable": true, "editable": false},
    {"name": "code", "type": "string", "elementType": null, "multiple": false, "title": "code", "description": null, "validationRules": [], "requiredGroups": null, "filterable": true, "sortable": false, "editable": false},
    {"name": "name", "type": "string", "elementType": null, "multiple": false, "title": "name", "description": null, "validationRules": [], "requiredGroups": null, "filterable": true, "sortable": true, "editable": false},
    {"name": "active", "type": "bool", "elementType": null, "multiple": false, "title": "active", "description": null, "validationRules": [], "requiredGroups": null, "filterable": true, "sortable": true, "editable": false},
    {"name": "system", "type": "bool", "elementType": null, "multiple": false, "title": "system", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "languageId", "type": "string", "elementType": null, "multiple": false, "title": "languageId", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "templateId", "type": "string", "elementType": null, "multiple": false, "title": "templateId", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "createdTime", "type": "date-time", "elementType": null, "multiple": false, "title": "createdTime", "description": null, "validationRules": [], "requiredGroups": null, "filterable": true, "sortable": true, "editable": false},
    {"name": "updatedTime", "type": "date-time", "elementType": null, "multiple": false, "title": "updatedTime", "description": null, "validationRules": [], "requiredGroups": null, "filterable": true, "sortable": true, "editable": false},
    {"name": "activeChangedById", "type": "int", "elementType": null, "multiple": false, "title": "activeChangedById", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "activeChangedTime", "type": "date-time", "elementType": null, "multiple": false, "title": "activeChangedTime", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "appearance", "type": "object", "elementType": null, "multiple": false, "title": "appearance", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "crm", "type": "object", "elementType": null, "multiple": false, "title": "crm", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "dependencies", "type": "object", "elementType": "object", "multiple": true, "title": "dependencies", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "presetFields", "type": "object", "elementType": "object", "multiple": true, "title": "presetFields", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "responsible", "type": "object", "elementType": null, "multiple": false, "title": "responsible", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "agreements", "type": "object", "elementType": null, "multiple": false, "title": "agreements", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "submission", "type": "object", "elementType": null, "multiple": false, "title": "submission", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "payment", "type": "object", "elementType": null, "multiple": false, "title": "payment", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "callback", "type": "object", "elementType": null, "multiple": false, "title": "callback", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "booking", "type": "object", "elementType": null, "multiple": false, "title": "booking", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "analytics", "type": "object", "elementType": null, "multiple": false, "title": "analytics", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "spamProtection", "type": "object", "elementType": null, "multiple": false, "title": "spamProtection", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "integrations", "type": "object", "elementType": null, "multiple": false, "title": "integrations", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false},
    {"name": "fields", "type": "object", "elementType": "object", "multiple": true, "title": "fields", "description": null, "validationRules": [], "requiredGroups": null, "filterable": false, "sortable": false, "editable": false}
  ]
}

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

400 — передан неизвестный параметр запроса:

JSON
{
  "success": false,
  "error": {
    "code": "INVALID_PARAMS",
    "message": "Unknown query parameter"
  }
}

Ошибки

HTTP Код Описание
HTTP400 КодINVALID_PARAMS ОписаниеПередан неизвестный параметр запроса
HTTP400 КодINVALID_PARAMS Описаниеselect не является строкой или массивом строк
HTTP400 КодINVALID_PARAMS ОписаниеБитрикс24 отклонил проекцию. Исходный код — в error.b24Code
HTTP403 КодBITRIX_ACCESS_DENIED ОписаниеУ пользователя Битрикс24 нет прав на формы
HTTP403 КодBITRIX_INSUFFICIENT_SCOPE ОписаниеУ токена Битрикс24 нет необходимого скоупа
HTTP404 КодENTITY_NOT_FOUND ОписаниеПортал не нашёл запрошенную сущность или описание поля. Исходный код — error.b24Code
HTTP409 КодCRM_FORM_REST_NOT_ENABLED ОписаниеREST-методы CRM-форм недоступны на этом портале Битрикс24. Это не означает отсутствие отдельной формы
HTTP400–599 КодCRM_FORM_* ОписаниеОтказ по правилам форм. Код и HTTP-статус сохранены, исходный код — в error.b24Code
HTTP422 КодBITRIX_ERROR ОписаниеДругой отказ Битрикс24. Причина — в error.message, исходный код — в error.b24Code
HTTP429 КодRATE_LIMITED ОписаниеПревышена частота запросов. Учитывайте заголовок Retry-After
HTTP502 КодBITRIX_UNAVAILABLE ОписаниеБитрикс24 вернул ответ в неожиданном виде
HTTP502 КодBITRIX_UNAVAILABLE ОписаниеБитрикс24 недоступен: ошибка сервера или разрыв соединения
HTTP503 КодBITRIX_TIMEOUT ОписаниеБитрикс24 не ответил вовремя. Чтение можно повторить
HTTP401 КодMISSING_API_KEY ОписаниеНе передан заголовок X-Api-Key
HTTP401 КодTOKEN_MISSING ОписаниеУ ключа не настроен доступ к Битрикс24
HTTP403 КодSCOPE_DENIED ОписаниеУ API-ключа Вайбкод нет скоупа crm

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

Известные особенности

Этот справочник описывает свойства самой формы. CRM-поля и варианты их значений перечисляет отдельный Список полей сущностей. Это разные справочники.

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