API · Default
API-документация
Все внешние запросы идут с заголовком X-API-Key. Создайте внешний ключ в разделе “Пользователи и доступ → API-ключи”; полный ключ показывается один раз, в базе хранится только hash.
Авторизация
Пример для CRM, сайта или серверного скрипта. Если ключ скомпрометирован — отключите его в списке API-ключей.
X-API-Key: gs_live_...
Content-Type: application/json
Создать или отключить API-ключEndpoints
| Метод | Назначение | Пример JSON |
|---|---|---|
POST /api/sites | Создать/обновить проект | {"site_key":"luch","name":"Луч знаний","from_email":"no-reply@mail.luchznaniy.ru"} |
POST /api/contacts/upsert | Создать/обновить контакт | {"site_key":"luch","email":"user@example.com","name":"Ирина","fields":{"course":"Педагогика"}} |
POST /api/contacts/{contact_id}/status | Изменить статус контакта: active/unsubscribed/invalid/admin_blocked | {"status":"admin_blocked","reason":"manual block"} |
POST /api/lists | Создать адресную книгу; uniqueness_mode=email или order | {"site_key":"luch","name":"Неоплаченные заказы","uniqueness_mode":"order"} |
GET /api/lists?site_key=luch | Получить адресные книги проекта | |
POST /api/lists/{list_id}/contacts | Добавить контакт в адресную книгу; для order-книги передавайте order_key | {"contact_id":123,"order_key":"КПК-135-96"} |
POST /api/templates | Создать email-шаблон | {"site_key":"luch","name":"Welcome","subject":"Привет {{name}}","html":"<p>...</p>","text":"..."} |
POST /api/sequences | Создать автоцепочку | {"site_key":"luch","name":"Repeat","steps":[{"template_id":1,"delay_minutes":0}]} |
POST /api/sequences/{sequence_id}/enroll | Зачислить контакт в цепочку | {"contact_id":123} |
POST /api/send/transactional | Транзакционное письмо по шаблону | {"contact_id":123,"template_id":1} |
POST /api/events/purchase | Событие покупки/остановка цепочек; если передан order_id — отменяет только письма этого заказа | {"contact_id":123,"payload":{"order_id":"ORDER-1","amount":9900}} |
POST /api/events/unpaid-order | Создать/обновить неоплаченный заказ и запустить цепочку в контексте order_id | {"site_key":"luch","contact_id":123,"sequence_id":5,"order_id":"ORDER-2","course_name":"Педагогика"} |
GET /api/campaigns/{campaign_id}/stats | Статистика рассылки: sent/open/click/unsubscribe/bounce | |
GET /api/inbox/messages | Входящие тестового ящика inbox@guru-send.ru: список писем для анализа | ?mailbox=inbox@guru-send.ru&limit=20 |
GET /api/inbox/messages/{message_id} | Прочитать одно входящее письмо: headers/body/snippet | ?mailbox=inbox@guru-send.ru |
GET /api/stats/overview | Общая статистика сервиса | |
GET /api/sites/{site_key}/dns-check | Проверка DNS проекта |
Статусы контакта
active — Активен
unsubscribed — Отписался
invalid — Адрес не существует
admin_blocked — Заблокирован администратором