Notificări externe
Înregistrați e-mailurile pe care sistemul dumneavoastră le-a trimis unui client, astfel încât angajații să le vadă în Tillor
Ultima actualizare la
Trimite sistemul dumneavoastră e-mailuri către clienți (newsletter, confirmare de rezervare, memento)? Înregistrați-le atunci în Tillor. Angajații le văd la client, pe factură și în prezentarea Notificări, alături de notificările pe care Tillor le trimite singur.
Tillor nu trimite nimic: înregistrați un mesaj care a fost deja expediat. Notificările externe poartă în aplicație întotdeauna eticheta Extern cu numele sursei dumneavoastră, astfel încât să nu fie niciodată luate drept notificări Tillor.
Acces
Utilizatorul din spatele cheii API are nevoie în organizație de una dintre aceste permisiuni. Un administrator le acordă la permisiunile utilizatorilor organizației, în grupul Notificări (Înregistrare notificări externe și Gestionare notificări externe ale altora).
| Permisiune | Ce puteți face |
|---|---|
notifications:external:write | Să înregistrați notificări și să actualizați sau să ștergeți înregistrările proprii |
notifications:external:manage-others | Să actualizați sau să ștergeți și înregistrările altor utilizatori sau integrări |
Un utilizator pe integrare
Proprietatea este legată de utilizatorul cheii API. Folosiți pentru fiecare integrare un utilizator (de serviciu) propriu, astfel încât o integrare să nu poată modifica niciodată notificările alteia.
Endpoint-uri
Toate căile se află sub /api/orgs/:orgId. Scheme exacte: OpenAPI, eticheta notifications.
| Metodă | Cale | Descriere |
|---|---|---|
| POST | /notifications/external | Înregistrarea unei notificări |
| PATCH | /notifications/external/{id} | Actualizarea statusului, a momentelor sau a conținutului |
| DELETE | /notifications/external/{id} | Ștergere definitivă |
| GET | /notifications?source=EXTERNAL | Listarea notificărilor înregistrate (filtrați și după externalSource, externalReference, customerId, invoiceId) |
| GET | /notifications/{id} | Preluarea unei notificări |
Notificările pe care Tillor le-a trimis singur nu le puteți modifica sau șterge prin aceste endpoint-uri; ele dau 404.
Înregistrare
curl -X POST "https://tillor.eu/api/orgs/org_abc123/notifications/external" \
-H "x-api-key: tkn_xxx" \
-H "Content-Type: application/json" \
-d '{
"externalSource": "mailchimp",
"externalReference": "campaign-42:member-9f3a",
"name": "Boekingsbevestiging",
"customerId": "clx789...",
"channel": "EMAIL",
"status": "SENT",
"sentAt": "2026-09-19T08:15:00Z",
"email": {
"to": "jan@voorbeeld.nl",
"from": "Recreatiepark Het Meer <info@recreatiepark-het-meer.be>",
"subject": "Je boeking is bevestigd",
"htmlBody": "<p>Dag Jan, ...</p>",
"attachments": [{ "filename": "bevestiging.pdf", "contentType": "application/pdf", "size": 48211 }]
}
}'Toate câmpurile și limitele se află în OpenAPI. Aceste câmpuri au reguli pe care trebuie să le cunoașteți dinainte:
| Câmp | Regulă |
|---|---|
externalSource | Numele sistemului dumneavoastră, cu litere mici, cifre, ., _ sau - (de ex. mailchimp). Angajații văd acest nume la notificare |
externalReference | ID-ul dumneavoastră propriu pentru acest mesaj, unic în cadrul externalSource |
name | Etichetă scurtă pentru angajați (de ex. „Boekingsbevestiging”). Se poate căuta după el |
customerId / invoiceId | Cel puțin unul dintre ele. Determină unde apare notificarea. Dacă trimiteți doar invoiceId, Tillor leagă și clientul acelei facturi. Un ID necunoscut sau o factură a altui client dă 400 |
status | SENT, FAILED, BOUNCED sau COMPLAINED. Fără sentAt la SENT, Tillor folosește momentul înregistrării |
sentAt, readAt, clickedAt | ISO 8601 cu fus orar, de ex. 2026-09-19T08:15:00Z. Alte valori sunt refuzate |
email.attachments | Doar metadate (filename, contentType, size). Fișierele în sine nu sunt stocate |
Reîncercare în siguranță
POST este idempotent pe externalSource + externalReference. Dacă trimiteți din nou aceeași combinație (de exemplu după un timp limită), primiți notificarea existentă și nu se modifică nimic. Dacă doriți să ajustați ceva, folosiți PATCH.
Fără date personale în externalReference sau name
externalSource, externalReference și name sunt stocate necriptat, deoarece se caută după ele. Folosiți un ID tehnic, nu o adresă de e-mail sau un nume. Un externalReference cu @ este refuzat. Destinatarul, subiectul, conținutul și atașamentele sunt, în schimb, stocate criptat.
Actualizare și ștergere
La PATCH trimiteți doar câmpurile care se modifică, de exemplu când un e-mail este returnat ulterior:
curl -X PATCH "https://tillor.eu/api/orgs/org_abc123/notifications/external/NOTIFICATION_ID" \
-H "x-api-key: tkn_xxx" \
-H "Content-Type: application/json" \
-d '{ "status": "BOUNCED", "errorMessage": "Mailbox bestaat niet" }'DELETE șterge definitiv notificarea, inclusiv conținutul. Folosiți-l și pentru a răspunde unei cereri de ștergere (GDPR).
Un PATCH care nu schimbă nimic nu face nimic: nicio modificare, niciun eveniment. Dacă modificați conținutul (eticheta, destinatarul, expeditorul, subiectul, textul, HTML-ul sau atașamentele) sau ștergeți o notificare, aceasta apare în jurnalul de activitate al clientului sau al facturii, cu utilizatorul care a făcut-o. Actualizările de status, readAt sau clickedAt nu apar acolo, astfel încât să puteți continua să sincronizați deschiderile și clicurile.
HTML și confidențialitate
Tillor afișează HTML-ul angajaților așa cum l-a primit clientul, dar îl tratează ca pe un conținut de încredere redusă:
- La salvare, scripturile, formularele, iframe-urile, embed-urile și atributele de eveniment (
onclick, ...) sunt eliminate. Linkurile se deschid într-o filă nouă - Previzualizarea rulează într-un cadru izolat, fără scripturi și fără acces la sesiunea Tillor
- Imaginile și fonturile externe nu se încarcă automat, astfel încât deschiderea unei notificări să nu activeze un pixel de urmărire. Angajatul poate încărca imaginile pentru fiecare notificare în parte
Nu vă bazați deci pe faptul că urmărirea „deschis” din sistemul dumneavoastră se declanșează când un angajat vizualizează notificarea.
Ce nu face Tillor cu notificările externe
- Nu le trimite (din nou) și nu le reîncearcă automat
- Nu preia actualizări de status de la furnizorul dumneavoastră de e-mail: dumneavoastră păstrați statusul la zi cu
PATCH - Nu le numără în listele Notificări eșuate, Notificări returnate și Notificări în așteptare, nici în contoarele din partea de sus a prezentării notificărilor, deoarece Tillor nu poate verifica statusul dumneavoastră. Ele apar totuși sub Comunicări recente
Webhook-uri și SSE
| Eveniment | Când |
|---|---|
notification-delivery:updated | La înregistrare și la fiecare PATCH care modifică ceva. Conține notificarea completă |
notification-delivery:deleted | La DELETE. Conține doar id, source, externalSource, externalReference, customerId și invoiceId |
Câmpul source este EXTERNAL pentru înregistrările dumneavoastră și INTERNAL pentru notificările Tillor. Filtrați după el dacă doriți să săriți peste propriile evenimente. Vezi Webhook-uri și SSE.
Înrudite
- API HTTP - Chei API, anteturi și limite de rată
- Webhook-uri - Primirea evenimentelor prin HTTP POST
- OpenAPI - Scheme complete