DM Champ Docs

API סיכומים

קיימים שני סוגים של סיכומים שנכתבו על ידי בינה מלאכותית הזמינים דרך ה-API:

  • סיכומי צ’אט — סיכום קצר של שיחת איש קשר, שנוצר לפי דרישה. זהה לבקרת הסיכום בצ’אט (ראו סיכום צ’אט).

  • סיכומים יומיים — הסיכום היומי של כל השיחות שלכם ש-סיכומים יומיים בונה בכל בוקר: נתונים סטטיסטיים, בלוק Markdown אחד לכל סעיף, וכל משימה שהבינה המלאכותית יצרה מתוכו.

  • כתובת URL בסיסיתhttps://api.dmchamp.com/v1

  • אימות — מפתח ה-API שלכם (ראו אימות). מפתח עם הרשאות מוגבלות זקוק לסעיף Summaries.

  • שגיאות ועימוד — ראו שגיאות ועימוד

כל הדוגמאות להלן מציגות את טופס השאילתה ?apiKey= ב-cURL ואת הכותרת X-API-Key ב-JavaScript וב-Python — שתי הדרכים עובדות בכל נקודת קצה (endpoint).


יצירת סיכום צ’אט

POST /summaries — שלחו את ה-phoneNumber של איש הקשר (עם קידומת מדינה) או את ה-email שלו; אחד משניהם נדרש.

הבינה המלאכותית קוראת את השיחה הסגורה האחרונה של איש הקשר, או את זו שעדיין פתוחה אם אף אחת לא נסגרה עדיין, וכותבת לה סיכום. הסיכום נשמר אצל איש הקשר (הוא מופיע תחת סיכומים בלוח איש הקשר באפליקציה) ומוחזר בתגובה, כך שתוכלו להעביר אותו ישירות ל-CRM, לערוץ Slack או לאימייל.

עלות: זהה לעלות של תשובת בינה מלאכותית אחת ברמת איכות ה-AI של הסוכן — Pro עולה 1 קרדיט, Max עולה 0.25, Mini עולה 0.15; עם מפתח Anthropic משלכם, Pro עולה 0. הבקשה נדחית לפני שנוצר דבר מה אם היתרה אינה מכסה זאת.

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"])

תגובה

{
  "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."
}
סטטוס משמעות
400 לא נשלח phoneNumber ולא email.
404 לא נמצא איש קשר תואם, לאיש הקשר אין עדיין שיחה, או שבשיחה אין הודעות. ה-message בגוף התגובה מציין מה הבעיה.
500 היצירה נכשלה (למשל, אין מספיק קרדיטים).

מתכון לאוטומציה: אימייל הזמנה עם סיכום. ב-אוטומציה המופעלת על ידי הטריגר נקבעה פגישה, הוסיפו שלב בקשת HTTP שקורא לנקודת קצה זו עם ${trigger.contact.phone_number} (או האימייל של איש הקשר), ולאחר מכן שלב אימייל שמכניס את ה-summary מהתגובה של שלב ה-HTTP יחד עם קישור לצ’אט (כתובת האפליקציה שלכם ואחריה /chats/ ומזהה איש הקשר מהטריגר). הצוות שלכם מקבל את ההקשר של ההזמנה באותו אימייל, מבלי לפתוח את תיבת הדואר הנכנס.

קריאת סיכומים בחזרה. אין נקודת קצה שמציגה רשימה של סיכומי צ’אט שמורים. שמרו את הטקסט מהתגובה אם תזדקקו לו מאוחר יותר, או צרו אותו מחדש (כל קריאה מחויבת בתשלום).

חלופה: לפי מזהה איש קשר

POST /summaries/chat-summary עם {"contactId": "..."} מבצע את אותה יצירה עבור איש קשר שהמזהה שלו כבר ברשותכם. הוא רק מאשר הצלחה ({"success": true, "data": "Chat summary generated successfully"}) ולא מחזיר את הטקסט, לכן השתמשו ב-POST /summaries כאשר אתם רוצים את הסיכום עצמו. חבר צוות שהמפתח שלו מוגבל לאנשי הקשר שהוקצו לו יקבל 404 עבור איש קשר מחוץ לטווח ההרשאות שלו.


קבלת סיכום יומי

GET /summaries/daily/{date}date הוא YYYY-MM-DD. מחזיר את הסיכום לאותו יום, או null תחת summary כאשר טרם נוצר סיכום, בתוספת הגדרות הסעיפים שלכם.

cURL

curl "https://api.dmchamp.com/v1/summaries/daily/2026-09-08?apiKey=YOUR_API_KEY"

תגובה

{
  "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 }
    ]
  }
}
  • statuspending, generating, completed או failed (כאשר error מוגדר). בצעו פול (poll) לנקודת קצה זו לאחר יצירה מחדש עד שהיא תקרא completed.
  • sections — מחרוזת Markdown אחת לכל סעיף, לפי מזהה הסעיף. חמשת הסעיפים הסטנדרטיים הם wins_losses_improvements, tasks_action_items, human_alerts_reviews, sentiment_analysis ו-booked_meetings_sales; סעיפים שתוסיפו תחת Configure בדף Daily Summaries יקבלו מזהה custom_…. שמות וסדר מופיעים ב-section_configs.
  • contact_map — שם תצוגה למזהה איש קשר, כדי שתוכלו להפוך את השמות בטקסט לקישורים.
  • auto_tasks / created_task_ids — פריטי הפעולה שה-AI חילץ והמשימות שיצר מהם (כאשר Create task cards from action items מופעל).
סטטוס משמעות
400 date אינו YYYY-MM-DD, או שהוא בעתיד.
403 Daily Summaries כבוי עבור החשבון.

מעדיפים דחיפה (push) על פני פול (polling)? ה-webhook event מסוג Daily Summary Created מספק את אותו המטען (payload) ברגע שסיכום הבוקר מסתיים.


יצירה מחדש של סיכום יומי

POST /summaries/daily/{date}/regenerate — מתחיל יצירה רעננה לאותו יום ברקע ומחזיר מיד status: "generating" ו-sections ריק. בצעו פול ל-GET /summaries/daily/{date} עד לסיום. אותם כללים חלים כמו עבור הקישור Try again באפליקציה.

גוף אופציונלי {"deleteTasks": false} שומר את המשימות שהריצה הקודמת יצרה; כברירת מחדל הן נמחקות ונוצרות מחדש מהסיכום החדש. שלחו בוליאני אמיתי — המחרוזת "false" תתעלם ותטופל כברירת מחדל.

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}'

הפניה מהירה

משימה נקודת קצה
יצירת סיכום צ’אט וקבלת הטקסט POST /summaries
יצירת סיכום צ’אט לפי מזהה איש קשר (לא מוחזר טקסט) POST /summaries/chat-summary
קריאת סיכום של יום GET /summaries/daily/{date}
יצירה מחדש של סיכום של יום POST /summaries/daily/{date}/regenerate