POST/api/global-chatbot/demo/poll
Vraagt nieuwe, asynchroon binnengekomen berichten van een demochatsessie op (bijv. wanneer een menselijke agent in Master Admin heeft overgenomen) — wordt periodiek door de widget aangeroepen.
`POST /api/global-chatbot/demo/poll` vraagt nieuwe berichten of statuswijzigingen op voor een bestaande demosessie. De body bevat `session_id` en `visitor_id`. Beide waarden moeten afkomstig zijn van hetzelfde openbare demogesprek. Als een van de parameters ontbreekt, antwoordt de server met `400 PARAMS_REQUIRED`. De route vereist geen gebruikersaanmelding en leest de actuele stand van de demosessie. Zij wordt gebruikt wanneer een antwoord niet direct terugkomt op de vorige aanvraag of wanneer de interface later binnengekomen berichten moet weergeven. Polling is geen vervanging voor het verzenden van een bericht; het genereert zelf geen nieuwe bezoekersaanvraag. De client moet tussen de aanroepen een redelijke pauze aanhouden. Een strakke oneindige lus verhoogt de belasting en kan rate-limits activeren zonder sneller een antwoord te genereren. Als de sessie wordt beëindigd, ongeldig wordt of niet meer vindbaar is, moet de polling stoppen en moet de interface een nieuwe start aanbieden. Afgebroken pagina's of verborgen tabbladen mogen geen permanent lopende achtergrondaanvragen achterlaten. `session_id` en `visitor_id` zijn geen algemene toegangsgegevens voor andere gesprekken. Ze mogen niet worden gedeeld tussen bezoekers of samen met berichten naar openbare analysetools worden verzonden. De demo blijft gescheiden van tenantgesprekken en productieve inbox-gegevens. Een correcte test start een demosessie, verzendt een bericht en roept vervolgens Poll aan met dezelfde identificatoren. Daarnaast wordt een aanvraag zonder `visitor_id` getest. De gedocumenteerde negatieve test is een bewijs van een fout, geen bewijs dat een volledig productief gesprek succesvol is afgerond.
Auth & beveiliging
Geen authenticatie vereist
Idempotent: Ja
Parameters
session_id(body, string, vereist)visitor_id(body, string, vereist)Voorbeeld-request
{"session_id":"<UUID>","visitor_id":"<UUID>"}Voorbeeld-response
{"ok":true,"data":{"messages":[]}}Foutcodes
400 PARAMS_REQUIRED — session_id en/of visitor_id ontbreken.Live-testbewijs
Succes (200, lege lijst omdat er sinds demo.chat geen nieuwe asynchrone berichten zijn) en negatief geval (400) live geverifieerd.