These are the events a webhook can subscribe to, grouped by object. Each webhook subscribes one URL to one event (see Using webhooks).
Class says what a subscription needs:
- Standard and compliance events can be sent to any URL. Compliance events report bounces, complaints, unsubscribes and refused sends. Their payloads are documented in Compliance events.
- High-volume events can only be sent to an approved domain. See event classes.
Payloads of the other events aren't documented yet.
| Event | When it fires | Class | Payload |
|---|---|---|---|
Account.Created | A partner creates a sub-account (POST /accounts). Delivered to the partner account. | Standard | Not yet documented |
Account.Confirmed | A pending sub-account is confirmed from its verification link (POST /accounts/{account_id}/confirm). Delivered to the partner account. | Standard | Not yet documented |
Account.Updated | A partner edits a sub-account (PATCH /accounts/{account_id}), delivered to the partner account; or an account edits itself (PATCH /accounts/self), delivered to the account and to its partner. | Standard | Not yet documented |
Account.Deleted | A partner deletes a sub-account (DELETE /accounts/{account_id}). Delivered to the partner account. | Standard | Not yet documented |
Campaign.Created | A campaign is created (POST /campaigns). | Standard | Not yet documented |
Campaign.Updated | A campaign is edited (PATCH /campaigns/{campaign_id}). | Standard | Not yet documented |
Campaign.Scheduled | A campaign is scheduled or rescheduled (POST /campaigns/{campaign_id}/schedule, POST /campaigns/{campaign_id}/reschedule). | Standard | Not yet documented |
Campaign.Unscheduled | A scheduled campaign is unscheduled (POST /campaigns/{campaign_id}/unschedule). | Standard | Not yet documented |
Campaign.Suspended | A campaign is suspended with POST /campaigns/{campaign_id}/suspend. | Standard | Not yet documented |
Campaign.Resumed | A suspended campaign is resumed (POST /campaigns/{campaign_id}/resume). | Standard | Not yet documented |
Campaign.Canceled | A campaign is canceled (POST /campaigns/{campaign_id}/cancel). | Standard | Not yet documented |
CampaignLogExport.Created | An export of a campaign's activity log is requested (POST /logs/campaigns/{campaign_id}/exports). It fires on the request, not when the export is ready. | Standard | Not yet documented |
Contact.Added | A contact becomes active on a list: added (POST /lists/{list_id}/contacts), imported, signed up with a form, added by an Email API message to a list, confirmed after a double opt-in, or resubscribed. A pending contact fires it when they confirm. | High-volume | Not yet documented |
Contact.Updated | A contact changes (PATCH /lists/{list_id}/contacts/{contact_id}), or is added or imported again while already on the list. | High-volume | Not yet documented |
Contact.Removed | A contact leaves a list: unsubscribed (a link, the API, a list unsubscribe or a global unsubscribe) or deleted (DELETE /lists/{list_id}/contacts/{contact_id}). An import that unsubscribes contacts doesn't fire it. | Compliance | Payload |
ContactsExport.Created | A contacts export is requested (POST /lists/{list_id}/exports). | Standard | Not yet documented |
ContactsExport.Deleted | A contacts export is deleted (DELETE /lists/{list_id}/exports/{export_id}). | Standard | Not yet documented |
Email.Submitted | Email API: POST /v2/emails accepts a message. | High-volume | Not yet documented |
Email.Queued | Email API: a submitted message passes the checks and is queued for delivery. | High-volume | Not yet documented |
Email.Processing | Email API: the sending server reports that it's processing the message. | High-volume | Not yet documented |
Email.Delivered | Email API: the sending server reports the message delivered. | High-volume | Not yet documented |
Email.Rejected | Email API: POST /v2/emails refuses a message before queueing it, because the recipient bounced, unsubscribed, hasn't confirmed, reported spam, was deleted or is suppressed. | Compliance | Payload |
Email.Error | Email API: a submitted message hits an internal error before it's queued. | Compliance | Payload |
Email.Sent | The deprecated POST /emails accepts a message. Campaigns and POST /v2/emails don't fire it. | High-volume | Not yet documented |
Email.Opened | A recipient opens a tracked message, whichever way it was sent. | High-volume | Not yet documented |
Email.Clicked | A recipient clicks a tracked link, whichever way the message was sent. | High-volume | Not yet documented |
Email.Bounced | A message bounces, whichever way it was sent. | Compliance | Payload |
Email.ReportedAsSpam | A recipient reports a message as spam to a mailbox provider that shares complaints, whichever way it was sent. | Compliance | Payload |
Email.Unsubscribed | Email API: a recipient unsubscribes from the list with a link or the List-Unsubscribe header. | Compliance | Payload |
Email.GlobalUnsubscribed | Email API: a recipient unsubscribes from all email. | Compliance | Payload |
List.Created | A list is created (POST /lists). | Standard | Not yet documented |
List.Updated | A list's settings change (PATCH /lists/{list_id}, POST /lists/{list_id}/accept-policy). | Standard | Not yet documented |
List.Deleted | A list is deleted (DELETE /lists/{list_id}). Archiving a list doesn't fire it. | Standard | Not yet documented |
ListLogsExport.Created | An export of a list's activity log is requested (POST /logs/lists/{list_id}/exports). | Standard | Not yet documented |
Segment.Created | A segment is created (POST /lists/{list_id}/segments). | Standard | Not yet documented |
Segment.Updated | A segment's name or conditions change (PATCH /lists/{list_id}/segments/{segment_id}). | Standard | Not yet documented |
Segment.Deleted | A segment is deleted (DELETE /lists/{list_id}/segments/{segment_id}). | Standard | Not yet documented |
Sender.Created | A sender is added (POST /brands/default/senders). | Standard | Not yet documented |
Sender.Updated | A sender is edited (PATCH /brands/default/senders/{sender_id}). | Standard | Not yet documented |
Sender.Deleted | A sender is deleted (DELETE /brands/default/senders/{sender_id}). | Standard | Not yet documented |
Sender.Confirmed | A sender is confirmed from its confirmation link (POST /brands/default/senders/confirm-email), or by an administrator. | Standard | Not yet documented |
Sender.ConfirmationEmailSent | The confirmation email is sent again (POST /brands/default/senders/{sender_id}/resend-confirmation-email). The first one, sent when the sender is added, doesn't fire it. | Standard | Not yet documented |
SuppressedEmail.Added | An address, domain or local part is added to the suppression list: with POST /suppressed-emails, or by a global unsubscribe. | Standard | Payload |
SuppressedEmail.Removed | A suppression is removed (DELETE /suppressed-emails/{email}). | Standard | Not yet documented |
SuppressedEmailsExport.Created | A suppression-list export is requested (POST /reports/suppressed-emails-exports). | Standard | Not yet documented |
SuppressedEmailsExport.Deleted | A suppression-list export is deleted (DELETE /reports/suppressed-emails-exports/{export_id}). | Standard | Not yet documented |
User.Created | A user is added (POST /users). | Standard | Not yet documented |
User.Confirmed | An invited user sets their password from the verification link (POST /users/{user_id}/confirm). | Standard | Not yet documented |
User.Updated | A user's profile, permissions or status changes (PATCH /users/{user_id}). | Standard | Not yet documented |
User.Deleted | A user is deleted, whether confirmed or pending (DELETE /users/{user_id}). | Standard | Not yet documented |
Which events fire depends on how you send
| Campaigns and workflow emails | Email API (POST /v2/emails, and automations) | Deprecated POST /emails | |
|---|---|---|---|
Email.Opened, Email.Clicked, Email.Bounced, Email.ReportedAsSpam | Yes | Yes | Yes |
Email.Submitted, Email.Queued, Email.Processing, Email.Delivered, Email.Rejected, Email.Error | No | Yes | No |
Email.Unsubscribed, Email.GlobalUnsubscribed | No: see below | Yes | No |
Email.Sent | No | No | Yes |
An unsubscribe from a campaign or workflow email fires Contact.Removed. A global unsubscribe from one also
fires SuppressedEmail.Added.
Some events exist only inside the platform and can't be subscribed to, such as logins, MFA changes and contact tags.
Last modified on