REST API
Обзор
Enma Ingest API принимает события по HTTP. SDK автоматически формирует запросы, группирует события в пакеты и обрабатывает ошибки. Прямое использование REST API рекомендуется только для платформ, где .NET SDK недоступен.
Базовый URL
https://sdk.enma.techБазовый URL можно переопределить через параметр BaseUrl в настройках SDK.
Аутентификация
Запросы аутентифицируются с помощью API-токена (формат sdk_...), который генерируется на странице приложения. Токен передаётся в заголовке:
Authorization: Bearer sdk_your_tokenТранспорт
SDK отправляет события методом HTTP POST пакетами. Каждый пакет содержит до BatchSize событий (по умолчанию 50, максимум 200).
Каждый запрос включает идентификаторы организации, проекта и приложения (SDK-клиента), а также массив событий с названием, данными об акторе, полезной нагрузкой и тегами.
Структура события
Каждое событие, отправляемое через SDK, содержит следующие поля:
| Поле | Тип | Обязательно | Описание |
|---|---|---|---|
| eventName | string | да | Название события (например, order.created) |
| actor | object | нет | Объект с userId и/или anonymousId |
| payload | object | нет | Произвольные данные (JSON) |
| tags | object | нет | Метаданные ключ-значение (строки) |
| processKeys | array | нет | Привязки к процессам: каждый элемент содержит ID определения процесса и строковый идентификатор экземпляра |
Политика повторов
При ошибках 5xx и сетевых сбоях SDK автоматически повторяет запрос с экспоненциальной задержкой: 1с → 2с → 4с. Количество попыток настраивается параметром MaxRetries (по умолчанию 3).
Рекомендация
Используйте .NET SDK вместо прямых HTTP-запросов. SDK обеспечивает автоматическую группировку, повторы, lock-free очередь и корректное завершение работы при остановке приложения.