Документация
Гайды по подключению CRM, настройке webhook'ов и защите данных.
Быстрый старт
За 5 минут получите рабочий сценарий «webhook → Google Sheets».
- Зарегистрируйтесь — бесплатный тариф 100 задач/мес.
- В кабинете «Сценарии» → «Создать сценарий».
- На канвасе добавьте узел Webhook (триггер) → узел Google Sheets (действие).
- Скопируйте URL вебхука и вставьте его в настройки вашей CRM (раздел «Интеграции» → «Webhook»).
- Дождитесь первого события — Autoflow определит поля автоматически и предложит сопоставить их с колонками таблицы.
- Включите сценарий тумблером «Активен».
Интеграции CRM — скоро
Прямые интеграции с CRM (AmoCRM, Битрикс24) находятся в разработке. Когда они появятся — здесь будет инструкция по подключению через OAuth и настройке триггеров (новый лид, изменение сделки и т.п.).
Уже сейчас вы можете принимать вебхуки от любой CRM через универсальный Webhook-триггер, а также отправлять данные в любой REST API через действие HTTP. Этого достаточно, чтобы интегрироваться с большинством CRM, у которых есть исходящие вебхуки и REST API.
Подключение Google Sheets
Используем Google Service Account — это бессрочный доступ без OAuth-redirect.
- Зайдите в Google Cloud Console.
- Создайте проект (или используйте существующий).
- Включите API: APIs & Services → Enable APIs → Google Sheets API.
- IAM & Admin → Service Accounts → Create. Имя любое.
- Откройте созданный аккаунт → Keys → Add Key → JSON. Скачается файл с ключом.
- В Autoflow → Подключения → Google Sheets → Добавить:
- Service Account Email: поле
client_emailиз JSON - Private Key: поле
private_keyиз JSON (целиком, включая BEGIN/END строки)
- Service Account Email: поле
- Откройте Google Sheets таблицу → «Поделиться» → дайте email сервисного аккаунта роль Editor.
Ключ хранится в БД зашифрованным AES-256-GCM. После сохранения вы не сможете его увидеть в UI — только удалить и добавить заново.
Подключение Telegram
- В Telegram напишите @BotFather.
- Команда
/newbot→ дайте имя боту. - Скопируйте токен (выглядит как
1234567890:AAF...). - В Autoflow: Подключения → Telegram → Добавить, вставьте токен.
- В сценарии в действии Telegram укажите
chatId(ваш ID или ID канала, можно узнать через @userinfobot). - В шаблоне сообщения используйте
{{data.field_name}}для подстановки данных из webhook.
Действие HTTP — вызов любого API
Универсальный блок для интеграции с любым сервисом, у которого есть REST API. Поддерживает GET/POST/PUT/PATCH/DELETE и интерполяцию данных.
Поля действия
- URL — адрес запроса. Можно подставлять данные:
https://api.example.com/orders/{{data.id}} - Метод — GET / POST / PUT / PATCH / DELETE
- Тело (body) — JSON для POST/PUT/PATCH. Поддерживает интерполяцию:
{ "name": "{{data.name}}", "amount": {{data.amount}} }
Пример: отправка заявки в свой API
- Триггер — webhook от формы на сайте (например, поступила заявка с полями
name, phone, message). - Действие HTTP запрос:
- URL:
https://my-crm.example.com/api/leads - Метод:
POST - Body:
{ "client": "{{data.name}}", "phone": "{{data.phone}}", "comment": "{{data.message}}" }
- URL:
Что возвращает
В следующих шагах сценария доступны: {{data.status}} (HTTP-код, например 200) и {{data.body.X}} (поля JSON-ответа).
Авторизация (Bearer-токены, API-ключи) сейчас передаётся через URL или Body. Headers как отдельное поле — в разработке.
Защита webhook (HMAC-подпись)
По умолчанию webhook принимает любой запрос на свой URL. Если URL утечёт — злоумышленник может отправлять фейковые данные. Решение: HMAC-SHA256 подпись.
- Откройте сценарий, в карточке вебхука нажмите «Включить» рядом с «🔒 HMAC-подпись».
- Скопируйте секрет (показан один раз — сохраните в надёжном месте).
- Передайте секрет отправляющей стороне (CRM, скрипт).
- Отправляющая сторона должна добавлять заголовок
X-Webhook-Signature: <hmac_sha256(secret, body)>в hex.
Пример на Node.js:
const crypto = require('crypto')
const signature = crypto
.createHmac('sha256', SECRET)
.update(JSON.stringify(body))
.digest('hex')
fetch(WEBHOOK_URL, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'X-Webhook-Signature': signature
},
body: JSON.stringify(body)
})Пример на Python:
import hmac, hashlib, json, requests
body = json.dumps({"name": "test"}).encode()
signature = hmac.new(SECRET.encode(), body, hashlib.sha256).hexdigest()
requests.post(WEBHOOK_URL,
data=body,
headers={
"Content-Type": "application/json",
"X-Webhook-Signature": signature
})Подстановка данных в шаблоны
В любом текстовом поле действий можно вставлять значения из webhook через двойные фигурные скобки.
Webhook прислал:
{
"deal": {
"id": 12345,
"client": { "name": "Иван Петров", "phone": "+79991234567" }
},
"amount": 150000
}В шаблоне Telegram-сообщения:
Новая сделка #{{data.deal.id}}
Клиент: {{data.deal.client.name}}
Телефон: {{data.deal.client.phone}}
Сумма: {{data.amount}} ₽Если поле — массив, доступ через индекс: {{data.items[0].name}}.
Лимиты и тарификация
Один успешный запуск шага = 1 задача. Если в сценарии 3 действия — 1 webhook расходует 3 задачи. Failed-шаги не списываются.
Поддержка
- Email: info@tserta.com
- Время ответа: до 24 часов в рабочие дни (Free), приоритетная — на платных тарифах.
- Запросы по 152-ФЗ (экспорт/удаление данных) обрабатываются в течение 30 дней.