# Управление формами

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

Битрикс24 API: `crm.form.*`
Скоуп: `crm`

## Операции

- [Создать форму](./create.md) — `POST /v1/crm-forms`
- [Список форм](./list.md) — `GET /v1/crm-forms`
- [Получить форму](./get.md) — `GET /v1/crm-forms/:id`
- [Изменить форму](./update.md) — `PATCH /v1/crm-forms/:id`
- [Удалить форму](./delete.md) — `DELETE /v1/crm-forms/:id`
- [Проверить форму](./validate.md) — `POST /v1/crm-forms/validate`
- [Включить форму](./activate.md) — `POST /v1/crm-forms/:id/activate`
- [Выключить форму](./deactivate.md) — `POST /v1/crm-forms/:id/deactivate`

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

1. Проверьте черновик без сохранения: `POST /v1/crm-forms/validate`.
2. Создайте форму: `POST /v1/crm-forms`. Поддерживаются плоское тело и `{fields:{...}}`. Если пришло `meta.warnings`, создание успешно: прочитайте форму через GET вместо повтора POST. При `CRM_FORM_PARTIALLY_CREATED` форма существует с `error.id`: прочитайте её, затем исправьте или удалите. Не повторяйте создание.
3. Для изменения прочитайте форму `GET /v1/crm-forms/:id`, сохраните `updatedTime` и передайте его в корне `PATCH /v1/crm-forms/:id`, с плоскими настройками или объектной обёрткой `fields`. Частичная проекция не является полной конфигурацией. Не сохраняйте ответ с `meta.redacted` обратно как полную форму.
4. Включайте и выключайте форму отдельными вызовами `activate` и `deactivate`. Сохраняйте фактические `active` и `updatedTime`. После записи с предупреждением о чтении выполните GET до следующего изменения.

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

- [Справочники конструктора](/docs/entities/crm-forms/builder)
- [Публикация и результаты](/docs/entities/crm-forms/publishing)
- [CRM-формы](/docs/entities/crm-forms)
