AISARAISAR
REST API

Интеграции (вебхуки)

Настройка исходящих вебхуков AISAR: интеграция типа `webhook` подписывается на набор событий платформы (см. справочник событий вебхуков) и отправляет POST-запрос с подписанным телом на указанный URL при их наступлении. Поддерживаются bearer/basic-аутентификация на стороне получателя, ретраи с ограничением попыток и фильтр по каналам. Bitrix24 и amoCRM подключаются отдельными OAuth-флоу через кабинет my.aisar.app и в этот справочник не входят.

Эндпоинты

МетодПуть
GET/v1/integrations

Список интеграций (фильтр по type, status)

POST/v1/integrations

Создание вебхук-интеграции

GET/v1/integrations/{integration}

Получение интеграции (с credential и mappings)

PATCH/v1/integrations/{integration}

Обновление интеграции

DELETE/v1/integrations/{integration}

Удаление интеграции

GET/v1/integrations/{integration}/logs

Логи доставки вебхуков

POST/v1/integrations/test-webhook

Тестовая отправка на указанный URL (без сохранения интеграции)

Примеры

Создание вебхук-интеграции

Запрос

bash
curl -X POST https://api.aisar.app/v1/integrations \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "type": "webhook",
    "name": "n8n Production",
    "status": "active",
    "settings": {
      "url": "https://example.com/webhook",
      "authType": "bearer",
      "selectedEventKeys": ["message.created", "conversation.created"],
      "channelFilter": "all",
      "timeoutSeconds": 30,
      "retryEnabled": true,
      "maxAttempts": 6
    },
    "secrets": { "bearerToken": "your-receiving-endpoint-secret" }
  }'

Ответ

json
{
  "data": {
    "id": 14,
    "type": "webhook",
    "name": "n8n Production",
    "status": "active",
    "health": {
      "last_success_at": null,
      "last_failure_at": null,
      "last_error": null,
      "consecutive_failures": 0
    },
    "settings": {
      "url": "https://example.com/webhook",
      "authType": "bearer",
      "selectedEventKeys": ["message.created", "conversation.created"],
      "channelFilter": "all",
      "timeoutSeconds": 30,
      "retryEnabled": true,
      "maxAttempts": 6
    },
    "credential": {
      "secrets": { "bearerToken": "your-receiving-endpoint-secret" },
      "expires_at": null,
      "last_refreshed_at": null,
      "rotated_at": null,
      "created_at": "2026-03-15T10:00:00.000000Z",
      "updated_at": "2026-03-15T10:00:00.000000Z"
    },
    "external_entities": [],
    "mappings": [],
    "funnel_mappings": [],
    "created_at": "2026-03-15T10:00:00.000000Z",
    "updated_at": "2026-03-15T10:00:00.000000Z"
  }
}

Логи доставки вебхука

Запрос

bash
curl "https://api.aisar.app/v1/integrations/14/logs?limit=50" \
  -H "Authorization: Bearer YOUR_API_TOKEN"

Ответ

json
{
  "data": [
    {
      "id": 8801,
      "level": "info",
      "code": "webhook.delivery",
      "message": "Webhook delivered.",
      "context": {
        "event_key": "message.created",
        "status": "success",
        "status_code": 200,
        "duration_ms": 420
      },
      "created_at": "2026-03-15T10:05:00.000000Z"
    }
  ]
}