Vier oppervlakken
API, webhook, widget-SDK en workflow zijn verschillend
Start met één transactie: CRM-contact maken, ticket bijwerken of bericht archiveren. Noteer afzender, ontvanger, trigger, velden, latency, foutpad en hoofdrecord.
Vraag URL, versie, auth, scopes, endpoints, eventcatalogus, payloads, pagination, limits, changelog, uitfasering en support voor dat geval.
| Oppervlak | Typisch doel | Niet automatisch inbegrepen |
|---|---|---|
| Product-API | records lezen/schrijven en acties starten | real-time events of interface |
| Webhook | endpoint over gekozen events informeren | vrije queries, volledige historie of exactly-once |
| Widget-SDK | browser, identiteit, weergave of tracking sturen | server-API voor agents, export of compliance |
| Power Platform | Teams, connectors en systemen orkestreren | algemene native API of connector voor elk CRM |
Bewijsmatrix
Wat officiële bronnen werkelijk aantonen
| Product | Gedocumenteerd | Grens voor aankoop |
|---|---|---|
| WebChat | trefwoord, Teams-connector, Power Automate en optionele systemen | geen algemene API, productwebhook of SDK publiek aangetoond |
| Chatwoot | Application-, Client-, Platform-API's; HMAC-getekende accountwebhooks | token, API-klasse, Cloud/self-hosted en levering testen |
| Tidio | OpenAPI, Widget SDK, getekende webhooks met topic, versie en ID | Plus/Premium owner/admin; OpenAPI-wijzigingen zonder webhook |
| LiveChat | Agent/Customer-API's, Web/RTM, webhooks en scopes | app, OAuth/PAT, rollen, filters, pakket en versie accepteren |
Beheer
At-least-once vraagt idempotentie en reconciliatie
Tidio documenteert duplicaten, geen gegarandeerde volgorde, uniek ID en geen webhook voor OpenAPI-wijzigingen. LiveChat noemt korte acknowledgement en beperkte retries. Chatwoot documenteert signature, timestamp en delivery; de PoC moet retry en volgorde van de release bewijzen.
Groene HTTP-codes volstaan niet. Meet ontvangen, geverifieerd, gededupliceerd, verwerkt, mislukt en gereconcilieerd met business-ID.
- Beantwoord snel met 2xx en verwerk daarna asynchroon via queue.
- Controleer handtekening op raw body, timestamp en venster; roteer secrets.
- Dedupliceer met delivery/webhook/event-ID en maak effecten retry-safe.
- Sorteer op business-tijd en stabiel ID, niet alleen aankomst.
- Plaats fouten in quarantaine/dead letter, alarmeer en bied beheerste replay.
- Reconcileer via API omdat events laat, dubbel, gefilterd of afwezig kunnen zijn.
- Versioneer schema en consumer; tolereer nieuwe velden, stop bij ontbrekende vereisten.
Beveiliging en privacy
Minimaliseer tokens, payloads en schrijfrechten
Een geldige signature bewijst oorsprong en integriteit onder het secret, niet zakelijke bevoegdheid om te handelen.
Bij Teams/Power Platform horen flowowner, verbindingen, DLP, omgevingen, licenties en terugweg naar bezoeker erbij.
- Scheid test/prod, webhooksecrets, API-tokens en interactieve identiteiten.
- Geef alleen vereiste scopes; globale toegang vraagt motivatie.
- Map naam, e-mail, telefoon, tekst, bijlagen, browser en interne notities.
- Versleutel queue, logs, replay en secrets; maskeer data in telemetrie.
- Bescherm write-back met status, allowlist, goedkeuring en audit.
- Definieer retentie, inzage en verwijdering voor events, fouten, exports en back-ups.
Acceptatie
Acht tests vóór de keuze
- 01
Contract vastzetten
Use case, hoofdrecord, versie, endpoints, events, velden en latency.
- 02
Toegang weigeren
Verlopen, fout, beperkt token en vreemd account falen.
- 03
Signature testen
Gewijzigde body, oude tijd, fout secret en replay werken niet.
- 04
Dupliceren
Herhaald/parallel event heeft één zakelijk effect.
- 05
Volgorde breken
Update vóór create, late close en gelijktijdige berichten.
- 06
Storing forceren
Timeout, 500, queue, doel en limiet met retry, alarm, herstel.
- 07
Gat reconciliëren
Verlies webhook of gebruik API-oorsprong en vind record terug.
- 08
Exit bewijzen
Roteer secret, trek app in, verwijder webhook, exporteer delta en wis kopieën.