Перейти к документации
API

Отправка события

Записывает, что контакт что-то сделал в вашем продукте. Событие запускает каждую активную автоматизацию, триггер которой его называет, и продвигает дальше всех, кто его ждал.

POST/events

Выполняет любой из 2 запросов в вашем рабочем пространстве.

POST /events

Записывает, что контакт что-то сделал в вашем продукте. Событие запускает каждую активную автоматизацию, триггер которой его называет, и продвигает дальше всех, кто его ждал.

Пример

Требуется contacts:write. Укажите контакт через email или через contactId.

curl
curl -X POST "$OE/events" -H "$AUTH" -H 'content-type: application/json' -H 'Idempotency-Key: order-A-1042' -d '{  "name": "order.placed",  "email": "[email protected]",  "properties": { "orderId": "A-1042", "total": 59 },  "createContact": true}'
Ответ
{  "object": "contact_event",  "id": "cev_6a1d9f3c8b2e40a75d9c1e38",  "contactId": "5b0e7c1a-2f4d-4c8b-9a36-1e7d0c5f8b24",  "email": "[email protected]",  "name": "order.placed",  "properties": { "orderId": "A-1042", "total": 59 },  "occurredAt": "2026-10-11T08:02:03.000Z",  "mode": "live",  "createdAt": "2026-10-11T08:02:03.412Z",  "replayed": false,  "enrolled": ["aut_7c2e9a1f4b8d30c65e1a9f27"],  "resumed": 0}

name это до 100 букв, цифр, точек, двоеточий, дефисов и подчёркиваний, начиная с буквы или цифры. Имена чувствительны к регистру.

properties вмещает не более 50 ключей и 4 KB JSON. Их могут читать фильтр триггера, значение в письме и ветвление.

occurredAt по умолчанию равен текущему моменту. Он может быть не более чем на 90 дней в прошлом и не более чем на 5 минут в будущем.

Неизвестный адрес отвечает 404 contact_not_found, если только createContact не равен true: тогда контакт добавляется с именем из contactName.

enrolled перечисляет автоматизации, в которые вошёл контакт, а resumed считает ожидания, которые завершило событие.

Повторная отправка того же Idempotency-Key отвечает 200 с первым событием и replayed: true. Тот же ключ с другим телом отклоняется с 422 idempotency_key_reuse.

Событие, отправленное с тестовым ключом, сохраняется с mode: "test" и ничего не запускает.

Пакет

POST /events/batch принимает до 100 событий в events, каждое в том же виде, что и тело выше. Он отвечает 200, даже когда часть отклонена, и сообщает, какие именно.

curl
curl -X POST "$OE/events/batch" -H "$AUTH" -H 'content-type: application/json' -d '{  "events": [    { "name": "order.placed", "email": "[email protected]" },    { "name": "order.placed", "email": "[email protected]" }  ]}'
Ответ
{  "object": "contact_event_batch",  "accepted": [{ "index": 0, "object": "contact_event", "id": "cev_6a1d9f3c8b2e40a75d9c1e38", "…": "…" }],  "failed": [{ "index": 1, "code": "contact_not_found", "message": "No contact with that address. Pass createContact: true to add one." }]}

index это позиция события в отправленном вами массиве.

Ключ или приложение может отправлять 600 событий в минуту. После этого ответ будет 429 event_rate_limited.

Справочник