метод REST scope: userfieldconfig, scope модуля из moduleId (например, crm)

userfieldconfig.add

Добавить пользовательское поле

Кто может выполнять: пользователь с правом изменения настроек объекта в модуле moduleId (для crm — право «Разрешить изменять настройки»)

Описание

Метод userfieldconfig.add добавляет новое пользовательское поле.

Параметры

moduleId string обязательный

Идентификатор модуля, в котором создается поле

field object обязательный

Объект с настройками пользовательского поля (подробное описание)

Параметр field

entityId string обязательный

Идентификатор объекта, для которого создается поле. Формат зависит от модуля, например CRM_7 для смарт-процесса

fieldName string обязательный

Код поля в формате UF_{ИДЕНТИФИКАТОР_ОБЪЕКТА}_{POSTFIX}. Код должен быть уникальным в рамках объекта. Допустимы символы A-Z, 0-9, _. Максимальная длина кода 50 символов

userTypeId string обязательный

Идентификатор типа поля. Список доступных типов возвращает метод userfieldconfig.getTypes

xmlId string необязательный

Внешний идентификатор поля

sort integer необязательный

Индекс сортировки. По умолчанию 100

multiple boolean необязательный

Является ли поле множественным. Возможные значения: Y или N. По умолчанию N

mandatory boolean необязательный

Является ли поле обязательным. Возможные значения: Y или N. По умолчанию N

showFilter boolean необязательный

Показывать ли поле в фильтре. Возможные значения: Y или N. По умолчанию N

editInList boolean необязательный

Разрешать ли редактирование значения в списке. Возможные значения: Y или N

isSearchable boolean необязательный

Участвуют ли значения поля в поиске. Возможные значения: Y или N

settings object необязательный

Дополнительные настройки поля. Набор ключей зависит от userTypeId (подробное описание)

editFormLabel string необязательный

Подпись в форме редактирования. При передаче строки используется как общее значение, при передаче lang_map можно задать подпись по языкам

helpMessage string необязательный

Текст подсказки. При передаче строки используется как общее значение, при передаче lang_map можно задать подсказку по языкам

enum uf_enum_element[] необязательный

Варианты значений для поля типа enumeration

Тип uf_enum_element

value string обязательный

Значение варианта списка

def boolean необязательный

Флаг значения по умолчанию (Y/N)

sort integer необязательный

Индекс сортировки варианта

xmlId string необязательный

Внешний идентификатор варианта

Примеры запроса

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "moduleId": "crm",
    "field": {
      "entityId": "CRM_7",
      "fieldName": "UF_CRM_7_NEW_REST_LIST_2026",
      "userTypeId": "enumeration",
      "multiple": "Y",
      "editFormLabel": {
        "ru": "Список характеристик",
        "en": "List of characteristics"
      },
      "enum": [
        { "value": "Характеристика 1", "def": "N", "sort": 100 },
        { "value": "Характеристика 2", "def": "Y", "sort": 200 }
      ]
    }
  }' \
  "https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/userfieldconfig.add"

Ответ

HTTP-статус: 200

{
    "result": {
        "field": {
            "id": "6953",
            "entityId": "CRM_7",
            "fieldName": "UF_CRM_7_NEW_REST_LIST_2026",
            "userTypeId": "enumeration",
            "xmlId": null,
            "sort": "100",
            "multiple": "Y",
            "mandatory": "N",
            "showFilter": "N",
            "showInList": "Y",
            "editInList": "Y",
            "isSearchable": "N",
            "settings": {
                "DISPLAY": "LIST",
                "LIST_HEIGHT": 1,
                "CAPTION_NO_VALUE": "",
                "SHOW_NO_VALUE": "Y"
            },
            "languageId": {
                "en": "en",
                "ru": "ru"
            },
            "editFormLabel": {
                "en": "List of characteristics",
                "ru": "Список характеристик"
            },
            "listColumnLabel": {
                "en": null,
                "ru": null
            },
            "listFilterLabel": {
                "en": null,
                "ru": null
            },
            "errorMessage": {
                "en": null,
                "ru": null
            },
            "helpMessage": {
                "en": null,
                "ru": null
            },
            "enum": [
                {
                    "id": "3363",
                    "userFieldId": "6953",
                    "value": "Характеристика 1",
                    "def": "N",
                    "sort": "100",
                    "xmlId": "56dff18efcfe25f3bae0117a6b372567"
                },
                {
                    "id": "3365",
                    "userFieldId": "6953",
                    "value": "Характеристика 2",
                    "def": "Y",
                    "sort": "200",
                    "xmlId": "42e3ebcf5506a65283bf3bf510d8f05a"
                }
            ]
        }
    },
    "time": {
        "start": 1724239307.903115,
        "finish": 1724239308.567422,
        "duration": 0.6643068790435791,
        "processing": 0.20090818405151367,
        "date_start": "2024-08-21T13:21:47+02:00",
        "date_finish": "2024-08-21T13:21:48+02:00",
        "operating": 0
    }
}

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

result object

Корневой элемент ответа (подробное описание)

time time

Информация о времени выполнения запроса

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

HTTP-статус: 400

{
    "error": "",
    "error_description": "The 'FIELD_NAME' field is not found."
}
Код Описание Значение
Access denied Недостаточно прав для создания пользовательского поля
Вы не можете создавать пользовательские поля Ошибка может возвращаться, если field.fieldName не начинается с UF_{entityId}_
The 'USER_TYPE_ID' field is not found Не передан обязательный field.userTypeId
The 'FIELD_NAME' field is not found Не передан обязательный field.fieldName
Поле ... уже существует Переданный field.fieldName уже используется для этого объекта
Fail to create new user field Ошибка создания поля на стороне сервера
Fail to save enumeration field values Ошибка сохранения значений списка для типа enumeration

Что будем искать? Например,Продвижение

Этот сайт использует куки-файлы. Оставаясь на сайте, Вы соглашаетесь на их использование. Для получения дополнительной информации, пожалуйста, ознакомьтесь с политикой в отношении персональных данных.