Быстрый старт — настройка Trigly за 15 минут
Пошаговая инструкция по настройке Trigly: регистрация, импорт контактов, подключение каналов, первая кампания.
Введение
Trigly — AI-платформа автоматизации маркетинга, объединяющая CDP, email, Telegram, SMS и push-уведомления в едином интерфейсе. В этом руководстве вы пройдёте путь от регистрации до запуска первой кампании за 15 минут.
Что вы получите в итоге:
- Аккаунт с настроенной организацией
- Импортированную базу контактов
- Подключённый email-канал
- Запущенную первую кампанию с шаблоном
- Работающий SDK для отслеживания событий на сайте
Предварительные требования
- Доступ к API:
https://api.trigly.ru(или ваш self-hosted сервер) - cURL или любой HTTP-клиент (Postman, httpx, fetch)
- CSV-файл с контактами (опционально — можно добавить вручную)
Шаг 1. Регистрация и получение токена
Создайте организацию и пользователя-владельца одним запросом к /api/v1/auth/register:
curl -X POST https://api.trigly.ru/api/v1/auth/register \
-H "Content-Type: application/json" \
-d '{
"organization_name": "Моя компания",
"email": "admin@mycompany.ru",
"password": "SecureP@ss123!"
}'
Ожидаемый ответ (200 OK):
{
"access_token": "eyJhbGciOiJIUzI1NiIs...",
"refresh_token": "eyJhbGciOiJIUzI1NiIs...",
"token_type": "bearer",
"user": {
"id": "550e8400-e29b-41d4-a716-446655440000",
"email": "admin@mycompany.ru",
"role": "owner",
"organization_id": "660e8400-e29b-41d4-a716-446655440001"
}
}
Сохраните access_token — он понадобится для всех дальнейших запросов. Токен действует 30 минут, после чего его нужно обновить через /api/v1/auth/refresh.
# Сохраните токен в переменную для удобства
export TOKEN="eyJhbGciOiJIUzI1NiIs..."
Совет: В UI Trigly регистрация доступна на странице
/register. После регистрации вы автоматически попадёте в дашборд.
Шаг 2. Импорт контактов
Trigly предлагает несколько способов добавления контактов: ручное создание, CSV-импорт и SDK-идентификацию. Рассмотрим все три.
2.1. Создание контакта через API
curl -X POST https://api.trigly.ru/api/v1/cdp/customers \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"email": "ivan@example.com",
"first_name": "Иван",
"last_name": "Петров",
"phone": "+79161234567",
"city": "Москва",
"tags": ["vip", "новый"],
"custom_fields": {
"preferred_brand": "Nike",
"shoe_size": 42
}
}'
Ответ (201 Created):
{
"id": "770e8400-e29b-41d4-a716-446655440002",
"email": "ivan@example.com",
"first_name": "Иван",
"last_name": "Петров",
"tags": ["vip", "новый"],
"lifecycle_stage": "new",
"data_quality_score": 75,
"created_at": "2026-03-20T10:00:00Z"
}
2.2. Массовый импорт из CSV
Подготовьте CSV-файл со столбцами email, first_name, last_name, phone, city:
email,first_name,last_name,phone,city
ivan@example.com,Иван,Петров,+79161234567,Москва
anna@example.com,Анна,Сидорова,+79167654321,Санкт-Петербург
sergey@example.com,Сергей,Козлов,+79169876543,Казань
Загрузите файл и запустите импорт:
# Шаг 1: Загрузка файла
curl -X POST https://api.trigly.ru/api/v1/cdp/imports/upload \
-H "Authorization: Bearer $TOKEN" \
-F "file=@contacts.csv"
# Ответ: {"import_id": "880e8400-...", "status": "uploaded", "total_rows": 3}
# Шаг 2: Предпросмотр (проверка маппинга полей)
curl https://api.trigly.ru/api/v1/cdp/imports/880e8400-.../preview \
-H "Authorization: Bearer $TOKEN"
# Шаг 3: Запуск импорта
curl -X POST https://api.trigly.ru/api/v1/cdp/imports/880e8400-.../start \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"deduplicate_by": "email"}'
Импорт выполняется асинхронно. Проверяйте статус:
curl https://api.trigly.ru/api/v1/cdp/imports/880e8400-.../status \
-H "Authorization: Bearer $TOKEN"
# {"status": "completed", "imported": 3, "skipped": 0, "errors": 0}
2.3. Создание сегмента
После импорта создайте сегмент для таргетирования:
curl -X POST https://api.trigly.ru/api/v1/cdp/segments \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Москвичи",
"segment_type": "dynamic",
"rules": {
"operator": "and",
"conditions": [
{"field": "city", "operator": "equals", "value": "Москва"}
]
}
}'
Динамические сегменты автоматически пересчитываются каждые 30 минут. Также можно вызвать пересчёт вручную через POST /api/v1/cdp/segments/{id}/refresh.
Шаг 3. Подключение каналов
Trigly поддерживает 6 каналов доставки: Email (SMTP / Unisender), SMS (sms.ru), Telegram Bot, WhatsApp Cloud API, Web Push. Подключим email — самый популярный канал.
3.1. Email через SMTP
curl -X POST https://api.trigly.ru/api/v1/channels/config \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channel_type": "email",
"provider": "smtp",
"sender_name": "Моя Компания",
"sender_address": "noreply@mycompany.ru",
"credentials": {
"smtp_host": "smtp.yandex.ru",
"smtp_port": 465,
"smtp_username": "noreply@mycompany.ru",
"smtp_password": "app-password-here",
"smtp_use_ssl": true
},
"daily_limit": 1000,
"monthly_limit": 30000
}'
3.2. Проверка подключения
curl -X POST https://api.trigly.ru/api/v1/channels/config/{config_id}/test \
-H "Authorization: Bearer $TOKEN"
# {"success": true, "latency_ms": 245, "provider": "smtp"}
3.3. Telegram Bot (опционально)
curl -X POST https://api.trigly.ru/api/v1/channels/config \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"channel_type": "telegram",
"provider": "telegram_bot",
"credentials": {
"bot_token": "123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11"
}
}'
При подключении Telegram Trigly автоматически вызывает getMe для проверки токена и устанавливает Webhook для приёма входящих сообщений.
Шаг 4. Создание и запуск кампании
4.1. Создание шаблона
curl -X POST https://api.trigly.ru/api/v1/templates \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Приветственное письмо",
"channel": "email",
"subject": "Добро пожаловать, {{ first_name }}!",
"body_html": "<h1>Привет, {{ first_name }}!</h1><p>Рады видеть вас в нашем магазине. Ваш промокод: <b>WELCOME10</b></p><p>Он даёт скидку 10% на первый заказ.</p>",
"body_text": "Привет, {{ first_name }}! Рады видеть вас. Промокод WELCOME10 — скидка 10%.",
"variables": ["first_name"]
}'
Trigly использует Jinja2-шаблонизатор. Доступные переменные: все поля контакта (first_name, last_name, email, city, custom_fields.*), а также встроенные фильтры currency, date_format.
4.2. Создание кампании
curl -X POST https://api.trigly.ru/api/v1/campaigns \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Приветственная рассылка",
"channel": "email",
"campaign_type": "one_time",
"segment_id": "SEGMENT_ID_FROM_STEP_2",
"template_id": "TEMPLATE_ID_FROM_STEP_4_1",
"subject": "Добро пожаловать, {{ first_name }}!"
}'
4.3. Запуск кампании
curl -X POST https://api.trigly.ru/api/v1/campaigns/{campaign_id}/launch \
-H "Authorization: Bearer $TOKEN"
# {"status": "running", "total_recipients": 150}
После запуска кампания переходит в статус running. Trigly отправляет сообщения пакетами по 50 с проверкой частотных ограничений. Отслеживайте статистику:
curl https://api.trigly.ru/api/v1/campaigns/{campaign_id}/stats \
-H "Authorization: Bearer $TOKEN"
# {
# "total_recipients": 150,
# "sent": 148,
# "delivered": 145,
# "opened": 67,
# "clicked": 23,
# "failed": 2
# }
Шаг 5. Установка SDK для отслеживания событий
Для отслеживания действий пользователей на сайте вам потребуется API-ключ и JavaScript SDK.
5.1. Создание API-ключа
curl -X POST https://api.trigly.ru/api/v1/cdp/api-keys \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"name": "Основной сайт"}'
# {"api_key": "tgl_live_abc123def456...", "name": "Основной сайт"}
5.2. Отслеживание событий
Отправляйте события через SDK-эндпоинт (не требует JWT — авторизация по API-ключу):
curl -X POST https://api.trigly.ru/api/v1/sdk/track \
-H "X-API-Key: tgl_live_abc123def456..." \
-H "Content-Type: application/json" \
-d '{
"customer_id": "770e8400-e29b-41d4-a716-446655440002",
"event_name": "purchase",
"properties": {
"order_id": "ORD-12345",
"amount": 4990,
"products": ["Кроссовки Nike Air Max"]
}
}'
5.3. Идентификация пользователей
curl -X POST https://api.trigly.ru/api/v1/sdk/identify \
-H "X-API-Key: tgl_live_abc123def456..." \
-H "Content-Type: application/json" \
-d '{
"email": "ivan@example.com",
"first_name": "Иван",
"custom_fields": {"last_visited": "2026-03-20"}
}'
5.4. Push-уведомления (Web Push)
Для подписки на push-уведомления используйте SDK-эндпоинты:
# Получение VAPID-ключа
curl "https://api.trigly.ru/api/v1/sdk/push/vapid-key?org_id=ORG_ID"
# Подписка
curl -X POST "https://api.trigly.ru/api/v1/sdk/push/subscribe?org_id=ORG_ID" \
-H "Content-Type: application/json" \
-d '{
"customer_id": "CUSTOMER_ID",
"subscription": {
"endpoint": "https://fcm.googleapis.com/fcm/send/...",
"keys": {"p256dh": "...", "auth": "..."}
}
}'
Что дальше?
Вы прошли базовую настройку Trigly. Вот что можно сделать дальше:
| Задача | Документация |
|---|---|
| Настроить JWT-аутентификацию | Аутентификация API |
| Работать с CDP API | CDP API Reference |
| Создать триггерные цепочки | Campaigns API |
| Интегрировать Webhooks | Руководство по Webhooks |
| Установить JS SDK на сайт | JavaScript SDK |
Полезные советы
- Rate Limits: API имеет ограничения — 500 запросов/мин для стандартных эндпоинтов, 1000/мин для SDK. Подробнее в документации по аутентификации.
- Пагинация: Все списковые эндпоинты поддерживают пагинацию через
?page=1&per_page=50. - Мультитенантность: Каждый запрос автоматически ограничен вашей организацией через JWT-токен. Данные полностью изолированы.
- AI-функции: Trigly включает AI-копирайтинг, скоринг контактов, предикцию оттока и RFM-анализ. Все доступны через
/api/v1/ai.
Получение помощи
- Swagger UI: Интерактивная документация доступна по адресу
https://api.trigly.ru/docs - Поддержка: Telegram-чат @trigly_support
- Email: hello@trigly.ru
Не нашли ответ?
Swagger UI с интерактивной документацией и поддержка в Telegram.