ENA Feedback
API Referansı

Anketler API

Anketleri listeleme, yanıtları okuma ve anket oturumlarını yönetme için REST API uç noktaları.

Son güncelleme:

Anketleri Listele

GET /api/surveys

Sorgu parametreleri:

ParametreTürAçıklama
statusstringDuruma göre filtrele: draft, published, archived
pagenumberSayfa numarası (varsayılan: 1)
per_pagenumberSayfa başına sonuç (varsayılan: 20, maksimum: 100)

Yanıt:

{
  "data": [
    {
      "id": "srv_abc123",
      "name": "Resepsiyon Memnuniyet Anketi",
      "status": "published",
      "default_language": "tr",
      "current_version": 3,
      "created_at": "2026-01-15T09:00:00Z",
      "updated_at": "2026-05-20T14:30:00Z"
    }
  ],
  "meta": { "total": 12, "page": 1, "per_page": 20, "pages": 1 }
}

Anketi Getir

GET /api/surveys/:id

Mevcut yayınlanan sürüm için tüm soruları içeren tam anket tanımını döndürür.


Anket Yanıtlarını Listele (Oturumlar)

GET /api/survey-analytics/sessions

Sorgu parametreleri:

ParametreTürAçıklama
survey_idstringZorunlu. Ankete göre filtrele
fromISO 8601Tarih aralığı başlangıcı
toISO 8601Tarih aralığı sonu
location_idstringKonuma göre filtrele
statusstringcompleted, in_progress, expired
pagenumberSayfa numarası
per_pagenumberMaksimum: 100

Yanıt:

{
  "data": [
    {
      "id": "ses_xyz789",
      "survey_id": "srv_abc123",
      "survey_version": 3,
      "location_id": "loc_def456",
      "status": "completed",
      "language": "tr",
      "started_at": "2026-06-07T10:00:00Z",
      "completed_at": "2026-06-07T10:01:23Z",
      "duration_seconds": 83,
      "answers": [
        { "question_id": "q1", "type": "rating", "value": 5 },
        { "question_id": "q2", "type": "text", "value": "Mükemmel hizmet." }
      ]
    }
  ],
  "meta": { "total": 1402, "page": 1, "per_page": 20, "pages": 71 }
}

Anket Analitik Özetini Getir

GET /api/survey-analytics/overview

Sorgu parametreleri: survey_id (zorunlu), from, to, location_id, version

Yanıt:

{
  "survey_id": "srv_abc123",
  "period": { "from": "2026-06-01T00:00:00Z", "to": "2026-06-07T23:59:59Z" },
  "response_count": 247,
  "completion_rate": 0.82,
  "avg_duration_seconds": 67,
  "nps": 42,
  "csat": 0.88,
  "per_question": [
    {
      "question_id": "q1",
      "type": "rating",
      "avg": 4.3,
      "distribution": { "1": 3, "2": 8, "3": 21, "4": 89, "5": 126 }
    }
  ]
}

Anketi Konuma Dağıt

POST /api/surveys/:id/deploy

İstek gövdesi:

{
  "location_id": "loc_def456",
  "template_id": "tpl_ghi789"
}

Yanıt: Oluşturulan dağıtım nesnesiyle HTTP 201.


Anket Şablonlarını Listele

GET /api/surveys/presets

Yeni anketler için başlangıç noktası olarak kullanılabilecek anket şablonlarını (NPS, CSAT, hijyen, çalışan memnuniyeti vb.) döndürür.