Özetler API’si
API üzerinden iki tür yapay zeka tarafından yazılmış özet mevcuttur:
-
Sohbet özetleri — bir kişinin konuşmasının, talep üzerine oluşturulan kısa bir özeti. Sohbet içindeki özet denetimiyle aynı şeydir (bkz. Sohbet Özeti).
-
Günlük özetler — Günlük Özetler özelliğinin her sabah oluşturduğu, tüm konuşmalarınızı kapsayan günlük derleme: istatistikler, bölüm başına bir markdown bloğu ve yapay zekanın bundan oluşturduğu tüm görevler.
-
Temel URL —
https://api.dmchamp.com/v1 -
Kimlik Doğrulama — API anahtarınız (bkz. Kimlik Doğrulama). Kapsamlı bir anahtarın
Summariesbölümüne ihtiyacı vardır. -
Hatalar ve sayfalama — bkz. Hatalar ve Sayfalama
Aşağıdaki tüm örnekler cURL’de ?apiKey= sorgu biçimini ve JavaScript ile Python’da X-API-Key başlığını göstermektedir; her ikisi de her uç noktada çalışır.
Sohbet özeti oluşturma
POST /summaries — kişinin phoneNumber (ülke koduyla birlikte) veya email bilgisini gönderin; ikisinden biri zorunludur.
Yapay zeka, kişinin en son kapatılan konuşmasını veya henüz hiçbiri kapatılmamışsa hala açık olan konuşmasını okur ve bir özetini yazar. Özet, kişi üzerinde saklanır (uygulamadaki kişi panelinde Özetler altında görünür) ve yanıtta döndürülür, böylece doğrudan bir CRM’e, Slack kanalına veya e-postaya iletebilirsiniz.
Maliyet: Temsilcinin Yapay Zeka Kalite seviyesindeki bir yapay zeka yanıtıyla aynıdır — Pro 1 kredi, Max 0.25, Mini 0.15; kendi Anthropic anahtarınız bağlıyken Pro 0 maliyetlidir. Bakiye karşılamadığında, herhangi bir şey oluşturulmadan önce istek reddedilir.
cURL
curl -X POST "https://api.dmchamp.com/v1/summaries?apiKey=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"phoneNumber": "+31612345678"}'
JavaScript
const res = await fetch("https://api.dmchamp.com/v1/summaries", {
method: "POST",
headers: { "X-API-Key": "YOUR_API_KEY", "Content-Type": "application/json" },
body: JSON.stringify({ email: "jane@example.com" }),
});
const { summary } = await res.json();
Python
import requests
r = requests.post(
"https://api.dmchamp.com/v1/summaries",
headers={"X-API-Key": "YOUR_API_KEY"},
json={"phoneNumber": "+31612345678"},
)
print(r.json()["summary"])
Yanıt
{
"success": true,
"message": "Chat summary generated successfully",
"summary": "Jane asked about the 10-session package for her two children (ages 6 and 9) and preferred Saturday mornings. She booked a trial lesson for Saturday at 10:00 and wants to know whether siblings get a discount."
}
| Durum | Anlamı |
|---|---|
400 |
Ne phoneNumber ne de email gönderildi. |
404 |
Hiçbir kişi eşleşmiyor, kişinin henüz bir konuşması yok veya konuşmada hiç mesaj yok. Gövdenin message kısmı hangisi olduğunu belirtir. |
500 |
Oluşturma başarısız oldu (örneğin, yetersiz kredi). |
Otomasyon tarifi: özet içeren rezervasyon e-postası. Randevu alındı tetikleyicisindeki bir otomasyonda, bu uç noktayı
${trigger.contact.phone_number}(veya kişinin e-postası) ile çağıran bir HTTP isteği adımı ekleyin, ardından HTTP adımının yanıtından gelensummarybilgisini, sohbet bağlantısıyla (uygulamanızın adresi ve ardından/chats/ile tetikleyiciden gelen kişi kimliği) birlikte ekleyen bir E-posta adımı ekleyin. Ekibiniz, gelen kutusunu açmadan aynı e-postada rezervasyon bağlamını alır.
Özetleri geri okuma. Kayıtlı sohbet özetlerini listeleyen bir uç nokta yoktur. Daha sonra ihtiyacınız olursa metni yanıttan saklayın veya tekrar oluşturun (her çağrı ücretlendirilir).
Alternatif: kişi kimliğine göre
{"contactId": "..."} ile POST /summaries/chat-summary, kimliğine zaten sahip olduğunuz bir kişi için aynı oluşturma işlemini yapar. Sadece başarıyı ({"success": true, "data": "Chat summary generated successfully"}) onaylar ve metni döndürmez, bu nedenle özetin kendisine ihtiyacınız olduğunda POST /summaries kullanın. Anahtarı yalnızca atanan kişileriyle sınırlı olan bir ekip üyesi, bu kapsam dışındaki bir kişi için 404 alır.
Günlük özet alma
GET /summaries/daily/{date} — date, YYYY-MM-DD şeklindedir. O gün için özeti veya henüz hiçbiri oluşturulmadığında summary altında null değerini ve bölüm yapılandırmanızı döndürür.
cURL
curl "https://api.dmchamp.com/v1/summaries/daily/2026-09-08?apiKey=YOUR_API_KEY"
Yanıt
{
"success": true,
"data": {
"summary": {
"date": "2026-09-08",
"status": "completed",
"generated_at": "2026-09-09T05:02:11.000Z",
"stats": {
"total_conversations": 42,
"total_messages_sent": 310,
"total_messages_received": 268,
"human_alerts": 3,
"bookings": 5,
"new_contacts": 11,
"sales": 2
},
"sections": {
"wins_losses_improvements": "## Wins\n- ...",
"tasks_action_items": "- Call Jane back about the sibling discount",
"human_alerts_reviews": "...",
"sentiment_analysis": "...",
"booked_meetings_sales": "..."
},
"contact_map": { "Jane Doe": "uid_whatsapp_31612345678" },
"auto_tasks": [],
"created_task_ids": []
},
"section_configs": [
{ "id": "wins_losses_improvements", "name": "Wins, Losses & Improvements", "enabled": true, "position": 0 }
]
}
}
status—pending,generating,completedveyafailed(errorayarı açıkken). Yeniden oluşturma işleminden sonra, durumcompletedolana kadar bu uç noktayı sorgulayın.sections— bölüm kimliğine göre anahtarlanmış, bölüm başına bir markdown dizisi. Beş standart bölümwins_losses_improvements,tasks_action_items,human_alerts_reviews,sentiment_analysisvebooked_meetings_sales’dir; Günlük Özetler sayfasında Yapılandır altında eklediğiniz bölümlercustom_…kimliğine sahip olur. İsimler ve sıralamasection_configsiçinde yansıtılır.contact_map— metindeki isimleri bağlantılara dönüştürebilmeniz için kişi kimliğine karşılık gelen görünen ad.auto_tasks/created_task_ids— yapay zekanın çıkardığı eylem öğeleri ve bunlardan oluşturduğu görevler (Eylem öğelerinden görev kartları oluştur açık olduğunda).
| Durum | Anlamı |
|---|---|
400 |
date henüz YYYY-MM-DD değil veya gelecekte. |
403 |
Günlük Özetler hesap için kapalı. |
Sorgulama yerine anlık bildirim mi tercih edersiniz? Günlük Özet Oluşturuldu webhook olayı, sabah özeti tamamlandığı anda aynı yükü iletir.
Günlük özeti yeniden oluştur
POST /summaries/daily/{date}/regenerate — arka planda o gün için yeni bir oluşturma işlemi başlatır ve hemen status: "generating" ve boş sections ile döner. Tamamlanana kadar GET /summaries/daily/{date} uç noktasını sorgulayın. Uygulamadaki Tekrar dene bağlantısı için geçerli olan kuralların aynısı geçerlidir.
İsteğe bağlı {"deleteTasks": false} gövdesi, önceki çalıştırmanın oluşturduğu görevleri korur; varsayılan olarak bunlar silinir ve yeni özet üzerinden yeniden oluşturulur. Gerçek bir boolean değeri gönderin — "false" dizisi göz ardı edilir ve varsayılan olarak kabul edilir.
curl -X POST "https://api.dmchamp.com/v1/summaries/daily/2026-09-08/regenerate?apiKey=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"deleteTasks": false}'
Hızlı başvuru
| Görev | Uç Nokta |
|---|---|
| Sohbet özeti oluştur ve metni al | POST /summaries |
| Kişi kimliğine göre sohbet özeti oluştur (metin döndürülmez) | POST /summaries/chat-summary |
| Bir günün özetini oku | GET /summaries/daily/{date} |
| Bir günün özetini yeniden oluştur | POST /summaries/daily/{date}/regenerate |