DM Champ Docs

Yhteenveto-API

API:n kautta on saatavilla kahdenlaisia tekoälyn kirjoittamia yhteenvetoja:

  • Chat-yhteenvedot — lyhyt kertaus yhden yhteyshenkilön keskustelusta, joka luodaan pyynnöstä. Sama asia kuin chatin yhteenvetotoiminto (katso Chat-yhteenveto).

  • Päivittäiset yhteenvedot — kerran päivässä tehtävä kooste kaikista keskusteluistasi, jonka Päivittäiset yhteenvedot muodostaa joka aamu: tilastot, yksi markdown-lohko per osio ja kaikki tekoälyn niistä luomat tehtävät.

  • Perus-URLhttps://api.dmchamp.com/v1

  • Todennus — API-avaimesi (katso Todennus). Rajattu avain tarvitsee Summaries-osion.

  • Virheet ja sivutus — katso Virheet ja sivutus

Kaikki alla olevat esimerkit näyttävät ?apiKey=-kyselymuodon cURL-muodossa ja X-API-Key-otsikon JavaScriptissä ja Pythonissa – kumpi tahansa toimii jokaisessa päätepisteessä.


Luo chat-yhteenveto

POST /summaries — lähetä yhteyshenkilön phoneNumber (maakoodilla) tai email; toinen näistä on pakollinen.

Tekoäly lukee yhteyshenkilön viimeisimmän suljetun keskustelun tai sen, joka on vielä auki, jos yhtään ei ole vielä suljettu, ja kirjoittaa siitä kertauksen. Kertaus tallennetaan yhteyshenkilölle (se näkyy sovelluksen yhteyshenkilöpaneelissa kohdassa Yhteenvedot) ja palautetaan vastauksessa, joten voit välittää sen suoraan CRM-järjestelmään, Slack-kanavalle tai sähköpostiin.

Kustannus: sama kuin yksi tekoälyvastaus agentin tekoälyn laatutasolla — Pro 1 krediitti, Max 0,25, Mini 0,15; omalla Anthropic-avaimellasi Pro maksaa 0. Pyyntö hylätään ennen kuin mitään luodaan, jos saldo ei kata sitä.

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

Vastaus

{
  "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."
}
Tila Merkitys
400 Kumpaakaan, phoneNumber tai email, ei lähetetty.
404 Yhteyshenkilöä ei löydy, yhteyshenkilöllä ei ole vielä keskustelua tai keskustelussa ei ole viestejä. Rungon message kertoo, kumpi on kyseessä.
500 Luominen epäonnistui (esimerkiksi riittämättömien krediittien vuoksi).

Automaatioresepti: varausvahvistussähköposti yhteenvedolla. Lisää automaatioon Tapaaminen varattu -liipaisimella HTTP-pyyntö-vaihe, joka kutsuu tätä päätepistettä ${trigger.contact.phone_number}:lla (tai yhteyshenkilön sähköpostilla), ja sen jälkeen Sähköposti-vaihe, joka lisää HTTP-vaiheen vastauksesta summary:n yhdessä linkin kanssa chattiin (sovelluksesi osoite, jota seuraa /chats/ ja liipaisimesta saatu yhteyshenkilön ID). Tiimisi saa varauksen kontekstin samassa sähköpostissa ilman, että heidän tarvitsee avata postilaatikkoa.

Yhteenvetojen lukeminen takaisin. Ei ole olemassa päätepistettä, joka listaisi tallennetut chat-yhteenvedot. Säilytä vastauksen teksti, jos tarvitset sitä myöhemmin, tai luo se uudelleen (jokainen kutsu laskutetaan).

Vaihtoehto: yhteyshenkilön ID:n mukaan

POST /summaries/chat-summary {"contactId": "..."}:llä tekee saman luomisen yhteyshenkilölle, jonka ID on jo hallussasi. Se vahvistaa vain onnistumisen ({"success": true, "data": "Chat summary generated successfully"}) eikä palauta tekstiä, joten käytä POST /summaries:a, kun haluat itse kertauksen. Tiimin jäsen, jonka avain on rajoitettu vain hänen omiin yhteyshenkilöihinsä, saa 404:n yhteyshenkilölle, joka on kyseisen laajuuden ulkopuolella.


Hae päivittäinen yhteenveto

GET /summaries/daily/{date}date on YYYY-MM-DD. Palauttaa kyseisen päivän yhteenvedon tai null kohdassa summary, kun mitään ei ole vielä luotu, sekä osiokonfiguraatiosi.

cURL

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

Vastaus

{
  "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 tai failed (kun error on asetettu). Kysy tätä päätepistettä uudelleenluonnin jälkeen, kunnes se lukee completed.
  • sections — yksi markdown-merkkijono per osio, avaimena osion tunniste. Viisi vakio-osiota ovat wins_losses_improvements, tasks_action_items, human_alerts_reviews, sentiment_analysis ja booked_meetings_sales; osiot, jotka lisäät Määritä-kohdassa Päivittäiset yhteenvedot -sivulla, saavat custom_…-tunnisteen. Nimet ja järjestys toistetaan kohdassa section_configs.
  • contact_map — näyttönimi yhteystiedon tunnisteeksi, jotta voit muuttaa tekstissä olevat nimet linkeiksi.
  • auto_tasks / created_task_ids — tekoälyn poimimat toimintokohteet ja niistä luodut tehtävät (kun Luo tehtäväkortteja toimintokohteista on päällä).
Tila Merkitys
400 date ei ole YYYY-MM-DD tai se on tulevaisuudessa.
403 Päivittäiset yhteenvedot on kytketty pois päältä tililtä.

Haluatko mieluummin push-ilmoituksen kuin kyselyn? Päivittäinen yhteenveto luotu webhook-tapahtuma toimittaa saman hyötykuorman heti, kun aamuyhteenveto valmistuu.


Päivittäisen yhteenvedon uudelleenluonti

POST /summaries/daily/{date}/regenerate — aloittaa uuden luonnin kyseiselle päivälle taustalla ja palauttaa välittömästi status: "generating" ja tyhjän sections. Kysy GET /summaries/daily/{date}, kunnes se valmistuu. Samat säännöt pätevät kuin sovelluksen Yritä uudelleen -linkissä.

Valinnainen runko {"deleteTasks": false} säilyttää edellisen suorituksen luomat tehtävät; oletusarvoisesti ne poistetaan ja luodaan uudelleen uuden yhteenvedon perusteella. Lähetä oikea totuusarvo (boolean) — merkkijono "false" jätetään huomiotta ja käsitellään oletusarvona.

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

Pikaopas

Tehtävä Päätepiste
Luo chat-yhteenveto ja hae teksti POST /summaries
Luo chat-yhteenveto yhteystiedon tunnisteen perusteella (ei palauta tekstiä) POST /summaries/chat-summary
Lue päivän yhteenveto GET /summaries/daily/{date}
Luo päivän yhteenveto uudelleen POST /summaries/daily/{date}/regenerate