# Поля CRM-сущностей

Создание, чтение, обновление и удаление пользовательских полей для фиксированных CRM-сущностей: сделок, лидов, контактов, компаний, предложений и реквизитов. Сущность задаётся в пути запроса (`:entity`).

Битрикс24 API: `crm.<entity>.userfield.*`
Скоуп: `crm`

## Операции

- [Список полей](/docs/userfields/crm/list) — `GET /v1/userfields/:entity`
- [Каталог типов](/docs/userfields/crm/types) — `GET /v1/userfields/:entity/types`
- [Получить поле](/docs/userfields/crm/get) — `GET /v1/userfields/:entity/:id`
- [Создать поле](/docs/userfields/crm/create) — `POST /v1/userfields/:entity`
- [Обновить поле](/docs/userfields/crm/update) — `PATCH /v1/userfields/:entity/:id`
- [Удалить поле](/docs/userfields/crm/delete) — `DELETE /v1/userfields/:entity/:id`

## Поддерживаемые сущности

`:entity` в пути — одно из значений ниже. В ответе поле `entityId` содержит соответствующий внутренний идентификатор Битрикс24.

| `:entity` | `entityId` в ответе | Сущность |
|-----------|---------------------|----------|
| `deals` | `CRM_DEAL` | Сделка |
| `leads` | `CRM_LEAD` | Лид |
| `contacts` | `CRM_CONTACT` | Контакт |
| `companies` | `CRM_COMPANY` | Компания |
| `quotes` | `CRM_QUOTE` | Предложение |
| `requisites` | `CRM_REQUISITE` | Реквизиты |

## Соответствие имён полей

Таблица описывает свойства самого поля: в теле запроса и в ответе они называются camelCase-именами, а Битрикс24 хранит их в UPPER_CASE. Это помогает читать вложенные структуры (`settings`, элементы массива `list`), которые Битрикс24 возвращает «как есть». Имя поля в запросах к записям сущности — [Значения полей в записях](/docs/userfields#значения-полей-в-записях).

| API (camelCase) | Битрикс24 (UPPER_CASE) |
|-----------------|------------------------|
| `id` | `ID` |
| `entityId` | `ENTITY_ID` |
| `fieldName` | `FIELD_NAME` |
| `userTypeId` | `USER_TYPE_ID` |
| `xmlId` | `XML_ID` |
| `sort` | `SORT` |
| `multiple` | `MULTIPLE` |
| `mandatory` | `MANDATORY` |
| `showFilter` | `SHOW_FILTER` |
| `showInList` | `SHOW_IN_LIST` |
| `editInList` | `EDIT_IN_LIST` |
| `isSearchable` | `IS_SEARCHABLE` |
| `label` | `LABEL` |
| `editFormLabel` | `EDIT_FORM_LABEL` |
| `listColumnLabel` | `LIST_COLUMN_LABEL` |
| `listFilterLabel` | `LIST_FILTER_LABEL` |
| `errorMessage` | `ERROR_MESSAGE` |
| `helpMessage` | `HELP_MESSAGE` |
| `settings` | `SETTINGS` |
| `list` | `LIST` |

## Типовой сценарий

1. Посмотреть список уже созданных полей: [`GET /v1/userfields/deals`](/docs/userfields/crm/list).
2. Уточнить доступные типы: [`GET /v1/userfields/deals/types`](/docs/userfields/crm/types).
3. Создать новое поле с обязательным `userTypeId`: [`POST /v1/userfields/deals`](/docs/userfields/crm/create).
4. Прочитать его полное описание со значениями списка (для `enumeration`): [`GET /v1/userfields/deals/:id`](/docs/userfields/crm/get).
5. Обновить ([`PATCH`](/docs/userfields/crm/update)) или удалить ([`DELETE`](/docs/userfields/crm/delete)) по идентификатору.

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

- [Поля смарт-процессов](/docs/userfields/smart-processes)
- [Сделки](/docs/entities/deals)
- [Лиды](/docs/entities/leads)
- [Контакты](/docs/entities/contacts)
- [Компании](/docs/entities/companies)
- [Реквизиты](/docs/entities/requisites)
- [Пользовательские поля](/docs/userfields)
