AI API Referansi
DOLU.ai yapay zeka ozelliklerini programatik olarak kullanin: bilgi bankasi yonetimi, sohbet, geri bildirim ve analitik.
AI Sohbet
Mesaj Gonder
http
POST /api/v1/ai/chatAI agent ile sohbet baslatin veya devam edin.
Body:
json
{
"message": "Randevu almak istiyorum",
"conversationId": "conv_abc123",
"contactId": "contact_xyz",
"history": [
{ "role": "user", "content": "Merhaba" },
{ "role": "assistant", "content": "Hosgeldiniz! Size nasil yardimci olabilirim?" }
]
}| Alan | Tip | Zorunlu | Aciklama |
|---|---|---|---|
message | string | Evet | Kullanici mesaji |
conversationId | string | Hayir | Mevcut konusmaya devam etmek icin |
contactId | string | Hayir | Kisi baglami icin |
history | array | Hayir | Onceki mesaj gecmisi |
Yanit:
json
{
"reply": "Tabii! Hangin gun ve saatte randevu almak istersiniz?",
"matchedKnowledge": [
{
"id": "know_123",
"question": "Randevu nasil alinir?",
"similarity": 0.89
}
],
"intent": "appointment_booking",
"sentiment": "positive",
"confidence": 0.92
}Bilgi Bankasi Test
http
POST /api/v1/ai/test-knowledgeAI bilgi bankasini test edin — gercek konusmaya etki etmez.
Body:
json
{
"message": "Fiyatlariniz nedir?"
}Yanit:
json
{
"reply": "Fiyatlarimiz hakkinda detayli bilgi icin...",
"matchedKnowledge": [...],
"confidence": 0.85
}Bilgi Bankasi
Kayitlari Listele
http
GET /api/v1/ai/knowledgeQuery Parametreleri:
| Parametre | Tip | Aciklama |
|---|---|---|
type | string | faq, text, url, document, product, service |
tags | string | Etiket filtresi |
search | string | Metin aramasi |
page | number | Sayfa numarasi |
limit | number | Sayfa basina kayit |
Kayit Olustur
http
POST /api/v1/ai/knowledgeBody (SSS):
json
{
"type": "faq",
"question": "Kargo ne zaman gelir?",
"answer": "Siparisler 2-3 is gunu icinde teslim edilir.",
"tags": ["kargo", "teslimat"],
"language": "tr"
}Body (Urun):
json
{
"type": "product",
"title": "Premium Paket",
"content": "Tum ozellikleri iceren premium abonelik paketi.",
"metadata": {
"price": 299.99,
"currency": "TRY",
"sku": "PREM-001"
},
"tags": ["abonelik", "premium"]
}| Alan | Tip | Zorunlu | Aciklama |
|---|---|---|---|
type | string | Evet | Kayit turu |
question | string | SSS icin | Soru metni |
answer | string | SSS icin | Cevap metni |
title | string | Diger icin | Baslik |
content | string | Evet | Icerik metni |
tags | string[] | Hayir | Etiketler |
language | string | Hayir | Dil kodu (tr, en, vb.) |
metadata | object | Hayir | Ek bilgiler |
Kayit Guncelle
http
PATCH /api/v1/ai/knowledge/:idKayit Sil
http
DELETE /api/v1/ai/knowledge/:idAI Geri Bildirim
Geri Bildirim Gonder
http
POST /api/v1/ai/feedbackBody:
json
{
"messageId": "msg_abc123",
"conversationId": "conv_xyz",
"knowledgeId": "know_123",
"rating": -1,
"feedbackType": "CORRECTION",
"correctedAnswer": "Dogru cevap su sekilde olmalidir..."
}| Alan | Tip | Zorunlu | Aciklama |
|---|---|---|---|
messageId | string | Hayir | Ilgili mesaj ID |
conversationId | string | Hayir | Ilgili konusma ID |
knowledgeId | string | Hayir | Eslesen bilgi kaydi ID |
rating | number | Evet | Puan: -1 (olumsuz) veya 1 (olumlu) |
feedbackType | string | Evet | THUMBS, CORRECTION, SUGGESTION |
correctedAnswer | string | Hayir | Duzeltilmis cevap (CORRECTION icin) |
Geri Bildirimleri Listele
http
GET /api/v1/ai/feedback| Parametre | Tip | Aciklama |
|---|---|---|
rating | number | Filtreleme: -1 veya 1 |
feedbackType | string | Tur filtresi |
processed | boolean | Islenmis mi? |
AI Analitik
Kullanim Istatistikleri
http
GET /api/v1/ai/statsYanit:
json
{
"totalConversations": 1250,
"totalMessages": 8420,
"averageConfidence": 0.84,
"positiveRating": 78,
"negativeRating": 12,
"topIntents": [
{ "intent": "pricing", "count": 320 },
{ "intent": "appointment", "count": 215 },
{ "intent": "support", "count": 180 }
],
"knowledgeGaps": [
{ "topic": "iade politikasi", "unansweredCount": 15 }
]
}Bilgi Onerileri
http
GET /api/v1/ai/suggestionsAI'nin otomatik olarak olusturdugu bilgi onerilerini listeler.
Yanit:
json
{
"data": [
{
"id": "sug_123",
"suggestedQuestion": "Iade politikaniz nedir?",
"suggestedAnswer": "30 gun icinde urunleri iade edebilirsiniz...",
"confidence": 0.75,
"occurrenceCount": 15,
"status": "pending"
}
]
}Oneriyi Onayla
http
POST /api/v1/ai/suggestions/:id/approveOneriyi onaylar ve bilgi bankasina ekler.
Oneriyi Reddet
http
POST /api/v1/ai/suggestions/:id/rejectHata Kodlari
| Kod | Anlam |
|---|---|
| 400 | Gecersiz istek — zorunlu alanlar eksik |
| 402 | AI kredisi yetersiz |
| 404 | Kayit bulunamadi |
| 429 | AI istek limiti asildi (dakikada maks. 60) |
| 503 | AI saglayicilari gecici olarak kullanilamiyor |
Yetkilendirme
Tum AI endpointleri JWT token gerektirir. Detaylar icin Kimlik Dogrulama sayfasina bakin.
