---
title: "Создать правило автоматизации"
method: POST
path: "/api/v1/crm/automation/rules"
tags: ["CRM automation"]
---

# Создать правило автоматизации

`POST /api/v1/crm/automation/rules`

## Request

- Base URL: `https://erp.akeda.ru`
- URL: `https://erp.akeda.ru/api/v1/crm/automation/rules`
- Auth: one of:
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://erp.akeda.ru/oauth2/authorize`, token URL `https://erp.akeda.ru/oauth2/token`, scopes: `akeda:delegate`)

Правила «когда → если → то» живут в общем движке кабинета (/api/platform/automation/rules, «Настройки → Автоматизации»): новое правило CRM не заводится — 409 crm.automation_adopted.

## Headers

- `X-Tenant` string, required

## Request body

- CRMAutomationRuleInput
  - `name` string, required
  - `event_type` 'lead.created' | 'lead.qualified' | 'deal.created' | 'deal.stage_changed' | 'inbox.message_received', required
  - `conditions` object, nullable
  - `actions` CRMAutomationAction[], required
    - `type` 'assign_owner' | 'create_task' | 'create_event' | 'internal_notification', required
    - `owner_id` integer: Обязателен для assign_owner
    - `title` string: Обязателен для create_task и create_event
    - `description` string
    - `section_id` string, uuid
    - `starts_at` string, date-time
    - `ends_at` string, date-time
    - `timezone` string
  - `is_enabled` boolean

## Response `201`

Созданное правило

- CRMAutomationRule
  - `id` string, uuid, required
  - `name` string, required
  - `event_type` 'lead.created' | 'lead.qualified' | 'deal.created' | 'deal.stage_changed' | 'inbox.message_received', required
  - `conditions` object, nullable, required: Допустимые ключи - status, stage_id, owner_id
  - `actions` CRMAutomationAction[], nullable, required
    - `type` 'assign_owner' | 'create_task' | 'create_event' | 'internal_notification', required
    - `owner_id` integer: Обязателен для assign_owner
    - `title` string: Обязателен для create_task и create_event
    - `description` string
    - `section_id` string, uuid
    - `starts_at` string, date-time
    - `ends_at` string, date-time
    - `timezone` string
  - `is_enabled` boolean, required
  - `created_by` integer, required
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required
  - `adopted_at` string, date-time: Правило перенесено на общий движок: события после этого момента исполняет правило adopted_rule_id; здесь оно не правится (409)
  - `adopted_rule_id` string, uuid
  - `adoption_problem` object: Почему правило осталось в CRM: общий движок его не принял. Перенос идёт сам, правило с исправленным условием переедет при следующем проходе
    - `code` string, required: Код отказа проверки правила общим движком; текст — automation.problems.<code>
    - `field` string: Поле правила, к которому относится отказ
    - `params` object: Значения для текста отказа

## Other responses

- `400`: Некорректный запрос или нарушение бизнес-правила
- `401`: Сессия, ключ или кабинет не подтверждены
- `403`: Текущая роль не имеет требуемого права
- `409`: Конфликт версии, идемпотентности или бизнес-состояния

---

[API](https://skmtc.dev/akeda/apis/akeda-erp-client-api.md) · [All operations](https://skmtc.dev/akeda/apis/akeda-erp-client-api/llms.txt) · [OpenAPI document](https://skmtc.dev/akeda/apis/akeda-erp-client-api/revisions/3c60ded179f2?raw)
