Catalogul evenimentelor
Structura conținutului
Secțiune intitulată „Structura conținutului”Fiecare eveniment este un obiect JSON:
{ "id": "evt_01HKQN9…", "type": "conversation.created", "occurred_at": "2026-04-20T14:23:45.123Z", "account_id": "7c1d2c6e-…", "site_id": "0f3a…", "data": { … the resource, in the same shape the API returns it … }}id este valoarea din antetul X-RolChat-Event-Id și rămâne aceeași la reîncercări. type are forma <domain>.<noun>.<verb> sau <domain>.<verb>, în snake_case. data conține resursa așa cum ar returna-o endpointul GET corespunzător, așa că un receptor poate fi scris pe baza referinței API fără a avea nevoie de o a doua schemă.
Familii de evenimente
Secțiune intitulată „Familii de evenimente”| Familie | Exemple | Emise când |
|---|---|---|
conversation.* |
conversation.created, conversation.assigned, conversation.resolved, conversation.reopened, conversation.merged |
O conversație își schimbă starea sau responsabilul |
message.* |
message.created, message.delivered, message.read, message.failed |
Un mesaj este publicat sau starea livrării lui se schimbă |
crm.* |
crm.lead.created, crm.contact.created, crm.contact.updated, crm.contact.merged, crm.deal.stage_changed, crm.deal.won |
Un lead, un contact, o companie sau o oportunitate se schimbă |
ticket.* |
ticket.created, ticket.status_changed, ticket.assigned, ticket.sla_breached |
Un tichet se schimbă |
visitor.* |
visitor.identified, visitor.cobrowse.requested |
Un vizitator este identificat sau cere o sesiune de cobrowsing |
marketing.* |
marketing.form.submitted, marketing.booking.created, marketing.campaign.sent, marketing.unsubscribed |
Formulare, programări, campanii |
kb.* |
kb.article.published, kb.article.unpublished |
Modificări în baza de cunoștințe |
phone.* |
phone.call.started, phone.call.ended, phone.call.recorded, phone.call.transcribed, phone.voicemail.received |
Apeluri și mesagerie vocală |
automation.* |
automation.rule.executed, automation.rule.failed |
Rulează o regulă de automatizare |
privacy.* |
privacy.consent.granted, privacy.consent.withdrawn, privacy.dsr.received |
Consimțământ și cereri ale persoanelor vizate |
billing.* |
billing.invoice.created, billing.trial_expiring, billing.subscription.changed |
Abonament și facturi |
auth.* |
auth.api_key.created, auth.api_key.revoked, auth.account.swapped |
Evenimente de cont relevante pentru securitate |
ai.* |
ai.usage.recorded |
Fiecare apel către un adaptor AI, cu numărul de tokenuri |
Lista exactă crește odată cu produsul; ecranul de abonare afișează fiecare tip pe care îl poate primi contul tău și îți permite să filtrezi după tip.
Abonarea
Secțiune intitulată „Abonarea”Abonamentele la webhook-uri aparțin unui plugin. În Setări → Pluginuri, deschide pluginul (sau creează unul personalizat) și adaugă un endpoint: URL HTTPS, tipurile de evenimente dorite și, opțional, o listă de IP-uri permise. Secretul de semnare este afișat o singură dată. Livrările, reîncercările și mesajele nelivrate pentru acel endpoint apar în Jurnalul webhook-urilor al pluginului.
Plugin Protocol, descris pe pagina Pluginuri, explică modul în care un plugin își declară în manifest evenimentele de care are nevoie.
Ordinea și livrarea
Secțiune intitulată „Ordinea și livrarea”- Livrarea are loc cel puțin o dată. Elimină duplicatele după
id. - Evenimentele unei resurse sunt trimise în ordine, dar reîncercările pot schimba ordinea livrărilor. Folosește
occurred_atșiupdated_atal resursei, nu ora sosirii. - Un abonament care eșuează în continuu acumulează mesaje nelivrate; peste 100 pentru un endpoint declanșează o alertă de partea RolChat și un avertisment în jurnalul pluginului.