Quickchat AI tüm kanallardaki her konuşmayı kaydeder. Bu uç noktalar onları listelemenizi ve almanızı sağlar.
Quickchat AI, AI Temsilcinizin widget, Slack, WhatsApp, Telegram ve diğer tüm kanallardaki konuşmalarını otomatik kaydeder ve analiz eder. Konuşmalar API’si, özel kontrol panelleri oluşturmak, sonraki analiz süreçlerini beslemek, CRM iş akışlarını tetiklemek veya mevcut iş zekâsı araçlarınızla entegrasyon sağlamak için bu zengin veri kümesine programatik erişim sunar.
Her konuşma AI destekli analiz içerir: duygu algılama, konu sınıflandırma, çözüm takibi ve insan ilgisi gerektirebilecek konuşmaların otomatik işaretlenmesi. Tam mesaj geçmişi, izlenen bağlantı tıklamaları ve özel meta verilerle birlikte ziyaretçilerin AI Temsilcinizle nasıl etkileştiğini anlamak için ihtiyacınız olan tüm bilgilere sahip olursunuz.
Konuşma verileri birden fazla uç noktaya dağıtılmıştır:
- Konuşmaları listeleme: temel bilgiler, ziyaretçi ayrıntıları, durum. Kontrol panelleri, genel bakışlar ve filtrelenmiş sorgular için kullanın
- Konuşma ayrıntılarını alma:
unified_analysis(AI tarafından oluşturulan içgörüler) veclient_metadatadahil tüm bilgiler - Konuşma olaylarını alma: tam mesaj geçmişi, izlenen bağlantı tıklamaları ve günlük kayıtları
- Meta verileri alma/ayarlama: konuşmalara eklediğiniz özel anahtar-değer verileri (bkz. Konuşma meta verileri)
Konuşmaları listeleme
Section titled “Konuşmaları listeleme”GET https://app.quickchat.ai/v1/api_core/conversations
Sorgu parametreleri
| Parametre | Açıklama |
|---|---|
limit tamsayı | Sayfa başına öğe sayısı |
offset tamsayı | Atlanacak öğeler |
query dize | Sıra numarası, UUID veya mesaj metnine göre arama |
assignee_type dize | "ai_assistant", "human_operator" veya "unassigned" |
source dize | "widget", "slack", "telegram", "whatsapp" vb. |
resolution_status dize | "open" veya "resolved" |
created_timestamp_start_date tarih-saat | Oluşturma tarihine göre filtre (başlangıç) |
created_timestamp_end_date tarih-saat | Oluşturma tarihine göre filtre (bitiş) |
last_message_at_start_date tarih-saat | Son mesaj tarihine göre filtre (başlangıç) |
last_message_at_end_date tarih-saat | Son mesaj tarihine göre filtre (bitiş) |
most_frequent_language dize | Algılanan dile göre filtre |
order dize | "desc" (varsayılan, en yeni önce) veya "asc" (en eski önce). Artan sıralama bilinen bir konuşmadan ileri doğru ilerlemek içindir; bu nedenle last_message_at_start_date ile birlikte kullanın |
curl 'https://app.quickchat.ai/v1/api_core/conversations?limit=10&resolution_status=open' \ -H 'Authorization: Bearer <API_TOKEN>'import requests
response = requests.get( url="https://app.quickchat.ai/v1/api_core/conversations", headers={"Authorization": "Bearer <API_TOKEN>"}, params={"limit": 10, "resolution_status": "open"},)data = response.json()Yanıt 200 OK
{ "items": [ { "id": "conv-uuid-1234", "ord": 42, "created_at": "2026-01-15T10:30:00Z", "last_message_at": "2026-01-15T10:35:00Z", "title": "Return policy question", "source": "widget", "terminated": false, "resolution_status": "open", "has_unread_messages": true, "supports_inbox_control": true, "last_message_content": "What is your return policy?", "most_frequent_language": "en", "assignee": { "type": "ai_assistant" }, "visitor_name": "John", "visitor_email": "john@example.com", "visitor_phone_number": null, "visitor_label": null } ], "offset": 0, "limit": 10, "count": 42}| Alan | Açıklama |
|---|---|
id dize | Konuşma UUID’si |
ord tamsayı | Sıralı konuşma numarası |
created_at dize | Konuşmanın oluşturulma zaman damgası |
last_message_at dize | En son mesajın zaman damgası |
title dize | AI tarafından oluşturulan konuşma başlığı |
source dize | Konuşmanın başladığı kanal (örneğin "widget", "slack", "whatsapp") |
terminated mantıksal değer | Konuşmanın sona erip ermediği |
resolution_status dize | "open" veya "resolved" |
has_unread_messages mantıksal değer | Okunmamış mesaj olup olmadığı |
supports_inbox_control mantıksal değer | Konuşma kaynağının gelen kutusu kontrolünü destekleyip desteklemediği (atama, devir) |
last_message_content dize | Konuşmadaki son mesajın içeriği |
most_frequent_language dize | Konuşmada en sık algılanan dil |
assignee nesne | Şu anda atanan kişi (type: "ai_assistant", "human_operator" veya "unassigned") |
visitor_name dize veya null | Ziyaretçinin adı (sohbet öncesi formdan veya kanal profilinden) |
visitor_email dize veya null | Ziyaretçinin e-posta adresi |
visitor_phone_number dize veya null | Ziyaretçinin telefon numarası |
visitor_label dize veya null | Ziyaretçiye atanan özel etiket |
Konuşma ayrıntılarını alma
Section titled “Konuşma ayrıntılarını alma”GET https://app.quickchat.ai/v1/api_core/conversations/{conversation_id}/
curl https://app.quickchat.ai/v1/api_core/conversations/conv-uuid-1234/ \ -H 'Authorization: Bearer <API_TOKEN>'import requests
response = requests.get( url="https://app.quickchat.ai/v1/api_core/conversations/conv-uuid-1234/", headers={"Authorization": "Bearer <API_TOKEN>"},)data = response.json()Yanıt 200 OK
{ "id": "conv-uuid-1234", "ord": 42, "created_at": "2026-01-15T10:30:00Z", "last_message_at": "2026-01-15T10:35:00Z", "title": "Return policy question", "source": "widget", "terminated": false, "resolution_status": "open", "has_unread_messages": true, "supports_inbox_control": true, "last_message_content": "What is your return policy?", "most_frequent_language": "en", "assignee": { "type": "ai_assistant" }, "url": null, "client_metadata": {"userId": 12}, "last_visitor_message_at": "2026-01-15T10:34:00Z", "unified_analysis": { "sentiment": "neutral", "resolution_status": "open", "topic": "Return policy", "is_flagged": false, "flag_reason": null }, "visitor_name": "John", "visitor_email": "john@example.com", "visitor_phone_number": null, "visitor_label": null}Ayrıntı yanıtı, liste yanıtındaki tüm alanlara ek olarak şunları içerir:
| Alan | Açıklama |
|---|---|
url dize veya null | Konuşmanın başladığı sayfanın URL’si (yalnızca widget) |
client_metadata nesne veya null | Konuşmaya eklenen özel anahtar-değer çiftleri |
last_visitor_message_at dize | Son ziyaretçi mesajının zaman damgası |
unified_analysis nesne veya null | AI tarafından oluşturulan konuşma analizi (aşağıya bakın) |
unified_analysis alanları:
| Alan | Açıklama |
|---|---|
sentiment dize | AI’ın algıladığı konuşma duygusu (örneğin "positive", "neutral", "negative") |
resolution_status dize | AI’ın değerlendirdiği çözüm durumu (üst düzeydeki resolution_status alanından farklı olabilir) |
topic dize | AI’ın algıladığı konuşma konusu |
is_flagged mantıksal değer | AI’ın konuşmayı insan incelemesi için işaretleyip işaretlemediği |
flag_reason dize veya null | Konuşmanın işaretlenme nedeni |
Üst düzeydeki resolution_status alanı ("open" veya "resolved"), manuel olarak veya otomasyon kurallarıyla belirlenen esas durumdur.
unified_analysis.resolution_status, AI analiziyle hesaplanır ve farklı olabilir. Örneğin AI, içerik analizine göre konuşmayı çözülmüş sınıflandırsa da üst düzey durum hâlâ "open" olabilir. Filtreleme ve iş akışı için üst düzey alanı, analiz ve içgörüler için unified_analysis kullanın.
Konuşma olaylarını alma
Section titled “Konuşma olaylarını alma”Bir konuşmanın tüm olaylarını (mesajlar, izlenen bağlantılar, günlükler) alın.
Kapsam: read_allGET https://app.quickchat.ai/v1/api_core/conversations/{conversation_id}/events/
Sorgu parametreleri
| Parametre | Açıklama |
|---|---|
limit tamsayı | Sayfa başına öğe sayısı |
offset tamsayı | Atlanacak öğeler |
curl 'https://app.quickchat.ai/v1/api_core/conversations/conv-uuid-1234/events/?limit=20' \ -H 'Authorization: Bearer <API_TOKEN>'import requests
response = requests.get( url="https://app.quickchat.ai/v1/api_core/conversations/conv-uuid-1234/events/", headers={"Authorization": "Bearer <API_TOKEN>"}, params={"limit": 20},)data = response.json()Yanıt 200 OK
{ "items": [ { "type": "message", "data": { "id": "msg-uuid-001", "ord": 1, "created_at": "2026-01-15T10:30:00Z", "content": "Hello! How can I help you today?", "author": "ai_assistant", "handoff_state": null, "message_insights": null, "feedback": null, "client_metadata": null, "sources_generated": [], "is_welcome": true, "attachments": [] } }, { "type": "message", "data": { "id": "msg-uuid-002", "ord": 2, "created_at": "2026-01-15T10:31:00Z", "content": "What is your return policy?", "author": "visitor", "handoff_state": null, "message_insights": null, "feedback": null, "client_metadata": null, "sources_generated": [], "is_welcome": false, "attachments": [] } } ], "offset": 0, "limit": 20, "count": 2}Olay türleri: message, tracked_link, log
Yazar türleri: ai_assistant, visitor, human_operator
| Alan | Açıklama |
|---|---|
type dize | Olay türü: "message", "tracked_link" veya "log" |
data.id dize | Mesajın benzersiz tanımlayıcısı |
data.ord tamsayı | Sıralı mesaj numarası |
data.created_at dize | Olayın zaman damgası |
data.content dize | Mesaj içeriği |
data.author dize | "ai_assistant", "visitor" veya "human_operator" |
data.handoff_state dize veya null | Varsa devir durumu |
data.message_insights nesne veya null | AI tarafından oluşturulan mesaj içgörüleri |
data.feedback nesne veya null | Mesajla ilgili kullanıcı geri bildirimi |
data.client_metadata nesne veya null | Mesaja eklenen özel meta veriler |
data.sources_generated dizi | AI’ın yanıtını üretirken kullandığı Bilgi Tabanı makaleleri |
data.is_welcome mantıksal değer | Bunun karşılama mesajı olup olmadığı |
data.attachments dizi | Dosya ekleri |