envyCRM в сценариях - действия, переменные и триггеры
Как добавлять действия envyCRM, заполнять OpenAPI-поля, сохранять ответ и запускать сценарии по messenger events.
Как найти нужное действие
Текущий generated каталог содержит 83 операции. В палитре они собраны в 9 нод: Лиды, Сделки, Задачи, Клиенты, Счета и товары, Мессенджер, Расписание, Статистика и Справочники. На холсте заголовок показывает рабочий раздел, а подпись EnvyCRM находится под ним.
После добавления ноды откройте ее настройки и используйте поле Действие. Поиск внутри поля понимает русское название, operationId и адрес API-метода. При смене уже настроенного действия Strelo предупреждает об очистке несовместимых параметров и тела запроса. Подключение и переменная результата сохраняются.
Частые действия:
| Задача | operationId |
|---|---|
| Создать лид | leadSet |
| Создать сделку | dealCreate |
| Сменить этап сделки | dealUpdateStage |
| Сменить ответственного | dealUpdateEmployee |
| Добавить теги к сделке | dealAddTags |
| Создать или обновить задачу | dealUpdateTask |
| Создать клиента | clientCreate |
| Создать товар | productCreate |
| Создать запись | scheduleEventCreate |
Как заполнять поля
Панель строится по схеме операции. Path и query параметры, body, enum, массивы, вложенные объекты и файлы показываются в подходящей форме. Обязательные поля отмечены и проверяются до публикации.
Для 13 частых операций вверху панели есть карточка с кнопкой Заполнить обязательные поля. Она добавляет только недостающие обязательные параметры и не стирает уже введенные значения. Замените подготовленные значения на реальные id, данные или переменные. Рядом доступна ссылка Документация операции, а для удаления и других опасных действий показывается отдельное предупреждение.
Строки поддерживают переменные Strelo. Например, в email можно указать {{email}}, в телефоне {{phone}}, а в id контакта {{contact_id}}. Для вложенных данных можно переключиться в JSON-режим и вставить валидный объект.
Не вставляйте API-ключ в параметры или body. Подключение подставляет его только на сервере. Для внешних messenger operations на chatnode host tenant API key не отправляется.
Поля operator_key, channel_connected_key и channel_key заполняются через saved alias. Сначала нажмите Messenger-секреты в карточке подключения, сохраните значение с нужным типом ключа, затем выберите alias в поле ноды. В flow config останется только ссылка {$envySecret:{kind,alias}}. Literal значение заблокировано и не должно публиковаться.
Как сохранить ответ
Укажите базовое имя в поле Переменная результата. Для имени envy доступны:
{{envy}}, полный безопасный JSON.{{envy_ok}}, успешность операции.{{envy_status}}, HTTP status.{{envy_data}}, полезные данные ответа.{{envy_error}}, безопасный текст ошибки.{{envy_error_code}}, внутренний код.{{envy_request_id}}, id запроса провайдера при наличии.
Следующая нода может вставить эти значения в сообщение, условие, поле контакта или другой API-вызов.
Ветки yes и no
Соедините порт yes с основным продолжением. Порт no используйте для понятной обработки ошибки: уведомить менеджера, записать код ошибки или попросить пользователя уточнить данные.
Не ставьте бесконечный повтор mutating операции в ветке no. Создание лида, сделки, задачи или записи может дать дубль. Автоматически повторяются только безопасные read-запросы, когда ошибка временная.
Одна нода события и четыре варианта
В палитре доступна одна нода Событие. После добавления выберите внутри нее один из четырех вариантов, подтвержденных OpenAPI:
envycrm_messenger_messageдля сообщения custom messenger webhook.envycrm_messenger_message_replyдля ответа custom messenger webhook.envycrm_app_messageдля сообщения messenger app.envycrm_app_statusдля статуса messenger app.
В настройках триггера выберите конкретное подключение. Для custom messenger webhook можно выбрать messenger integration. Для событий приложения можно выбрать подключенный канал приложения. При необходимости задайте direction, внешний id контакта и наличие вложения. В обоих случаях Strelo сохраняет в графе только SHA-256 хеш channel key, raw key в браузер и сценарий не попадает. Payload события становится доступен в переменных background flow.
События изменения лида, сделки, клиента, задачи или счета отсутствуют, потому что OpenAPI не описывает для них webhook. Если внешний процесс должен запустить сценарий, используйте отдельный API-вебхук Strelo и согласованный eventKey.
Диагностика runtime
invalid_input: проверьте обязательные поля, enum и структуру body.unauthorized: обновите API-ключ в подключении.forbidden: проверьте права ключа в envyCRM.rate_limited: уменьшите частоту и повторите только безопасный read-запрос.timeout: проверьте доступность envyCRM и веткуno.integration_disabled: включите подключение вНастройки, затемИнтеграции.unknown_operation: сохраненный operationId отсутствует в registry. Не заменяйте его произвольным URL, обновите сценарий после проверки OpenAPI drift.
Смежные вопросы
Не нашли ответ?
Спросите ИИ-ассистента или напишите живой поддержке - поможем разобраться.