Événements d’e-mail
Le cycle de vie de chaque e-mail sortant et entrant, de l’acceptation à la livraison, aux ouvertures, aux clics et aux désinscriptions.
email.accepted
Envoyé lorsque Envoyer un e-mail ou Transférer un e-mail accepte un e-mail pour une livraison immédiate. Emailit envoie un événement par destinataire, car chaque destinataire reçoit son propre ID d’e-mail. Les e-mails soumis via SMTP et les e-mails créés avec Relancer un e-mail ne déclenchent pas cet événement.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.accepted.
objectobjectL’e-mail décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet e-mail
idstringID de l’e-mail (em_…).
objectstringToujours email.
fromstringExpéditeur tel qu’indiqué dans la requête. Il peut inclure un nom d’affichage, par exemple Acme <hello@acme.com>.
tostringAdresse du destinataire. Emailit crée un e-mail distinct, avec son propre ID, pour chaque destinataire.
subjectstringLigne d’objet.
metaobject | nullL’objet meta que vous avez envoyé avec l’e-mail, ou null.
timestampstringDate d’acceptation de l’e-mail, au format ISO 8601 avec décalage UTC.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.accepted",
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "Acme <hello@acme.com>",
"to": "ada@example.com",
"subject": "Your order has shipped",
"meta": {
"order_id": "1042"
},
"timestamp": "2026-10-01T10:02:11.583000+00:00"
},
"data": {
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "Acme <hello@acme.com>",
"to": "ada@example.com",
"subject": "Your order has shipped",
"meta": {
"order_id": "1042"
},
"timestamp": "2026-10-01T10:02:11.583000+00:00"
}
}
}email.scheduled
Envoyé lorsque Envoyer un e-mail accepte un e-mail avec un scheduled_at dans le futur. Emailit envoie un événement par destinataire. À l’heure programmée, Emailit envoie l’e-mail sans événement email.accepted ; l’événement suivant est un événement de livraison comme email.delivered.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.scheduled.
objectobjectL’e-mail décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet e-mail
idstringID de l’e-mail (em_…).
objectstringToujours email.
fromstringExpéditeur tel qu’indiqué dans la requête. Il peut inclure un nom d’affichage, par exemple Acme <hello@acme.com>.
tostringAdresse du destinataire. Emailit crée un e-mail distinct, avec son propre ID, pour chaque destinataire.
subjectstringLigne d’objet.
metaobject | nullL’objet meta que vous avez envoyé avec l’e-mail, ou null.
scheduled_atstringDate à laquelle Emailit enverra l’e-mail.
timestampstringDate d’acceptation de l’e-mail, au format ISO 8601 avec décalage UTC.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.scheduled",
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "Acme <hello@acme.com>",
"to": "ada@example.com",
"subject": "Your October invoice",
"meta": {
"invoice_id": "INV-2026-0142"
},
"scheduled_at": "2026-10-02T09:00:00.000000+00:00",
"timestamp": "2026-10-01T10:02:11.583000+00:00"
},
"data": {
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "Acme <hello@acme.com>",
"to": "ada@example.com",
"subject": "Your October invoice",
"meta": {
"invoice_id": "INV-2026-0142"
},
"scheduled_at": "2026-10-02T09:00:00.000000+00:00",
"timestamp": "2026-10-01T10:02:11.583000+00:00"
}
}
}email.delivered
Envoyé lorsque le serveur de messagerie du destinataire accepte l’e-mail. « Livré » signifie que le serveur destinataire a pris en charge le message ; il peut encore le classer dans un dossier spam. La page Statuts des e-mails explique chaque statut.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.delivered.
objectobjectL’e-mail décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet e-mail
idstringID de l’e-mail (em_…).
objectstringToujours email.
fromstringAdresse de l’expéditeur, sans le nom d’affichage.
tostringAdresse du destinataire. Emailit crée un e-mail distinct pour chaque destinataire.
subjectstring | nullLigne d’objet.
statusstringToujours delivered.
metaobject | nullL’objet meta envoyé avec l’e-mail, ou null.
updated_atstringDate de dernière mise à jour de l’enregistrement de l’e-mail avant cet événement, au format ISO 8601 avec décalage UTC. Elle peut être antérieure au changement de statut lui-même.
created_atstringDate à laquelle Emailit a accepté l’e-mail.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.delivered",
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "hello@acme.com",
"to": "ada@example.com",
"subject": "Your order has shipped",
"status": "delivered",
"meta": {
"order_id": "1042"
},
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00"
},
"data": {
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "hello@acme.com",
"to": "ada@example.com",
"subject": "Your order has shipped",
"status": "delivered",
"meta": {
"order_id": "1042"
},
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00"
}
}
}email.attempted
Envoyé à chaque tentative de livraison qui échoue avec une erreur temporaire, comme un greylisting (mise en liste grise) ou une limite de débit du serveur destinataire, et qu’Emailit va réessayer. Emailit réessaie à intervalles croissants pendant environ 21 heures ; si la livraison échoue toujours, l’e-mail est considéré comme rebondi et vous recevez email.bounced.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.attempted.
objectobjectL’e-mail décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet e-mail
idstringID de l’e-mail (em_…).
objectstringToujours email.
fromstringAdresse de l’expéditeur, sans le nom d’affichage.
tostringAdresse du destinataire. Emailit crée un e-mail distinct pour chaque destinataire.
subjectstring | nullLigne d’objet.
statusstringToujours attempted.
metaobject | nullL’objet meta envoyé avec l’e-mail, ou null.
updated_atstringDate de dernière mise à jour de l’enregistrement de l’e-mail avant cet événement, au format ISO 8601 avec décalage UTC. Elle peut être antérieure au changement de statut lui-même.
created_atstringDate à laquelle Emailit a accepté l’e-mail.
smtp_codeinteger | nullCode de réponse SMTP du serveur destinataire, par exemple 421. null lorsqu’Emailit a lui-même reporté la tentative, par exemple pendant une temporisation des livraisons vers ce serveur.
smtp_enhanced_codestring | nullCode de statut étendu de la réponse, par exemple 4.7.0. Consultez Codes de statut étendus.
smtp_responsestring | nullRéponse complète du serveur destinataire.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.attempted",
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "hello@acme.com",
"to": "ada@example.com",
"subject": "Your order has shipped",
"status": "attempted",
"meta": {
"order_id": "1042"
},
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00",
"smtp_code": 421,
"smtp_enhanced_code": "4.7.0",
"smtp_response": "421 4.7.0 Try again later, closing connection."
},
"data": {
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "hello@acme.com",
"to": "ada@example.com",
"subject": "Your order has shipped",
"status": "attempted",
"meta": {
"order_id": "1042"
},
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00",
"smtp_code": 421,
"smtp_enhanced_code": "4.7.0",
"smtp_response": "421 4.7.0 Try again later, closing connection."
}
}
}email.bounced
Envoyé lorsqu’un e-mail ne peut pas être livré : le serveur destinataire l’a refusé avec une erreur permanente, une notification de rebond est arrivée après la livraison, toutes les nouvelles tentatives ont échoué, ou Emailit n’a pas pu l’envoyer du tout, par exemple parce que son domaine d’envoi a été supprimé. Selon vos paramètres de blocage automatique, Emailit bloque aussi l’adresse. Consultez Rebonds et plaintes.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.bounced.
objectobjectL’e-mail décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet e-mail
idstringID de l’e-mail (em_…).
objectstringToujours email.
fromstringAdresse de l’expéditeur, sans le nom d’affichage.
tostringAdresse du destinataire. Emailit crée un e-mail distinct pour chaque destinataire.
subjectstring | nullLigne d’objet.
statusstringToujours bounced.
metaobject | nullL’objet meta envoyé avec l’e-mail, ou null.
updated_atstringDate de dernière mise à jour de l’enregistrement de l’e-mail avant cet événement, au format ISO 8601 avec décalage UTC. Elle peut être antérieure au changement de statut lui-même.
created_atstringDate à laquelle Emailit a accepté l’e-mail.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.bounced",
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "hello@acme.com",
"to": "ada@example.com",
"subject": "Your order has shipped",
"status": "bounced",
"meta": {
"order_id": "1042"
},
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00"
},
"data": {
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "hello@acme.com",
"to": "ada@example.com",
"subject": "Your order has shipped",
"status": "bounced",
"meta": {
"order_id": "1042"
},
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00"
}
}
}email.failed
Envoyé lorsqu’Emailit ne peut pas traiter une notification de rebond arrivée à l’adresse de return-path de votre espace de travail, par exemple à cause d’une erreur interne. L’objet décrit le message de rebond, et non l’e-mail que vous avez envoyé. Cet événement est rare : les livraisons en échec déclenchent email.bounced ou email.attempted.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.failed.
objectobjectLe message de rebond décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet e-mail
idstringID d’e-mail (em_…) du message de rebond.
objectstringToujours email.
fromstringExpéditeur du message de rebond, généralement le mailer daemon du serveur destinataire.
tostringAdresse de return-path de votre espace de travail, sur le sous-domaine emailit. de votre domaine d’envoi.
subjectstring | nullObjet du message de rebond.
statusstringToujours failed.
metaobject | nullToujours null pour les messages de rebond.
updated_atstringDate de dernière mise à jour du message de rebond avant cet événement, au format ISO 8601 avec décalage UTC.
created_atstringDate de réception du message de rebond par Emailit.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.failed",
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "mailer-daemon@mx1.example.com",
"to": "2xKw0aNf5Zs8Yt1Lq4Ve7Mc3Pb6@emailit.acme.com",
"subject": "Undelivered Mail Returned to Sender",
"status": "failed",
"meta": null,
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00"
},
"data": {
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "mailer-daemon@mx1.example.com",
"to": "2xKw0aNf5Zs8Yt1Lq4Ve7Mc3Pb6@emailit.acme.com",
"subject": "Undelivered Mail Returned to Sender",
"status": "failed",
"meta": null,
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00"
}
}
}email.rejected
Envoyé lorsqu’Emailit refuse d’envoyer un e-mail parce que votre espace de travail n’a pas encore l’accès production et que le destinataire n’est pas membre de l’espace de travail. Tant que l’espace de travail n’est pas approuvé, vous ne pouvez envoyer qu’aux adresses de compte des membres de l’espace de travail.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.rejected.
objectobjectL’e-mail décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet e-mail
idstringID de l’e-mail (em_…).
objectstringToujours email.
fromstringAdresse de l’expéditeur, sans le nom d’affichage.
tostringAdresse du destinataire. Emailit crée un e-mail distinct pour chaque destinataire.
subjectstring | nullLigne d’objet.
statusstringToujours rejected.
metaobject | nullL’objet meta envoyé avec l’e-mail, ou null.
updated_atstringDate de dernière mise à jour de l’enregistrement de l’e-mail avant cet événement, au format ISO 8601 avec décalage UTC. Elle peut être antérieure au changement de statut lui-même.
created_atstringDate à laquelle Emailit a accepté l’e-mail.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.rejected",
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "hello@acme.com",
"to": "ada@example.com",
"subject": "Your order has shipped",
"status": "rejected",
"meta": {
"order_id": "1042"
},
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00"
},
"data": {
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "hello@acme.com",
"to": "ada@example.com",
"subject": "Your order has shipped",
"status": "rejected",
"meta": {
"order_id": "1042"
},
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00"
}
}
}email.suppressed
Envoyé lorsqu’Emailit n’envoie pas un e-mail parce que le destinataire fait l’objet d’un blocage recipient dans votre liste d’adresses bloquées. Pour écrire de nouveau à cette adresse, retirez-la avec Supprimer un blocage.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.suppressed.
objectobjectL’e-mail décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet e-mail
idstringID de l’e-mail (em_…).
objectstringToujours email.
fromstringAdresse de l’expéditeur, sans le nom d’affichage.
tostringAdresse du destinataire. Emailit crée un e-mail distinct pour chaque destinataire.
subjectstring | nullLigne d’objet.
statusstringToujours suppressed.
metaobject | nullL’objet meta envoyé avec l’e-mail, ou null.
updated_atstringDate de dernière mise à jour de l’enregistrement de l’e-mail avant cet événement, au format ISO 8601 avec décalage UTC. Elle peut être antérieure au changement de statut lui-même.
created_atstringDate à laquelle Emailit a accepté l’e-mail.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.suppressed",
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "hello@acme.com",
"to": "ada@example.com",
"subject": "Your order has shipped",
"status": "suppressed",
"meta": {
"order_id": "1042"
},
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00"
},
"data": {
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "hello@acme.com",
"to": "ada@example.com",
"subject": "Your order has shipped",
"status": "suppressed",
"meta": {
"order_id": "1042"
},
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00"
}
}
}email.held
Envoyé lorsqu’Emailit retient un e-mail au lieu de l’envoyer. Cela se produit lorsque l’espace de travail est suspendu, que le domaine d’envoi est en pause, que la clé API est configurée pour retenir les messages, que l’espace de travail n’a plus de crédits, ou que le score des contrôles anti-spam atteint ou dépasse le seuil (7 par défaut). Une fois la cause corrigée, renvoyez l’e-mail avec Relancer un e-mail.
email.held ne figure pas dans la liste d’événements du tableau de bord. Vous le recevez sur les webhooks dont all_events est activé, ou en l’ajoutant à events avec Mettre à jour un webhook.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.held.
objectobjectL’e-mail décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet e-mail
idstringID de l’e-mail (em_…).
objectstringToujours email.
fromstringAdresse de l’expéditeur, sans le nom d’affichage.
tostringAdresse du destinataire. Emailit crée un e-mail distinct pour chaque destinataire.
subjectstring | nullLigne d’objet.
statusstringToujours held.
metaobject | nullL’objet meta envoyé avec l’e-mail, ou null.
updated_atstringDate de dernière mise à jour de l’enregistrement de l’e-mail avant cet événement, au format ISO 8601 avec décalage UTC. Elle peut être antérieure au changement de statut lui-même.
created_atstringDate à laquelle Emailit a accepté l’e-mail.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.held",
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "hello@acme.com",
"to": "ada@example.com",
"subject": "Your order has shipped",
"status": "held",
"meta": {
"order_id": "1042"
},
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00"
},
"data": {
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "hello@acme.com",
"to": "ada@example.com",
"subject": "Your order has shipped",
"status": "held",
"meta": {
"order_id": "1042"
},
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00"
}
}
}email.canceled
Envoyé lorsque vous annulez un e-mail avec Annuler un e-mail. Si une tentative de livraison était déjà en cours, elle peut encore aboutir : un événement de livraison peut donc suivre.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.canceled.
objectobjectL’e-mail décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet e-mail
idstringID de l’e-mail (em_…).
objectstringToujours email.
fromstringExpéditeur tel qu’enregistré sur l’e-mail. Il peut inclure un nom d’affichage.
tostringAdresse du destinataire.
subjectstringLigne d’objet.
statusstringToujours canceled.
previous_statusstringStatut avant l’annulation : scheduled, accepted ou attempted.
metaobject | nullL’objet meta envoyé avec l’e-mail, ou null.
timestampstringDate d’annulation de l’e-mail, au format ISO 8601 avec décalage UTC.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.canceled",
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "Acme <hello@acme.com>",
"to": "ada@example.com",
"subject": "Your October invoice",
"status": "canceled",
"previous_status": "scheduled",
"meta": {
"invoice_id": "INV-2026-0142"
},
"timestamp": "2026-10-01T10:02:14.307000+00:00"
},
"data": {
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "Acme <hello@acme.com>",
"to": "ada@example.com",
"subject": "Your October invoice",
"status": "canceled",
"previous_status": "scheduled",
"meta": {
"invoice_id": "INV-2026-0142"
},
"timestamp": "2026-10-01T10:02:14.307000+00:00"
}
}
}email.complained
Envoyé lorsqu’un destinataire marque votre e-mail comme spam et que son fournisseur de messagerie le signale à Emailit via une boucle de rétroaction (feedback loop). Selon vos paramètres de blocage automatique, Emailit ajoute un blocage complaint pour l’adresse. Consultez Rebonds et plaintes.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.complained.
objectobjectL’e-mail décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet e-mail
idstringID de l’e-mail (em_…).
objectstringToujours email.
fromstringAdresse de l’expéditeur, sans le nom d’affichage.
tostringAdresse du destinataire. Emailit crée un e-mail distinct pour chaque destinataire.
subjectstring | nullLigne d’objet.
statusstringToujours complained.
metaobject | nullL’objet meta envoyé avec l’e-mail, ou null.
updated_atstringDate de dernière mise à jour de l’enregistrement de l’e-mail avant cet événement, au format ISO 8601 avec décalage UTC. Elle peut être antérieure au changement de statut lui-même.
created_atstringDate à laquelle Emailit a accepté l’e-mail.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.complained",
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "hello@acme.com",
"to": "ada@example.com",
"subject": "Your order has shipped",
"status": "complained",
"meta": {
"order_id": "1042"
},
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00"
},
"data": {
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "hello@acme.com",
"to": "ada@example.com",
"subject": "Your order has shipped",
"status": "complained",
"meta": {
"order_id": "1042"
},
"updated_at": "2026-10-01T10:02:12.104000+00:00",
"created_at": "2026-10-01T10:02:11.583000+00:00"
}
}
}email.received
Envoyé lorsqu’Emailit reçoit un e-mail sur l’une de vos adresses de réception. Le payload ne contient que l’enveloppe : récupérez le corps et les pièces jointes avec Récupérer un e-mail à partir de l’id.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.received.
objectobjectL’e-mail reçu décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet e-mail
idstringID (em_…) de l’e-mail reçu.
objectstringToujours email.
fromstringAdresse de l’expéditeur, tirée de l’en-tête From.
tostringAdresse de réception sur laquelle l’e-mail est arrivé.
subjectstring | nullLigne d’objet.
created_atstringDate de réception de l’e-mail par Emailit, au format ISO 8601 avec décalage UTC.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.received",
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "ada@example.com",
"to": "support@inbound.acme.com",
"subject": "Question about my order",
"created_at": "2026-10-01T10:02:11.583000+00:00"
},
"data": {
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "ada@example.com",
"to": "support@inbound.acme.com",
"subject": "Question about my order",
"created_at": "2026-10-01T10:02:11.583000+00:00"
}
}
}email.loaded
Envoyé chaque fois que le pixel de suivi d’un e-mail se charge, ce qui signifie généralement que le destinataire l’a ouvert. Le suivi des ouvertures nécessite un domaine de suivi vérifié et le suivi des ouvertures activé pour l’e-mail. Les clients de messagerie qui préchargent ou bloquent les images rendent les ouvertures approximatives.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.loaded.
objectobjectL’ouverture décrite par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet chargement
idstringID de l’ouverture (load_…).
objectstringToujours load.
email_idstringID de l’e-mail (em_…).
emailobjectL’e-mail.
email.idstringID de l’e-mail (em_…).
email.rcpt_tostringAdresse du destinataire.
email.mail_fromstringExpéditeur tel qu’enregistré sur l’e-mail. Il peut inclure un nom d’affichage.
email.subjectstring | nullLigne d’objet.
email.created_atstringDate à laquelle Emailit a accepté l’e-mail.
email.campaignobject | nullid et name de la campagne qui a envoyé l’e-mail, ou null pour les e-mails envoyés via l’API ou SMTP.
email.metaobject | nullL’objet meta envoyé avec l’e-mail, ou null.
contactobject | nullid et email du contact qui a l’adresse du destinataire dans cet espace de travail, ou null s’il n’y en a pas.
ip_addressstringAdresse IP de la requête.
user_agentstring | nullAgent utilisateur (user agent) du client à l’origine de la requête.
created_atstringDate de chargement du pixel, au format ISO 8601 avec décalage UTC.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.loaded",
"object": {
"id": "load_2xLg2Cw7Sr4Xo9Ud1Zn6Ke3Lt8g",
"object": "load",
"email_id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"email": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"rcpt_to": "ada@example.com",
"mail_from": "Acme <news@acme.com>",
"subject": "What's new in October",
"created_at": "2026-10-01T10:02:11.583000+00:00",
"campaign": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"name": "October product update"
},
"meta": null
},
"contact": {
"id": "con_2xLf5Jk1Xs7Nc2Ur8Zo3Ld6Pt0a",
"email": "ada@example.com"
},
"ip_address": "203.0.113.42",
"user_agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148",
"created_at": "2026-10-01T10:02:14.307000+00:00"
},
"data": {
"object": {
"id": "load_2xLg2Cw7Sr4Xo9Ud1Zn6Ke3Lt8g",
"object": "load",
"email_id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"email": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"rcpt_to": "ada@example.com",
"mail_from": "Acme <news@acme.com>",
"subject": "What's new in October",
"created_at": "2026-10-01T10:02:11.583000+00:00",
"campaign": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"name": "October product update"
},
"meta": null
},
"contact": {
"id": "con_2xLf5Jk1Xs7Nc2Ur8Zo3Ld6Pt0a",
"email": "ada@example.com"
},
"ip_address": "203.0.113.42",
"user_agent": "Mozilla/5.0 (iPhone; CPU iPhone OS 17_5 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148",
"created_at": "2026-10-01T10:02:14.307000+00:00"
}
}
}email.clicked
Envoyé chaque fois que quelqu’un clique sur un lien suivi dans un e-mail. Le suivi des clics nécessite un domaine de suivi vérifié et le suivi des clics activé pour l’e-mail. Emailit ne filtre pas les clics automatisés, comme les vérifications de liens effectuées par les scanners de sécurité.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.clicked.
objectobjectLe clic décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet clic
idstringID du clic (click_…).
objectstringToujours click.
email_idstringID de l’e-mail (em_…).
emailobjectL’e-mail.
email.idstringID de l’e-mail (em_…).
email.rcpt_tostringAdresse du destinataire.
email.mail_fromstringExpéditeur tel qu’enregistré sur l’e-mail. Il peut inclure un nom d’affichage.
email.subjectstring | nullLigne d’objet.
email.created_atstringDate à laquelle Emailit a accepté l’e-mail.
email.campaignobject | nullid et name de la campagne qui a envoyé l’e-mail, ou null pour les e-mails envoyés via l’API ou SMTP.
email.metaobject | nullL’objet meta envoyé avec l’e-mail, ou null.
linkobjectLe lien cliqué.
link.idstringID du lien (link_…).
link.urlstringURL de destination.
contactobject | nullid et email du contact qui a l’adresse du destinataire dans cet espace de travail, ou null s’il n’y en a pas.
ip_addressstringAdresse IP de la requête.
user_agentstring | nullAgent utilisateur (user agent) du client à l’origine de la requête.
created_atstringDate du clic, au format ISO 8601 avec décalage UTC.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.clicked",
"object": {
"id": "click_2xLg1Bv6Rq3Wn8Tc0Ym5Jd2Ks7f",
"object": "click",
"email_id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"email": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"rcpt_to": "ada@example.com",
"mail_from": "Acme <news@acme.com>",
"subject": "What's new in October",
"created_at": "2026-10-01T10:02:11.583000+00:00",
"campaign": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"name": "October product update"
},
"meta": null
},
"link": {
"id": "link_2xLf9Pa4Vt1Qm6Xs3Hc8Nb0Rd5e",
"url": "https://acme.com/blog/october-update"
},
"contact": {
"id": "con_2xLf5Jk1Xs7Nc2Ur8Zo3Ld6Pt0a",
"email": "ada@example.com"
},
"ip_address": "203.0.113.42",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Safari/605.1.15",
"created_at": "2026-10-01T10:02:14.307000+00:00"
},
"data": {
"object": {
"id": "click_2xLg1Bv6Rq3Wn8Tc0Ym5Jd2Ks7f",
"object": "click",
"email_id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"email": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"rcpt_to": "ada@example.com",
"mail_from": "Acme <news@acme.com>",
"subject": "What's new in October",
"created_at": "2026-10-01T10:02:11.583000+00:00",
"campaign": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"name": "October product update"
},
"meta": null
},
"link": {
"id": "link_2xLf9Pa4Vt1Qm6Xs3Hc8Nb0Rd5e",
"url": "https://acme.com/blog/october-update"
},
"contact": {
"id": "con_2xLf5Jk1Xs7Nc2Ur8Zo3Ld6Pt0a",
"email": "ada@example.com"
},
"ip_address": "203.0.113.42",
"user_agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/17.5 Safari/605.1.15",
"created_at": "2026-10-01T10:02:14.307000+00:00"
}
}
}email.unsubscribed
Envoyé lorsqu’un contact se désinscrit de vos campagnes, par exemple avec le lien de désinscription d’un e-mail de campagne. Emailit envoie aussi subscriber.updated pour chaque liste que le contact a quittée. Consultez Désinscriptions.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.unsubscribed.
objectobjectL’e-mail de campagne décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet e-mail
idstring | nullID (em_…) de l’e-mail de campagne à partir duquel le contact a agi, ou null si Emailit n’a pas pu l’identifier.
objectstringToujours email.
fromstringExpéditeur de l’e-mail de campagne.
tostringAdresse du contact.
subjectstringObjet de l’e-mail de campagne.
campaignobject | nullid et name de la campagne, ou null.
contactobject | nullid et email du contact.
unsubscribed_atstringDate de désinscription du contact, au format ISO 8601 avec décalage UTC.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.unsubscribed",
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "news@acme.com",
"to": "ada@example.com",
"subject": "What's new in October",
"campaign": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"name": "October product update"
},
"contact": {
"id": "con_2xLf5Jk1Xs7Nc2Ur8Zo3Ld6Pt0a",
"email": "ada@example.com"
},
"unsubscribed_at": "2026-10-01T10:02:14.307000+00:00"
},
"data": {
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "news@acme.com",
"to": "ada@example.com",
"subject": "What's new in October",
"campaign": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"name": "October product update"
},
"contact": {
"id": "con_2xLf5Jk1Xs7Nc2Ur8Zo3Ld6Pt0a",
"email": "ada@example.com"
},
"unsubscribed_at": "2026-10-01T10:02:14.307000+00:00"
}
}
}email.resubscribed
Envoyé lorsqu’un contact désinscrit de vos campagnes est réinscrit, par exemple avec l’option de réinscription de la page de désinscription. Emailit envoie aussi subscriber.updated pour chaque liste que le contact a rejointe de nouveau.
Les requêtes de webhook contiennent un tableau JSON d’événements comme celui-ci ; consultez Requêtes de webhook.
Champs
event_idstringID de l’événement (evt_…). Une requête relancée porte le même ID : utilisez-le pour ignorer les événements déjà traités. Vous pouvez aussi consulter l’événement avec Récupérer un événement.
typestringToujours email.resubscribed.
objectobjectL’e-mail de campagne décrit par l’événement. Ses champs sont détaillés ci-dessous.
data.objectobjectLe même objet, sous la forme que l’API des événements renvoie dans data.
Objet e-mail
idstring | nullID (em_…) de l’e-mail de campagne à partir duquel le contact a agi, ou null si Emailit n’a pas pu l’identifier.
objectstringToujours email.
fromstringExpéditeur de l’e-mail de campagne.
tostringAdresse du contact.
subjectstringObjet de l’e-mail de campagne.
campaignobject | nullid et name de la campagne, ou null.
contactobject | nullid et email du contact.
resubscribed_atstringDate de réinscription du contact, au format ISO 8601 avec décalage UTC.
{
"event_id": "evt_2xLc9Rr4Tn6Wb1Qm8Ks3Vf0Hd7a",
"type": "email.resubscribed",
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "news@acme.com",
"to": "ada@example.com",
"subject": "What's new in October",
"campaign": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"name": "October product update"
},
"contact": {
"id": "con_2xLf5Jk1Xs7Nc2Ur8Zo3Ld6Pt0a",
"email": "ada@example.com"
},
"resubscribed_at": "2026-10-01T10:02:14.307000+00:00"
},
"data": {
"object": {
"id": "em_2xLc8Mm3Pq5Vn0Ra7Jt2Wd9Fb4e",
"object": "email",
"from": "news@acme.com",
"to": "ada@example.com",
"subject": "What's new in October",
"campaign": {
"id": "cmp_2xLf3Gd8Wr5Mb0Tq6Yn1Kc4Hs9e",
"name": "October product update"
},
"contact": {
"id": "con_2xLf5Jk1Xs7Nc2Ur8Zo3Ld6Pt0a",
"email": "ada@example.com"
},
"resubscribed_at": "2026-10-01T10:02:14.307000+00:00"
}
}
}