ENA Feedback
API Referansı

Webhooklar API

Webhook uç noktalarını, gizli anahtarları ve teslimat geçmişini yönetmek için REST API uç noktaları.

Son güncelleme:

Webhooklar hem yönetici panosu hem de REST API aracılığıyla yönetilebilir.

Webhook Uç Noktalarını Listele

GET /api/integrations/webhooks

Yanıt:

{
  "data": [
    {
      "id": "whe_abc123",
      "url": "https://hooks.ornek.com/enafeedback",
      "events": ["survey.response.created", "feedback.ticket.created"],
      "enabled": true,
      "created_at": "2026-03-01T12:00:00Z"
    }
  ]
}

Webhook Uç Noktası Oluştur

POST /api/integrations/webhooks

İstek gövdesi:

{
  "url": "https://hooks.ornek.com/enafeedback",
  "events": ["survey.response.created", "hygiene.submission.created"],
  "enabled": true
}

Yanıt: Oluşturulan uç nokta ve oluşturulan secret ile HTTP 201:

{
  "id": "whe_xyz789",
  "url": "https://hooks.ornek.com/enafeedback",
  "events": ["survey.response.created", "hygiene.submission.created"],
  "enabled": true,
  "secret": "whs_xxxxxxxxxxxxxxxxxxxxxxxx",
  "created_at": "2026-06-07T10:00:00Z"
}

secret yalnızca oluşturma sırasında bir kez gösterilir. Güvenli bir şekilde saklayın. Kaybolursa gizli anahtarı döndürmeniz gerekir.


Webhook Uç Noktasını Güncelle

PATCH /api/integrations/webhooks/:id

İstek gövdesi (tüm alanlar isteğe bağlı):

{
  "url": "https://yeni-url.ornek.com/hook",
  "events": ["*"],
  "enabled": false
}

events'i ["*"] olarak ayarlamak tüm mevcut ve gelecekteki olaylara abone olur.


Webhook Gizli Anahtarını Döndür

POST /api/integrations/webhooks/:id/rotate-secret

Yeni bir gizli anahtar oluşturur ve eskisini hemen geçersiz kılar. Yeni gizli anahtar yanıt gövdesinde döndürülür. Döndürmeden önce imza doğrulama kodunuzu güncelleyin.


Webhook Uç Noktasını Sil

DELETE /api/integrations/webhooks/:id

HTTP 204 döndürür. Uç nokta hemen silinir ve başka olay iletilmez. Teslimat geçmişi de silinir.


Webhook Teslimatlarını Listele

GET /api/integrations/webhooks/:id/deliveries

Sorgu parametreleri: from, to, status (delivered, failed), page, per_page

Yanıt:

{
  "data": [
    {
      "id": "del_001",
      "event": "survey.response.created",
      "delivered_at": "2026-06-07T10:30:05Z",
      "http_status": 200,
      "attempt_count": 1,
      "status": "delivered"
    }
  ]
}

Teslimatı Yeniden Dene

POST /api/integrations/webhooks/:id/deliveries/:delivery_id/retry

Başarısız bir teslimatı hemen yeniden dener. Yeniden deneme kuyruğa alındıysa HTTP 202 döndürür.


Test Olayı Gönder

POST /api/integrations/webhooks/:id/test

İstek gövdesi:

{
  "event": "survey.response.created"
}

Belirtilen olay türü için sahte verilerle örnek bir yük gönderir. Yük "test": true içerir.