Ücretsiz başla
Docs / RAG Widget / Widget Chat API
Reference

Widget Chat API

Hazır widget.js yerine kendi arayüzünüzü (mobil uygulama, özel UI) kurmak isterseniz, widget'ın kullandığı HTTP API'yi doğrudan çağırabilirsiniz.

Base URL: https://semagent.ai

ℹ️

Çoğu senaryo için tek satırlık embed kodu yeterlidir — bu sayfa özel entegrasyonlar içindir.

Kimlik doğrulama

Tüm istekler X-Tenant-Id header'ı ister — değeri tenant slug'ınız veya tenant ID'nizdir (panel → Widget → Kurulum). Bu API tarayıcıdan çağrılmak üzere tasarlanmıştır; gizli anahtar içermez ve yalnız widget kapsamındaki uçlara erişir.

POST /api/chat/widget

Bir müşteri mesajı gönderir, asistan cevabını döndürür. İlk çağrıda conversation_id göndermeyin — yanıtta üretilir; sonraki mesajlarda aynı değeri geri gönderin.

curl -X POST https://semagent.ai/api/chat/widget \
  -H "Content-Type: application/json" \
  -H "X-Tenant-Id: sirket-slug" \
  -d '{
    "message": "Kargom ne zaman gelir?",
    "session_id": "ziyaretci-123",
    "conversation_id": null,
    "type": "rag"
  }'

İstek gövdesi

AlanTipAçıklama
messagestring · zorunluMüşteri mesajı.
session_idstring · zorunluZiyaretçi oturum kimliği (sizin ürettiğiniz sabit bir değer).
conversation_idstring · opsiyonelÖnceki yanıttan gelen konuşma kimliği; boşsa yeni konuşma açılır.
type"rag" | "ecommerce" · ops.Boş bırakılırsa tenant'ın varsayılan widget modu kullanılır.
customer_name / _email / _phonestring · ops.Pre-chat form verileri (eskalasyonda insan desteğe iletilir).

Yanıt 200 OK

{
  "response": "Siparişler 1-3 iş gününde teslim edilir.",
  "conversation_id": "c7a1…",
  "widget_type": "rag",
  "rag_active": true,
  "ecommerce_active": false
}

GET /api/chat/welcome

Tenant'ın karşılama mesajını döndürür — widget açılışında gösterilir. Yalnız X-Tenant-Id header'ı gerekir.

GET /api/chat/widget/messages/{conversation_id}

Bir konuşmanın mesaj geçmişini döndürür (sayfa yenilendiğinde sohbeti geri yüklemek için).

GET /api/chat/widget-settings

Widget davranış ayarlarını döndürür: pre-chat formu açık mı (widget_prechat_enabled), hangi alanlar isteniyor (widget_prechat_fields), istemci hız limiti (widget_rate_limit).

POST /api/chat/widget/csat

Konuşma sonunda memnuniyet puanı gönderir:

{ "conversation_id": "c7a1…", "score": 5, "feedback": "Çok yardımcı oldu" }

Hata kodları

KodAnlamıNe yapmalı
404Tenant bulunamadıX-Tenant-Id değerini panelden doğrulayın.
403Asistan aktif değilPanelden widget'ı aktifleştirin.
429Hız limitiİstemci başına limit aşıldı; kısa bekleyip yeniden deneyin.
200 + limit mesajıAylık plan limiti dolduWidget hata yerine zarif bir yönlendirme metni döndürür; planı yükseltin.
📝

Uç noktalar genişledikçe bu sayfa güncellenir. Eksik gördüğünüz bir alan için bize yazın.

Bu sayfa yardımcı oldu mu? Geri bildirim gönder