Platform events
Every event is generated from the Boundry event catalog. Subscribe to an exact type, a namespace wildcard such as email.*, or * for every present and future platform event.
email.queued
Boundry accepted the email and queued it.
Channel: email
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"attachments":[],"bcc":[],"cc":[],"created_at":"2026-08-14T12:00:00.000Z","from":"sender@acme.com","html":"<p>Hello</p>","id":"msg_01j0example","last_event":"queued","message_id":null,"object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}}.
objectrequiredobjectEvent resource. Example: {"attachments":[],"bcc":[],"cc":[],"created_at":"2026-08-14T12:00:00.000Z","from":"sender@acme.com","html":"<p>Hello</p>","id":"msg_01j0example","last_event":"queued","message_id":null,"object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}.
attachmentsrequiredarrayAttachment metadata.
content_typerequiredstringAttachment media type. Example: "application/pdf".
filenamerequiredstringOriginal attachment filename. Example: "invoice.pdf".
idrequiredstringAttachment identifier. Example: "msg_01j0example".
sizerequiredintegerAttachment size in bytes. Example: 1234.
bccrequiredarrayBlind-carbon-copy recipients.
ccrequiredarrayCarbon-copy recipients.
channelrequiredstringMessaging channel. Values: "email".
created_atrequiredstring (date-time)Timestamp when Boundry accepted the message. Example: "2026-08-14T12:00:00.000Z".
fromrequiredstringSender email address. Example: "hello@example.com".
htmlrequiredstring | null | nullHTML body, or null when omitted.
Option 1stringHTML email content.
Option 2null | nullOne permitted response shape.
idrequiredstringMessage identifier. Example: "msg_01j0example".
last_eventrequiredstringLatest delivery lifecycle event. Values: "queued", "scheduled", "sending", "sent", "delivered", "delivery_delayed", "bounced", "complained", "opened", "clicked", "failed", "canceled", "received", "stored".
message_idrequiredstring | null | nullProvider message identifier, or null before delivery.
Option 1stringProvider message identifier.
Option 2null | nullOne permitted response shape.
objectrequiredstringResource type discriminator. Values: "email". Example: "email".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
reply_torequiredarrayReply-to addresses.
scheduled_atrequirednull | nullScheduled delivery time; local mode does not schedule emails.
subjectrequiredstringEmail subject. Example: "Welcome to Boundry".
tagsrequiredarrayEmail tags.
namerequiredstringTag name. Example: "campaign".
valuerequiredstringTag value. Example: "welcome".
textrequiredstring | null | nullPlain-text body, or null when omitted.
Option 1stringPlain-text email content.
Option 2null | nullOne permitted response shape.
torequiredarrayRecipient email addresses.
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "email.queued".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"attachments": [],
"bcc": [],
"cc": [],
"created_at": "2026-08-14T12:00:00.000Z",
"from": "sender@acme.com",
"html": "<p>Hello</p>",
"id": "msg_01j0example",
"last_event": "queued",
"message_id": null,
"object": "email",
"project_id": "proj_au_prod",
"reply_to": [],
"scheduled_at": null,
"subject": "Welcome",
"tags": [],
"text": "Hello",
"to": [
"hello@example.com"
]
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "email.queued"
}email.scheduled
The email is held for a future send time.
Channel: email
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"attachments":[],"bcc":[],"cc":[],"channel":"email","created_at":"2026-08-14T12:00:00.000Z","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"scheduled","message_id":null,"object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":"2026-08-15T12:00:00.000Z","subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}}.
objectrequiredobjectEvent resource. Example: {"attachments":[],"bcc":[],"cc":[],"channel":"email","created_at":"2026-08-14T12:00:00.000Z","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"scheduled","message_id":null,"object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":"2026-08-15T12:00:00.000Z","subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}.
attachmentsrequiredarrayAttachment metadata.
content_typerequiredstringAttachment media type. Example: "application/pdf".
filenamerequiredstringOriginal attachment filename. Example: "invoice.pdf".
idrequiredstringAttachment identifier. Example: "msg_01j0example".
sizerequiredintegerAttachment size in bytes. Example: 1234.
bccrequiredarrayBlind-carbon-copy recipients.
ccrequiredarrayCarbon-copy recipients.
channelrequiredstringMessaging channel. Values: "email".
created_atrequiredstring (date-time)Timestamp when Boundry accepted the message. Example: "2026-08-14T12:00:00.000Z".
fromrequiredstringSender email address. Example: "hello@example.com".
htmlrequiredstring | null | nullHTML body, or null when omitted.
Option 1stringHTML email content.
Option 2null | nullOne permitted response shape.
idrequiredstringMessage identifier. Example: "msg_01j0example".
last_eventrequiredstringLatest delivery lifecycle event. Values: "queued", "scheduled", "sending", "sent", "delivered", "delivery_delayed", "bounced", "complained", "opened", "clicked", "failed", "canceled", "received", "stored".
message_idrequiredstring | null | nullProvider message identifier, or null before delivery.
Option 1stringProvider message identifier.
Option 2null | nullOne permitted response shape.
objectrequiredstringResource type discriminator. Values: "email". Example: "email".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
reply_torequiredarrayReply-to addresses.
scheduled_atrequiredstring (date-time)Scheduled send time. Example: "2026-08-14T12:00:00.000Z".
subjectrequiredstringEmail subject. Example: "Welcome to Boundry".
tagsrequiredarrayEmail tags.
namerequiredstringTag name. Example: "campaign".
valuerequiredstringTag value. Example: "welcome".
textrequiredstring | null | nullPlain-text body, or null when omitted.
Option 1stringPlain-text email content.
Option 2null | nullOne permitted response shape.
torequiredarrayRecipient email addresses.
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "email.scheduled".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"attachments": [],
"bcc": [],
"cc": [],
"channel": "email",
"created_at": "2026-08-14T12:00:00.000Z",
"from": "sender@acme.com",
"html": null,
"id": "msg_01j0example",
"last_event": "scheduled",
"message_id": null,
"object": "email",
"project_id": "proj_au_prod",
"reply_to": [],
"scheduled_at": "2026-08-15T12:00:00.000Z",
"subject": "Welcome",
"tags": [],
"text": "Hello",
"to": [
"hello@example.com"
]
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "email.scheduled"
}email.sending
Handed to the regional transport.
Channel: email
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"attachments":[],"bcc":[],"cc":[],"created_at":"2026-08-14T12:00:00.000Z","from":"sender@acme.com","html":"<p>Hello</p>","id":"msg_01j0example","last_event":"queued","message_id":null,"object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}}.
objectrequiredobjectEvent resource. Example: {"attachments":[],"bcc":[],"cc":[],"created_at":"2026-08-14T12:00:00.000Z","from":"sender@acme.com","html":"<p>Hello</p>","id":"msg_01j0example","last_event":"queued","message_id":null,"object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}.
attachmentsrequiredarrayAttachment metadata.
content_typerequiredstringAttachment media type. Example: "application/pdf".
filenamerequiredstringOriginal attachment filename. Example: "invoice.pdf".
idrequiredstringAttachment identifier. Example: "msg_01j0example".
sizerequiredintegerAttachment size in bytes. Example: 1234.
bccrequiredarrayBlind-carbon-copy recipients.
ccrequiredarrayCarbon-copy recipients.
channelrequiredstringMessaging channel. Values: "email".
created_atrequiredstring (date-time)Timestamp when Boundry accepted the message. Example: "2026-08-14T12:00:00.000Z".
fromrequiredstringSender email address. Example: "hello@example.com".
htmlrequiredstring | null | nullHTML body, or null when omitted.
Option 1stringHTML email content.
Option 2null | nullOne permitted response shape.
idrequiredstringMessage identifier. Example: "msg_01j0example".
last_eventrequiredstringLatest delivery lifecycle event. Values: "queued", "scheduled", "sending", "sent", "delivered", "delivery_delayed", "bounced", "complained", "opened", "clicked", "failed", "canceled", "received", "stored".
message_idrequiredstring | null | nullProvider message identifier, or null before delivery.
Option 1stringProvider message identifier.
Option 2null | nullOne permitted response shape.
objectrequiredstringResource type discriminator. Values: "email". Example: "email".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
reply_torequiredarrayReply-to addresses.
scheduled_atrequirednull | nullScheduled delivery time; local mode does not schedule emails.
subjectrequiredstringEmail subject. Example: "Welcome to Boundry".
tagsrequiredarrayEmail tags.
namerequiredstringTag name. Example: "campaign".
valuerequiredstringTag value. Example: "welcome".
textrequiredstring | null | nullPlain-text body, or null when omitted.
Option 1stringPlain-text email content.
Option 2null | nullOne permitted response shape.
torequiredarrayRecipient email addresses.
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "email.sending".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"attachments": [],
"bcc": [],
"cc": [],
"created_at": "2026-08-14T12:00:00.000Z",
"from": "sender@acme.com",
"html": "<p>Hello</p>",
"id": "msg_01j0example",
"last_event": "queued",
"message_id": null,
"object": "email",
"project_id": "proj_au_prod",
"reply_to": [],
"scheduled_at": null,
"subject": "Welcome",
"tags": [],
"text": "Hello",
"to": [
"hello@example.com"
]
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "email.sending"
}email.sent
Accepted for delivery by the transport.
Channel: email
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"attachments":[],"bcc":[],"cc":[],"created_at":"2026-08-14T12:00:00.000Z","from":"sender@acme.com","html":"<p>Hello</p>","id":"msg_01j0example","last_event":"queued","message_id":null,"object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}}.
objectrequiredobjectEvent resource. Example: {"attachments":[],"bcc":[],"cc":[],"created_at":"2026-08-14T12:00:00.000Z","from":"sender@acme.com","html":"<p>Hello</p>","id":"msg_01j0example","last_event":"queued","message_id":null,"object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}.
attachmentsrequiredarrayAttachment metadata.
content_typerequiredstringAttachment media type. Example: "application/pdf".
filenamerequiredstringOriginal attachment filename. Example: "invoice.pdf".
idrequiredstringAttachment identifier. Example: "msg_01j0example".
sizerequiredintegerAttachment size in bytes. Example: 1234.
bccrequiredarrayBlind-carbon-copy recipients.
ccrequiredarrayCarbon-copy recipients.
channelrequiredstringMessaging channel. Values: "email".
created_atrequiredstring (date-time)Timestamp when Boundry accepted the message. Example: "2026-08-14T12:00:00.000Z".
fromrequiredstringSender email address. Example: "hello@example.com".
htmlrequiredstring | null | nullHTML body, or null when omitted.
Option 1stringHTML email content.
Option 2null | nullOne permitted response shape.
idrequiredstringMessage identifier. Example: "msg_01j0example".
last_eventrequiredstringLatest delivery lifecycle event. Values: "queued", "scheduled", "sending", "sent", "delivered", "delivery_delayed", "bounced", "complained", "opened", "clicked", "failed", "canceled", "received", "stored".
message_idrequiredstring | null | nullProvider message identifier, or null before delivery.
Option 1stringProvider message identifier.
Option 2null | nullOne permitted response shape.
objectrequiredstringResource type discriminator. Values: "email". Example: "email".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
reply_torequiredarrayReply-to addresses.
scheduled_atrequirednull | nullScheduled delivery time; local mode does not schedule emails.
subjectrequiredstringEmail subject. Example: "Welcome to Boundry".
tagsrequiredarrayEmail tags.
namerequiredstringTag name. Example: "campaign".
valuerequiredstringTag value. Example: "welcome".
textrequiredstring | null | nullPlain-text body, or null when omitted.
Option 1stringPlain-text email content.
Option 2null | nullOne permitted response shape.
torequiredarrayRecipient email addresses.
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "email.sent".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"attachments": [],
"bcc": [],
"cc": [],
"created_at": "2026-08-14T12:00:00.000Z",
"from": "sender@acme.com",
"html": "<p>Hello</p>",
"id": "msg_01j0example",
"last_event": "queued",
"message_id": null,
"object": "email",
"project_id": "proj_au_prod",
"reply_to": [],
"scheduled_at": null,
"subject": "Welcome",
"tags": [],
"text": "Hello",
"to": [
"hello@example.com"
]
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "email.sent"
}email.delivered
The recipient server accepted the message.
Channel: email
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"attachments":[],"bcc":[],"cc":[],"channel":"email","created_at":"2026-08-14T12:00:00.000Z","delivered_at":"2026-08-14T12:01:00.000Z","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"delivered","message_id":"<010001@example>","object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"smtp_response":"250 2.0.0 OK","subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}}.
objectrequiredobjectEvent resource. Example: {"attachments":[],"bcc":[],"cc":[],"channel":"email","created_at":"2026-08-14T12:00:00.000Z","delivered_at":"2026-08-14T12:01:00.000Z","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"delivered","message_id":"<010001@example>","object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"smtp_response":"250 2.0.0 OK","subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}.
attachmentsrequiredarrayAttachment metadata.
content_typerequiredstringAttachment media type. Example: "application/pdf".
filenamerequiredstringOriginal attachment filename. Example: "invoice.pdf".
idrequiredstringAttachment identifier. Example: "msg_01j0example".
sizerequiredintegerAttachment size in bytes. Example: 1234.
bccrequiredarrayBlind-carbon-copy recipients.
ccrequiredarrayCarbon-copy recipients.
channelrequiredstringMessaging channel. Values: "email".
created_atrequiredstring (date-time)Timestamp when Boundry accepted the message. Example: "2026-08-14T12:00:00.000Z".
delivered_atrequiredstring (date-time)Timestamp reported by the recipient transport. Example: "2026-08-14T12:00:00.000Z".
fromrequiredstringSender email address. Example: "hello@example.com".
htmlrequiredstring | null | nullHTML body, or null when omitted.
Option 1stringHTML email content.
Option 2null | nullOne permitted response shape.
idrequiredstringMessage identifier. Example: "msg_01j0example".
last_eventrequiredstringLatest delivery lifecycle event. Values: "queued", "scheduled", "sending", "sent", "delivered", "delivery_delayed", "bounced", "complained", "opened", "clicked", "failed", "canceled", "received", "stored".
message_idrequiredstring | null | nullProvider message identifier, or null before delivery.
Option 1stringProvider message identifier.
Option 2null | nullOne permitted response shape.
objectrequiredstringResource type discriminator. Values: "email". Example: "email".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
remote_mta_ipstringRecipient mail-transfer-agent IP address.
reply_torequiredarrayReply-to addresses.
scheduled_atrequirednull | nullScheduled delivery time; local mode does not schedule emails.
smtp_responsestringRecipient SMTP response. Example: "250 2.0.0 OK".
subjectrequiredstringEmail subject. Example: "Welcome to Boundry".
tagsrequiredarrayEmail tags.
namerequiredstringTag name. Example: "campaign".
valuerequiredstringTag value. Example: "welcome".
textrequiredstring | null | nullPlain-text body, or null when omitted.
Option 1stringPlain-text email content.
Option 2null | nullOne permitted response shape.
torequiredarrayRecipient email addresses.
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "email.delivered".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"attachments": [],
"bcc": [],
"cc": [],
"channel": "email",
"created_at": "2026-08-14T12:00:00.000Z",
"delivered_at": "2026-08-14T12:01:00.000Z",
"from": "sender@acme.com",
"html": null,
"id": "msg_01j0example",
"last_event": "delivered",
"message_id": "<010001@example>",
"object": "email",
"project_id": "proj_au_prod",
"reply_to": [],
"scheduled_at": null,
"smtp_response": "250 2.0.0 OK",
"subject": "Welcome",
"tags": [],
"text": "Hello",
"to": [
"hello@example.com"
]
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "email.delivered"
}email.delivery_delayed
A recipient server deferred the message; retries continue.
Channel: email
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"attachments":[],"bcc":[],"cc":[],"channel":"email","created_at":"2026-08-14T12:00:00.000Z","delay_reason":"Mailbox is temporarily unavailable.","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"delivery_delayed","message_id":"<010001@example>","next_retry_at":"2026-08-14T12:06:00.000Z","object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}}.
objectrequiredobjectEvent resource. Example: {"attachments":[],"bcc":[],"cc":[],"channel":"email","created_at":"2026-08-14T12:00:00.000Z","delay_reason":"Mailbox is temporarily unavailable.","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"delivery_delayed","message_id":"<010001@example>","next_retry_at":"2026-08-14T12:06:00.000Z","object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}.
attachmentsrequiredarrayAttachment metadata.
content_typerequiredstringAttachment media type. Example: "application/pdf".
filenamerequiredstringOriginal attachment filename. Example: "invoice.pdf".
idrequiredstringAttachment identifier. Example: "msg_01j0example".
sizerequiredintegerAttachment size in bytes. Example: 1234.
bccrequiredarrayBlind-carbon-copy recipients.
ccrequiredarrayCarbon-copy recipients.
channelrequiredstringMessaging channel. Values: "email".
created_atrequiredstring (date-time)Timestamp when Boundry accepted the message. Example: "2026-08-14T12:00:00.000Z".
delay_reasonrequiredstringRecipient server deferral reason. Example: "Mailbox is temporarily unavailable.".
fromrequiredstringSender email address. Example: "hello@example.com".
htmlrequiredstring | null | nullHTML body, or null when omitted.
Option 1stringHTML email content.
Option 2null | nullOne permitted response shape.
idrequiredstringMessage identifier. Example: "msg_01j0example".
last_eventrequiredstringLatest delivery lifecycle event. Values: "queued", "scheduled", "sending", "sent", "delivered", "delivery_delayed", "bounced", "complained", "opened", "clicked", "failed", "canceled", "received", "stored".
message_idrequiredstring | null | nullProvider message identifier, or null before delivery.
Option 1stringProvider message identifier.
Option 2null | nullOne permitted response shape.
next_retry_atrequiredstring (date-time)Next planned delivery attempt. Example: "2026-08-14T12:00:00.000Z".
objectrequiredstringResource type discriminator. Values: "email". Example: "email".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
reply_torequiredarrayReply-to addresses.
scheduled_atrequirednull | nullScheduled delivery time; local mode does not schedule emails.
subjectrequiredstringEmail subject. Example: "Welcome to Boundry".
tagsrequiredarrayEmail tags.
namerequiredstringTag name. Example: "campaign".
valuerequiredstringTag value. Example: "welcome".
textrequiredstring | null | nullPlain-text body, or null when omitted.
Option 1stringPlain-text email content.
Option 2null | nullOne permitted response shape.
torequiredarrayRecipient email addresses.
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "email.delivery_delayed".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"attachments": [],
"bcc": [],
"cc": [],
"channel": "email",
"created_at": "2026-08-14T12:00:00.000Z",
"delay_reason": "Mailbox is temporarily unavailable.",
"from": "sender@acme.com",
"html": null,
"id": "msg_01j0example",
"last_event": "delivery_delayed",
"message_id": "<010001@example>",
"next_retry_at": "2026-08-14T12:06:00.000Z",
"object": "email",
"project_id": "proj_au_prod",
"reply_to": [],
"scheduled_at": null,
"subject": "Welcome",
"tags": [],
"text": "Hello",
"to": [
"hello@example.com"
]
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "email.delivery_delayed"
}email.bounced
Permanently rejected.
Channel: email
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"attachments":[],"bcc":[],"bounce_subtype":"NoEmail","bounce_type":"Permanent","cc":[],"channel":"email","created_at":"2026-08-14T12:00:00.000Z","diagnostic_code":"smtp; 550 5.1.1 user unknown","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"bounced","message_id":"<010001@example>","object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}}.
objectrequiredobjectEvent resource. Example: {"attachments":[],"bcc":[],"bounce_subtype":"NoEmail","bounce_type":"Permanent","cc":[],"channel":"email","created_at":"2026-08-14T12:00:00.000Z","diagnostic_code":"smtp; 550 5.1.1 user unknown","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"bounced","message_id":"<010001@example>","object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}.
attachmentsrequiredarrayAttachment metadata.
content_typerequiredstringAttachment media type. Example: "application/pdf".
filenamerequiredstringOriginal attachment filename. Example: "invoice.pdf".
idrequiredstringAttachment identifier. Example: "msg_01j0example".
sizerequiredintegerAttachment size in bytes. Example: 1234.
bccrequiredarrayBlind-carbon-copy recipients.
bounce_subtyperequiredstringSES bounce subtype. Values: "Undetermined", "General", "NoEmail", "Suppressed", "OnAccountSuppressionList", "MailboxFull", "MessageTooLarge", "ContentRejected", "AttachmentRejected".
bounce_typerequiredstringSES bounce type. Values: "Undetermined", "Transient", "Permanent".
ccrequiredarrayCarbon-copy recipients.
channelrequiredstringMessaging channel. Values: "email".
created_atrequiredstring (date-time)Timestamp when Boundry accepted the message. Example: "2026-08-14T12:00:00.000Z".
diagnostic_coderequiredstring | null | nullRecipient diagnostic code, or null when SES did not report one.
Option 1stringRecipient diagnostic code reported by SES.
Option 2null | nullOne permitted response shape.
fromrequiredstringSender email address. Example: "hello@example.com".
htmlrequiredstring | null | nullHTML body, or null when omitted.
Option 1stringHTML email content.
Option 2null | nullOne permitted response shape.
idrequiredstringMessage identifier. Example: "msg_01j0example".
last_eventrequiredstringLatest delivery lifecycle event. Values: "queued", "scheduled", "sending", "sent", "delivered", "delivery_delayed", "bounced", "complained", "opened", "clicked", "failed", "canceled", "received", "stored".
message_idrequiredstring | null | nullProvider message identifier, or null before delivery.
Option 1stringProvider message identifier.
Option 2null | nullOne permitted response shape.
objectrequiredstringResource type discriminator. Values: "email". Example: "email".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
reply_torequiredarrayReply-to addresses.
scheduled_atrequirednull | nullScheduled delivery time; local mode does not schedule emails.
subjectrequiredstringEmail subject. Example: "Welcome to Boundry".
tagsrequiredarrayEmail tags.
namerequiredstringTag name. Example: "campaign".
valuerequiredstringTag value. Example: "welcome".
textrequiredstring | null | nullPlain-text body, or null when omitted.
Option 1stringPlain-text email content.
Option 2null | nullOne permitted response shape.
torequiredarrayRecipient email addresses.
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "email.bounced".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"attachments": [],
"bcc": [],
"bounce_subtype": "NoEmail",
"bounce_type": "Permanent",
"cc": [],
"channel": "email",
"created_at": "2026-08-14T12:00:00.000Z",
"diagnostic_code": "smtp; 550 5.1.1 user unknown",
"from": "sender@acme.com",
"html": null,
"id": "msg_01j0example",
"last_event": "bounced",
"message_id": "<010001@example>",
"object": "email",
"project_id": "proj_au_prod",
"reply_to": [],
"scheduled_at": null,
"subject": "Welcome",
"tags": [],
"text": "Hello",
"to": [
"hello@example.com"
]
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "email.bounced"
}email.complained
The recipient marked the message as spam.
Channel: email
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"attachments":[],"bcc":[],"cc":[],"channel":"email","complaint_feedback_type":"abuse","created_at":"2026-08-14T12:00:00.000Z","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"complained","message_id":"<010001@example>","object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}}.
objectrequiredobjectEvent resource. Example: {"attachments":[],"bcc":[],"cc":[],"channel":"email","complaint_feedback_type":"abuse","created_at":"2026-08-14T12:00:00.000Z","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"complained","message_id":"<010001@example>","object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}.
attachmentsrequiredarrayAttachment metadata.
content_typerequiredstringAttachment media type. Example: "application/pdf".
filenamerequiredstringOriginal attachment filename. Example: "invoice.pdf".
idrequiredstringAttachment identifier. Example: "msg_01j0example".
sizerequiredintegerAttachment size in bytes. Example: 1234.
bccrequiredarrayBlind-carbon-copy recipients.
ccrequiredarrayCarbon-copy recipients.
channelrequiredstringMessaging channel. Values: "email".
complaint_feedback_typerequiredstring | null | nullSES complaint feedback type, or null when absent.
Option 1stringOne permitted response shape.
Option 2null | nullOne permitted response shape.
created_atrequiredstring (date-time)Timestamp when Boundry accepted the message. Example: "2026-08-14T12:00:00.000Z".
fromrequiredstringSender email address. Example: "hello@example.com".
htmlrequiredstring | null | nullHTML body, or null when omitted.
Option 1stringHTML email content.
Option 2null | nullOne permitted response shape.
idrequiredstringMessage identifier. Example: "msg_01j0example".
last_eventrequiredstringLatest delivery lifecycle event. Values: "queued", "scheduled", "sending", "sent", "delivered", "delivery_delayed", "bounced", "complained", "opened", "clicked", "failed", "canceled", "received", "stored".
message_idrequiredstring | null | nullProvider message identifier, or null before delivery.
Option 1stringProvider message identifier.
Option 2null | nullOne permitted response shape.
objectrequiredstringResource type discriminator. Values: "email". Example: "email".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
reply_torequiredarrayReply-to addresses.
scheduled_atrequirednull | nullScheduled delivery time; local mode does not schedule emails.
subjectrequiredstringEmail subject. Example: "Welcome to Boundry".
tagsrequiredarrayEmail tags.
namerequiredstringTag name. Example: "campaign".
valuerequiredstringTag value. Example: "welcome".
textrequiredstring | null | nullPlain-text body, or null when omitted.
Option 1stringPlain-text email content.
Option 2null | nullOne permitted response shape.
torequiredarrayRecipient email addresses.
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "email.complained".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"attachments": [],
"bcc": [],
"cc": [],
"channel": "email",
"complaint_feedback_type": "abuse",
"created_at": "2026-08-14T12:00:00.000Z",
"from": "sender@acme.com",
"html": null,
"id": "msg_01j0example",
"last_event": "complained",
"message_id": "<010001@example>",
"object": "email",
"project_id": "proj_au_prod",
"reply_to": [],
"scheduled_at": null,
"subject": "Welcome",
"tags": [],
"text": "Hello",
"to": [
"hello@example.com"
]
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "email.complained"
}email.opened
A tracking pixel was loaded.
Channel: email
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"attachments":[],"bcc":[],"cc":[],"channel":"email","created_at":"2026-08-14T12:00:00.000Z","engaged_at":"2026-08-14T12:01:00.000Z","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"opened","message_id":"<010001@example>","object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}}.
objectrequiredobjectEvent resource. Example: {"attachments":[],"bcc":[],"cc":[],"channel":"email","created_at":"2026-08-14T12:00:00.000Z","engaged_at":"2026-08-14T12:01:00.000Z","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"opened","message_id":"<010001@example>","object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}.
attachmentsrequiredarrayAttachment metadata.
content_typerequiredstringAttachment media type. Example: "application/pdf".
filenamerequiredstringOriginal attachment filename. Example: "invoice.pdf".
idrequiredstringAttachment identifier. Example: "msg_01j0example".
sizerequiredintegerAttachment size in bytes. Example: 1234.
bccrequiredarrayBlind-carbon-copy recipients.
ccrequiredarrayCarbon-copy recipients.
channelrequiredstringMessaging channel. Values: "email".
created_atrequiredstring (date-time)Timestamp when Boundry accepted the message. Example: "2026-08-14T12:00:00.000Z".
engaged_atrequiredstring (date-time)Timestamp when the tracking pixel was loaded. Example: "2026-08-14T12:00:00.000Z".
fromrequiredstringSender email address. Example: "hello@example.com".
htmlrequiredstring | null | nullHTML body, or null when omitted.
Option 1stringHTML email content.
Option 2null | nullOne permitted response shape.
idrequiredstringMessage identifier. Example: "msg_01j0example".
last_eventrequiredstringLatest delivery lifecycle event. Values: "queued", "scheduled", "sending", "sent", "delivered", "delivery_delayed", "bounced", "complained", "opened", "clicked", "failed", "canceled", "received", "stored".
message_idrequiredstring | null | nullProvider message identifier, or null before delivery.
Option 1stringProvider message identifier.
Option 2null | nullOne permitted response shape.
objectrequiredstringResource type discriminator. Values: "email". Example: "email".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
reply_torequiredarrayReply-to addresses.
scheduled_atrequirednull | nullScheduled delivery time; local mode does not schedule emails.
subjectrequiredstringEmail subject. Example: "Welcome to Boundry".
tagsrequiredarrayEmail tags.
namerequiredstringTag name. Example: "campaign".
valuerequiredstringTag value. Example: "welcome".
textrequiredstring | null | nullPlain-text body, or null when omitted.
Option 1stringPlain-text email content.
Option 2null | nullOne permitted response shape.
torequiredarrayRecipient email addresses.
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "email.opened".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"attachments": [],
"bcc": [],
"cc": [],
"channel": "email",
"created_at": "2026-08-14T12:00:00.000Z",
"engaged_at": "2026-08-14T12:01:00.000Z",
"from": "sender@acme.com",
"html": null,
"id": "msg_01j0example",
"last_event": "opened",
"message_id": "<010001@example>",
"object": "email",
"project_id": "proj_au_prod",
"reply_to": [],
"scheduled_at": null,
"subject": "Welcome",
"tags": [],
"text": "Hello",
"to": [
"hello@example.com"
]
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "email.opened"
}email.clicked
A tracked link was followed.
Channel: email
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"attachments":[],"bcc":[],"cc":[],"channel":"email","created_at":"2026-08-14T12:00:00.000Z","engaged_at":"2026-08-14T12:01:00.000Z","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"clicked","link":"https://acme.com/welcome","message_id":"<010001@example>","object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"],"user_agent":"Mozilla/5.0"}}.
objectrequiredobjectEvent resource. Example: {"attachments":[],"bcc":[],"cc":[],"channel":"email","created_at":"2026-08-14T12:00:00.000Z","engaged_at":"2026-08-14T12:01:00.000Z","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"clicked","link":"https://acme.com/welcome","message_id":"<010001@example>","object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"],"user_agent":"Mozilla/5.0"}.
attachmentsrequiredarrayAttachment metadata.
content_typerequiredstringAttachment media type. Example: "application/pdf".
filenamerequiredstringOriginal attachment filename. Example: "invoice.pdf".
idrequiredstringAttachment identifier. Example: "msg_01j0example".
sizerequiredintegerAttachment size in bytes. Example: 1234.
bccrequiredarrayBlind-carbon-copy recipients.
ccrequiredarrayCarbon-copy recipients.
channelrequiredstringMessaging channel. Values: "email".
created_atrequiredstring (date-time)Timestamp when Boundry accepted the message. Example: "2026-08-14T12:00:00.000Z".
engaged_atrequiredstring (date-time)Timestamp when the tracking pixel was loaded. Example: "2026-08-14T12:00:00.000Z".
fromrequiredstringSender email address. Example: "hello@example.com".
htmlrequiredstring | null | nullHTML body, or null when omitted.
Option 1stringHTML email content.
Option 2null | nullOne permitted response shape.
idrequiredstringMessage identifier. Example: "msg_01j0example".
last_eventrequiredstringLatest delivery lifecycle event. Values: "queued", "scheduled", "sending", "sent", "delivered", "delivery_delayed", "bounced", "complained", "opened", "clicked", "failed", "canceled", "received", "stored".
linkrequiredstring (uri)Tracked link followed by the recipient.
message_idrequiredstring | null | nullProvider message identifier, or null before delivery.
Option 1stringProvider message identifier.
Option 2null | nullOne permitted response shape.
objectrequiredstringResource type discriminator. Values: "email". Example: "email".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
reply_torequiredarrayReply-to addresses.
scheduled_atrequirednull | nullScheduled delivery time; local mode does not schedule emails.
subjectrequiredstringEmail subject. Example: "Welcome to Boundry".
tagsrequiredarrayEmail tags.
namerequiredstringTag name. Example: "campaign".
valuerequiredstringTag value. Example: "welcome".
textrequiredstring | null | nullPlain-text body, or null when omitted.
Option 1stringPlain-text email content.
Option 2null | nullOne permitted response shape.
torequiredarrayRecipient email addresses.
user_agentrequiredstring | null | nullRecipient user-agent, or null when unavailable.
Option 1stringRecipient user-agent string.
Option 2null | nullOne permitted response shape.
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "email.clicked".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"attachments": [],
"bcc": [],
"cc": [],
"channel": "email",
"created_at": "2026-08-14T12:00:00.000Z",
"engaged_at": "2026-08-14T12:01:00.000Z",
"from": "sender@acme.com",
"html": null,
"id": "msg_01j0example",
"last_event": "clicked",
"link": "https://acme.com/welcome",
"message_id": "<010001@example>",
"object": "email",
"project_id": "proj_au_prod",
"reply_to": [],
"scheduled_at": null,
"subject": "Welcome",
"tags": [],
"text": "Hello",
"to": [
"hello@example.com"
],
"user_agent": "Mozilla/5.0"
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "email.clicked"
}email.failed
Boundry could not send the message.
Channel: email
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"attachments":[],"bcc":[],"cc":[],"channel":"email","created_at":"2026-08-14T12:00:00.000Z","failure_reason":"Sender identity is not verified.","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"failed","message_id":null,"object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}}.
objectrequiredobjectEvent resource. Example: {"attachments":[],"bcc":[],"cc":[],"channel":"email","created_at":"2026-08-14T12:00:00.000Z","failure_reason":"Sender identity is not verified.","from":"sender@acme.com","html":null,"id":"msg_01j0example","last_event":"failed","message_id":null,"object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}.
attachmentsrequiredarrayAttachment metadata.
content_typerequiredstringAttachment media type. Example: "application/pdf".
filenamerequiredstringOriginal attachment filename. Example: "invoice.pdf".
idrequiredstringAttachment identifier. Example: "msg_01j0example".
sizerequiredintegerAttachment size in bytes. Example: 1234.
bccrequiredarrayBlind-carbon-copy recipients.
ccrequiredarrayCarbon-copy recipients.
channelrequiredstringMessaging channel. Values: "email".
created_atrequiredstring (date-time)Timestamp when Boundry accepted the message. Example: "2026-08-14T12:00:00.000Z".
failure_reasonrequiredstringReason Boundry could not send the email. Example: "Sender identity is not verified.".
fromrequiredstringSender email address. Example: "hello@example.com".
htmlrequiredstring | null | nullHTML body, or null when omitted.
Option 1stringHTML email content.
Option 2null | nullOne permitted response shape.
idrequiredstringMessage identifier. Example: "msg_01j0example".
last_eventrequiredstringLatest delivery lifecycle event. Values: "queued", "scheduled", "sending", "sent", "delivered", "delivery_delayed", "bounced", "complained", "opened", "clicked", "failed", "canceled", "received", "stored".
message_idrequiredstring | null | nullProvider message identifier, or null before delivery.
Option 1stringProvider message identifier.
Option 2null | nullOne permitted response shape.
objectrequiredstringResource type discriminator. Values: "email". Example: "email".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
reply_torequiredarrayReply-to addresses.
scheduled_atrequirednull | nullScheduled delivery time; local mode does not schedule emails.
subjectrequiredstringEmail subject. Example: "Welcome to Boundry".
tagsrequiredarrayEmail tags.
namerequiredstringTag name. Example: "campaign".
valuerequiredstringTag value. Example: "welcome".
textrequiredstring | null | nullPlain-text body, or null when omitted.
Option 1stringPlain-text email content.
Option 2null | nullOne permitted response shape.
torequiredarrayRecipient email addresses.
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "email.failed".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"attachments": [],
"bcc": [],
"cc": [],
"channel": "email",
"created_at": "2026-08-14T12:00:00.000Z",
"failure_reason": "Sender identity is not verified.",
"from": "sender@acme.com",
"html": null,
"id": "msg_01j0example",
"last_event": "failed",
"message_id": null,
"object": "email",
"project_id": "proj_au_prod",
"reply_to": [],
"scheduled_at": null,
"subject": "Welcome",
"tags": [],
"text": "Hello",
"to": [
"hello@example.com"
]
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "email.failed"
}email.canceled
A scheduled email was cancelled before sending.
Channel: email
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"attachments":[],"bcc":[],"cc":[],"created_at":"2026-08-14T12:00:00.000Z","from":"sender@acme.com","html":"<p>Hello</p>","id":"msg_01j0example","last_event":"queued","message_id":null,"object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}}.
objectrequiredobjectEvent resource. Example: {"attachments":[],"bcc":[],"cc":[],"created_at":"2026-08-14T12:00:00.000Z","from":"sender@acme.com","html":"<p>Hello</p>","id":"msg_01j0example","last_event":"queued","message_id":null,"object":"email","project_id":"proj_au_prod","reply_to":[],"scheduled_at":null,"subject":"Welcome","tags":[],"text":"Hello","to":["hello@example.com"]}.
attachmentsrequiredarrayAttachment metadata.
content_typerequiredstringAttachment media type. Example: "application/pdf".
filenamerequiredstringOriginal attachment filename. Example: "invoice.pdf".
idrequiredstringAttachment identifier. Example: "msg_01j0example".
sizerequiredintegerAttachment size in bytes. Example: 1234.
bccrequiredarrayBlind-carbon-copy recipients.
ccrequiredarrayCarbon-copy recipients.
channelrequiredstringMessaging channel. Values: "email".
created_atrequiredstring (date-time)Timestamp when Boundry accepted the message. Example: "2026-08-14T12:00:00.000Z".
fromrequiredstringSender email address. Example: "hello@example.com".
htmlrequiredstring | null | nullHTML body, or null when omitted.
Option 1stringHTML email content.
Option 2null | nullOne permitted response shape.
idrequiredstringMessage identifier. Example: "msg_01j0example".
last_eventrequiredstringLatest delivery lifecycle event. Values: "queued", "scheduled", "sending", "sent", "delivered", "delivery_delayed", "bounced", "complained", "opened", "clicked", "failed", "canceled", "received", "stored".
message_idrequiredstring | null | nullProvider message identifier, or null before delivery.
Option 1stringProvider message identifier.
Option 2null | nullOne permitted response shape.
objectrequiredstringResource type discriminator. Values: "email". Example: "email".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
reply_torequiredarrayReply-to addresses.
scheduled_atrequirednull | nullScheduled delivery time; local mode does not schedule emails.
subjectrequiredstringEmail subject. Example: "Welcome to Boundry".
tagsrequiredarrayEmail tags.
namerequiredstringTag name. Example: "campaign".
valuerequiredstringTag value. Example: "welcome".
textrequiredstring | null | nullPlain-text body, or null when omitted.
Option 1stringPlain-text email content.
Option 2null | nullOne permitted response shape.
torequiredarrayRecipient email addresses.
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "email.canceled".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"attachments": [],
"bcc": [],
"cc": [],
"created_at": "2026-08-14T12:00:00.000Z",
"from": "sender@acme.com",
"html": "<p>Hello</p>",
"id": "msg_01j0example",
"last_event": "queued",
"message_id": null,
"object": "email",
"project_id": "proj_au_prod",
"reply_to": [],
"scheduled_at": null,
"subject": "Welcome",
"tags": [],
"text": "Hello",
"to": [
"hello@example.com"
]
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "email.canceled"
}email.received
Inbound mail was accepted for a receiving domain.
Channel: email
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"attachments":[],"bcc":[],"cc":[],"created_at":"2026-08-14T12:00:00.000Z","from":"sender@example.com","html":null,"id":"rcv_01j0example","last_event":"received","object":"email","project_id":"proj_au_prod","reply_to":[],"subject":"Hello","tags":[],"text":"Hello","to":["inbox@acme.com"]}}.
objectrequiredobjectEvent resource. Example: {"attachments":[],"bcc":[],"cc":[],"created_at":"2026-08-14T12:00:00.000Z","from":"sender@example.com","html":null,"id":"rcv_01j0example","last_event":"received","object":"email","project_id":"proj_au_prod","reply_to":[],"subject":"Hello","tags":[],"text":"Hello","to":["inbox@acme.com"]}.
attachmentsrequiredarrayInbound attachment metadata; unsupported in local mode.
content_typerequiredstringAttachment media type. Example: "application/pdf".
filenamerequiredstringOriginal attachment filename. Example: "invoice.pdf".
idrequiredstringAttachment identifier. Example: "msg_01j0example".
sizerequiredintegerAttachment size in bytes. Example: 1234.
bccrequiredarrayBlind-carbon-copy recipients.
ccrequiredarrayCarbon-copy recipients.
channelrequiredstringMessaging channel. Values: "email".
created_atrequiredstring (date-time)Timestamp when Boundry accepted the message. Example: "2026-08-14T12:00:00.000Z".
fromrequiredstringSender email address. Example: "hello@example.com".
htmlrequiredstring | null | nullHTML body, or null when omitted.
Option 1stringHTML email content.
Option 2null | nullOne permitted response shape.
idrequiredstringMessage identifier. Example: "msg_01j0example".
last_eventrequiredstringInbound lifecycle event. Values: "received", "stored".
objectrequiredstringResource type discriminator. Values: "email".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
reply_torequiredarrayReply-to addresses.
subjectrequiredstringEmail subject.
tagsrequiredarrayMessage tags.
namerequiredstringTag name. Example: "campaign".
valuerequiredstringTag value. Example: "welcome".
textrequiredstring | null | nullPlain-text body, or null when omitted.
Option 1stringPlain-text email content.
Option 2null | nullOne permitted response shape.
torequiredarrayReceiving addresses.
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "email.received".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"attachments": [],
"bcc": [],
"cc": [],
"created_at": "2026-08-14T12:00:00.000Z",
"from": "sender@example.com",
"html": null,
"id": "rcv_01j0example",
"last_event": "received",
"object": "email",
"project_id": "proj_au_prod",
"reply_to": [],
"subject": "Hello",
"tags": [],
"text": "Hello",
"to": [
"inbox@acme.com"
]
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "email.received"
}email.stored
Inbound mail was persisted in the regional data plane.
Channel: email
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"attachments":[],"bcc":[],"cc":[],"created_at":"2026-08-14T12:00:00.000Z","from":"sender@example.com","html":null,"id":"rcv_01j0example","last_event":"received","object":"email","project_id":"proj_au_prod","reply_to":[],"subject":"Hello","tags":[],"text":"Hello","to":["inbox@acme.com"]}}.
objectrequiredobjectEvent resource. Example: {"attachments":[],"bcc":[],"cc":[],"created_at":"2026-08-14T12:00:00.000Z","from":"sender@example.com","html":null,"id":"rcv_01j0example","last_event":"received","object":"email","project_id":"proj_au_prod","reply_to":[],"subject":"Hello","tags":[],"text":"Hello","to":["inbox@acme.com"]}.
attachmentsrequiredarrayInbound attachment metadata; unsupported in local mode.
content_typerequiredstringAttachment media type. Example: "application/pdf".
filenamerequiredstringOriginal attachment filename. Example: "invoice.pdf".
idrequiredstringAttachment identifier. Example: "msg_01j0example".
sizerequiredintegerAttachment size in bytes. Example: 1234.
bccrequiredarrayBlind-carbon-copy recipients.
ccrequiredarrayCarbon-copy recipients.
channelrequiredstringMessaging channel. Values: "email".
created_atrequiredstring (date-time)Timestamp when Boundry accepted the message. Example: "2026-08-14T12:00:00.000Z".
fromrequiredstringSender email address. Example: "hello@example.com".
htmlrequiredstring | null | nullHTML body, or null when omitted.
Option 1stringHTML email content.
Option 2null | nullOne permitted response shape.
idrequiredstringMessage identifier. Example: "msg_01j0example".
last_eventrequiredstringInbound lifecycle event. Values: "received", "stored".
objectrequiredstringResource type discriminator. Values: "email".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
reply_torequiredarrayReply-to addresses.
subjectrequiredstringEmail subject.
tagsrequiredarrayMessage tags.
namerequiredstringTag name. Example: "campaign".
valuerequiredstringTag value. Example: "welcome".
textrequiredstring | null | nullPlain-text body, or null when omitted.
Option 1stringPlain-text email content.
Option 2null | nullOne permitted response shape.
torequiredarrayReceiving addresses.
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "email.stored".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"attachments": [],
"bcc": [],
"cc": [],
"created_at": "2026-08-14T12:00:00.000Z",
"from": "sender@example.com",
"html": null,
"id": "rcv_01j0example",
"last_event": "received",
"object": "email",
"project_id": "proj_au_prod",
"reply_to": [],
"subject": "Hello",
"tags": [],
"text": "Hello",
"to": [
"inbox@acme.com"
]
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "email.stored"
}domain.created
A domain was attached to the project.
Channel: domain
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"capabilities":{"receiving":"disabled","sending":"enabled"},"click_tracking":false,"created_at":"2026-08-14T12:00:00.000Z","id":"dom_01j0example","name":"acme.com","object":"domain","open_tracking":false,"records":[],"region":"ap-southeast-2","status":"not_started","tracking_subdomain":"links"}}.
objectrequiredobjectEvent resource. Example: {"capabilities":{"receiving":"disabled","sending":"enabled"},"click_tracking":false,"created_at":"2026-08-14T12:00:00.000Z","id":"dom_01j0example","name":"acme.com","object":"domain","open_tracking":false,"records":[],"region":"ap-southeast-2","status":"not_started","tracking_subdomain":"links"}.
capabilitiesrequiredobjectDomain capabilities.
receivingrequiredstringReceiving capability. Values: "enabled", "disabled".
sendingrequiredstringSending capability. Values: "enabled", "disabled".
click_trackingrequiredbooleanWhether click tracking is enabled.
created_atrequiredstring (date-time)Timestamp when the domain was created. Example: "2026-08-14T12:00:00.000Z".
idrequiredstringDomain identifier. Example: "msg_01j0example".
namerequiredstringRegistered domain or subdomain. Example: "acme.com".
objectrequiredstringResource type discriminator. Values: "domain".
open_trackingrequiredbooleanWhether open tracking is enabled.
recordsrequiredarrayRequired DNS records.
namerequiredstringDNS record name. Example: "acme.com".
priorityintegerMX priority when applicable.
recordrequiredstringDNS record purpose. Values: "DKIM", "SPF", "MX", "Tracking".
statusrequiredstringVerification status. Values: "verified", "not_started".
ttlrequiredstringDNS time-to-live value. Example: "Auto".
typerequiredstringDNS record type. Values: "TXT", "MX", "CNAME".
valuerequiredstringDNS record value.
regionrequiredstringOwning Boundry region. Values: "ap-southeast-2".
statusrequiredstringDomain verification status. Values: "verified", "not_started".
tracking_subdomainrequiredstringTracking subdomain label. Example: "links".
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "domain.created".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"capabilities": {
"receiving": "disabled",
"sending": "enabled"
},
"click_tracking": false,
"created_at": "2026-08-14T12:00:00.000Z",
"id": "dom_01j0example",
"name": "acme.com",
"object": "domain",
"open_tracking": false,
"records": [],
"region": "ap-southeast-2",
"status": "not_started",
"tracking_subdomain": "links"
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "domain.created"
}domain.verified
All required DNS records were observed.
Channel: domain
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"capabilities":{"receiving":"disabled","sending":"enabled"},"click_tracking":false,"created_at":"2026-08-14T12:00:00.000Z","id":"dom_01j0example","name":"acme.com","object":"domain","open_tracking":false,"records":[],"region":"ap-southeast-2","status":"not_started","tracking_subdomain":"links"}}.
objectrequiredobjectEvent resource. Example: {"capabilities":{"receiving":"disabled","sending":"enabled"},"click_tracking":false,"created_at":"2026-08-14T12:00:00.000Z","id":"dom_01j0example","name":"acme.com","object":"domain","open_tracking":false,"records":[],"region":"ap-southeast-2","status":"not_started","tracking_subdomain":"links"}.
capabilitiesrequiredobjectDomain capabilities.
receivingrequiredstringReceiving capability. Values: "enabled", "disabled".
sendingrequiredstringSending capability. Values: "enabled", "disabled".
click_trackingrequiredbooleanWhether click tracking is enabled.
created_atrequiredstring (date-time)Timestamp when the domain was created. Example: "2026-08-14T12:00:00.000Z".
idrequiredstringDomain identifier. Example: "msg_01j0example".
namerequiredstringRegistered domain or subdomain. Example: "acme.com".
objectrequiredstringResource type discriminator. Values: "domain".
open_trackingrequiredbooleanWhether open tracking is enabled.
recordsrequiredarrayRequired DNS records.
namerequiredstringDNS record name. Example: "acme.com".
priorityintegerMX priority when applicable.
recordrequiredstringDNS record purpose. Values: "DKIM", "SPF", "MX", "Tracking".
statusrequiredstringVerification status. Values: "verified", "not_started".
ttlrequiredstringDNS time-to-live value. Example: "Auto".
typerequiredstringDNS record type. Values: "TXT", "MX", "CNAME".
valuerequiredstringDNS record value.
regionrequiredstringOwning Boundry region. Values: "ap-southeast-2".
statusrequiredstringDomain verification status. Values: "verified", "not_started".
tracking_subdomainrequiredstringTracking subdomain label. Example: "links".
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "domain.verified".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"capabilities": {
"receiving": "disabled",
"sending": "enabled"
},
"click_tracking": false,
"created_at": "2026-08-14T12:00:00.000Z",
"id": "dom_01j0example",
"name": "acme.com",
"object": "domain",
"open_tracking": false,
"records": [],
"region": "ap-southeast-2",
"status": "not_started",
"tracking_subdomain": "links"
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "domain.verified"
}domain.verification_failed
DNS verification did not pass.
Channel: domain
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"capabilities":{"receiving":"disabled","sending":"enabled"},"click_tracking":false,"created_at":"2026-08-14T12:00:00.000Z","id":"dom_01j0example","name":"acme.com","object":"domain","open_tracking":false,"records":[],"region":"ap-southeast-2","status":"not_started","tracking_subdomain":"links","verification_error":"Required DKIM record was not found."}}.
objectrequiredobjectEvent resource. Example: {"capabilities":{"receiving":"disabled","sending":"enabled"},"click_tracking":false,"created_at":"2026-08-14T12:00:00.000Z","id":"dom_01j0example","name":"acme.com","object":"domain","open_tracking":false,"records":[],"region":"ap-southeast-2","status":"not_started","tracking_subdomain":"links","verification_error":"Required DKIM record was not found."}.
capabilitiesrequiredobjectDomain capabilities.
receivingrequiredstringReceiving capability. Values: "enabled", "disabled".
sendingrequiredstringSending capability. Values: "enabled", "disabled".
click_trackingrequiredbooleanWhether click tracking is enabled.
created_atrequiredstring (date-time)Timestamp when the domain was created. Example: "2026-08-14T12:00:00.000Z".
idrequiredstringDomain identifier. Example: "msg_01j0example".
namerequiredstringRegistered domain or subdomain. Example: "acme.com".
objectrequiredstringResource type discriminator. Values: "domain".
open_trackingrequiredbooleanWhether open tracking is enabled.
recordsrequiredarrayRequired DNS records.
namerequiredstringDNS record name. Example: "acme.com".
priorityintegerMX priority when applicable.
recordrequiredstringDNS record purpose. Values: "DKIM", "SPF", "MX", "Tracking".
statusrequiredstringVerification status. Values: "verified", "not_started".
ttlrequiredstringDNS time-to-live value. Example: "Auto".
typerequiredstringDNS record type. Values: "TXT", "MX", "CNAME".
valuerequiredstringDNS record value.
regionrequiredstringOwning Boundry region. Values: "ap-southeast-2".
statusrequiredstringDomain verification status. Values: "verified", "not_started".
tracking_subdomainrequiredstringTracking subdomain label. Example: "links".
verification_errorrequiredstringDNS verification failure reason. Example: "Required DKIM record was not found.".
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "domain.verification_failed".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"capabilities": {
"receiving": "disabled",
"sending": "enabled"
},
"click_tracking": false,
"created_at": "2026-08-14T12:00:00.000Z",
"id": "dom_01j0example",
"name": "acme.com",
"object": "domain",
"open_tracking": false,
"records": [],
"region": "ap-southeast-2",
"status": "not_started",
"tracking_subdomain": "links",
"verification_error": "Required DKIM record was not found."
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "domain.verification_failed"
}domain.updated
Domain capabilities or tracking changed.
Channel: domain
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"capabilities":{"receiving":"disabled","sending":"enabled"},"click_tracking":false,"created_at":"2026-08-14T12:00:00.000Z","id":"dom_01j0example","name":"acme.com","object":"domain","open_tracking":false,"records":[],"region":"ap-southeast-2","status":"not_started","tracking_subdomain":"links"}}.
objectrequiredobjectEvent resource. Example: {"capabilities":{"receiving":"disabled","sending":"enabled"},"click_tracking":false,"created_at":"2026-08-14T12:00:00.000Z","id":"dom_01j0example","name":"acme.com","object":"domain","open_tracking":false,"records":[],"region":"ap-southeast-2","status":"not_started","tracking_subdomain":"links"}.
capabilitiesrequiredobjectDomain capabilities.
receivingrequiredstringReceiving capability. Values: "enabled", "disabled".
sendingrequiredstringSending capability. Values: "enabled", "disabled".
click_trackingrequiredbooleanWhether click tracking is enabled.
created_atrequiredstring (date-time)Timestamp when the domain was created. Example: "2026-08-14T12:00:00.000Z".
idrequiredstringDomain identifier. Example: "msg_01j0example".
namerequiredstringRegistered domain or subdomain. Example: "acme.com".
objectrequiredstringResource type discriminator. Values: "domain".
open_trackingrequiredbooleanWhether open tracking is enabled.
recordsrequiredarrayRequired DNS records.
namerequiredstringDNS record name. Example: "acme.com".
priorityintegerMX priority when applicable.
recordrequiredstringDNS record purpose. Values: "DKIM", "SPF", "MX", "Tracking".
statusrequiredstringVerification status. Values: "verified", "not_started".
ttlrequiredstringDNS time-to-live value. Example: "Auto".
typerequiredstringDNS record type. Values: "TXT", "MX", "CNAME".
valuerequiredstringDNS record value.
regionrequiredstringOwning Boundry region. Values: "ap-southeast-2".
statusrequiredstringDomain verification status. Values: "verified", "not_started".
tracking_subdomainrequiredstringTracking subdomain label. Example: "links".
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "domain.updated".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"capabilities": {
"receiving": "disabled",
"sending": "enabled"
},
"click_tracking": false,
"created_at": "2026-08-14T12:00:00.000Z",
"id": "dom_01j0example",
"name": "acme.com",
"object": "domain",
"open_tracking": false,
"records": [],
"region": "ap-southeast-2",
"status": "not_started",
"tracking_subdomain": "links"
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "domain.updated"
}domain.deleted
A domain was detached from the project.
Channel: domain
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"deleted":true,"id":"dom_01j0example","object":"domain"}}.
objectrequiredobjectEvent resource. Example: {"deleted":true,"id":"dom_01j0example","object":"domain"}.
deletedrequiredbooleanDeletion marker. Values: true.
idrequiredstringDeleted domain identifier. Example: "msg_01j0example".
objectrequiredstringResource type discriminator. Values: "domain".
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "domain.deleted".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"deleted": true,
"id": "dom_01j0example",
"object": "domain"
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "domain.deleted"
}api_key.created
A project API key was issued.
Channel: api_key
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"created_at":"2026-08-14T12:00:00.000Z","id":"key_01j0example","name":"Production app"}}.
objectrequiredobjectEvent resource. Example: {"created_at":"2026-08-14T12:00:00.000Z","id":"key_01j0example","name":"Production app"}.
created_atrequiredstring (date-time)Timestamp when the key was created. Example: "2026-08-14T12:00:00.000Z".
idrequiredstringAPI key identifier. Example: "msg_01j0example".
namerequiredstringHuman-readable API key name. Example: "Production app".
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "api_key.created".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"created_at": "2026-08-14T12:00:00.000Z",
"id": "key_01j0example",
"name": "Production app"
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "api_key.created"
}api_key.revoked
A project API key was revoked.
Channel: api_key
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"created_at":"2026-08-14T12:00:00.000Z","id":"key_01j0example","name":"Production app"}}.
objectrequiredobjectEvent resource. Example: {"created_at":"2026-08-14T12:00:00.000Z","id":"key_01j0example","name":"Production app"}.
created_atrequiredstring (date-time)Timestamp when the key was created. Example: "2026-08-14T12:00:00.000Z".
idrequiredstringAPI key identifier. Example: "msg_01j0example".
namerequiredstringHuman-readable API key name. Example: "Production app".
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "api_key.revoked".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"created_at": "2026-08-14T12:00:00.000Z",
"id": "key_01j0example",
"name": "Production app"
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "api_key.revoked"
}webhook.endpoint.created
A webhook endpoint was created.
Channel: webhook
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"api_version":"2026-08-14","consecutive_failures":0,"created_at":"2026-08-14T12:00:00.000Z","description":null,"endpoint":"https://hooks.acme.com/boundry","events":["email.sent"],"id":"wh_01j0example","last_failure_at":null,"last_success_at":null,"object":"webhook","secret_prefix":"whsec_example","status":"enabled","updated_at":"2026-08-14T12:00:00.000Z"}}.
objectrequiredobjectEvent resource. Example: {"api_version":"2026-08-14","consecutive_failures":0,"created_at":"2026-08-14T12:00:00.000Z","description":null,"endpoint":"https://hooks.acme.com/boundry","events":["email.sent"],"id":"wh_01j0example","last_failure_at":null,"last_success_at":null,"object":"webhook","secret_prefix":"whsec_example","status":"enabled","updated_at":"2026-08-14T12:00:00.000Z"}.
api_versionrequiredstringAPI version pinned to this endpoint. Values: "2026-08-14".
consecutive_failuresrequiredintegerConsecutive delivery failures.
created_atrequiredstring (date-time)Timestamp when the webhook was created. Example: "2026-08-14T12:00:00.000Z".
descriptionrequiredstring | null | nullOptional endpoint description.
Option 1stringOptional endpoint description.
Option 2null | nullOne permitted response shape.
endpointrequiredstring (uri)Webhook delivery endpoint URL. Example: "https://hooks.acme.com/boundry".
eventsrequiredarraySubscribed event types.
idrequiredstringWebhook identifier. Example: "msg_01j0example".
last_failure_atrequiredstring (date-time) | null | nullTimestamp of the last failed delivery, or null.
Option 1string (date-time)Timestamp of the last failed delivery.
Option 2null | nullOne permitted response shape.
last_success_atrequiredstring (date-time) | null | nullTimestamp of the last successful delivery, or null.
Option 1string (date-time)Timestamp of the last successful delivery.
Option 2null | nullOne permitted response shape.
objectrequiredstringResource type discriminator. Values: "webhook".
secret_prefixrequiredstringNon-secret signing-secret prefix. Example: "whsec_example".
statusrequiredstringWebhook state. Values: "enabled", "disabled", "pending".
updated_atrequiredstring (date-time)Timestamp when the webhook was last updated. Example: "2026-08-14T12:00:00.000Z".
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "webhook.endpoint.created".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"api_version": "2026-08-14",
"consecutive_failures": 0,
"created_at": "2026-08-14T12:00:00.000Z",
"description": null,
"endpoint": "https://hooks.acme.com/boundry",
"events": [
"email.sent"
],
"id": "wh_01j0example",
"last_failure_at": null,
"last_success_at": null,
"object": "webhook",
"secret_prefix": "whsec_example",
"status": "enabled",
"updated_at": "2026-08-14T12:00:00.000Z"
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "webhook.endpoint.created"
}webhook.endpoint.updated
A webhook endpoint changed.
Channel: webhook
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"api_version":"2026-08-14","consecutive_failures":0,"created_at":"2026-08-14T12:00:00.000Z","description":null,"endpoint":"https://hooks.acme.com/boundry","events":["email.sent"],"id":"wh_01j0example","last_failure_at":null,"last_success_at":null,"object":"webhook","secret_prefix":"whsec_example","status":"enabled","updated_at":"2026-08-14T12:00:00.000Z"}}.
objectrequiredobjectEvent resource. Example: {"api_version":"2026-08-14","consecutive_failures":0,"created_at":"2026-08-14T12:00:00.000Z","description":null,"endpoint":"https://hooks.acme.com/boundry","events":["email.sent"],"id":"wh_01j0example","last_failure_at":null,"last_success_at":null,"object":"webhook","secret_prefix":"whsec_example","status":"enabled","updated_at":"2026-08-14T12:00:00.000Z"}.
api_versionrequiredstringAPI version pinned to this endpoint. Values: "2026-08-14".
consecutive_failuresrequiredintegerConsecutive delivery failures.
created_atrequiredstring (date-time)Timestamp when the webhook was created. Example: "2026-08-14T12:00:00.000Z".
descriptionrequiredstring | null | nullOptional endpoint description.
Option 1stringOptional endpoint description.
Option 2null | nullOne permitted response shape.
endpointrequiredstring (uri)Webhook delivery endpoint URL. Example: "https://hooks.acme.com/boundry".
eventsrequiredarraySubscribed event types.
idrequiredstringWebhook identifier. Example: "msg_01j0example".
last_failure_atrequiredstring (date-time) | null | nullTimestamp of the last failed delivery, or null.
Option 1string (date-time)Timestamp of the last failed delivery.
Option 2null | nullOne permitted response shape.
last_success_atrequiredstring (date-time) | null | nullTimestamp of the last successful delivery, or null.
Option 1string (date-time)Timestamp of the last successful delivery.
Option 2null | nullOne permitted response shape.
objectrequiredstringResource type discriminator. Values: "webhook".
secret_prefixrequiredstringNon-secret signing-secret prefix. Example: "whsec_example".
statusrequiredstringWebhook state. Values: "enabled", "disabled", "pending".
updated_atrequiredstring (date-time)Timestamp when the webhook was last updated. Example: "2026-08-14T12:00:00.000Z".
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "webhook.endpoint.updated".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"api_version": "2026-08-14",
"consecutive_failures": 0,
"created_at": "2026-08-14T12:00:00.000Z",
"description": null,
"endpoint": "https://hooks.acme.com/boundry",
"events": [
"email.sent"
],
"id": "wh_01j0example",
"last_failure_at": null,
"last_success_at": null,
"object": "webhook",
"secret_prefix": "whsec_example",
"status": "enabled",
"updated_at": "2026-08-14T12:00:00.000Z"
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "webhook.endpoint.updated"
}webhook.endpoint.disabled
Boundry disabled the endpoint after repeated failures.
Channel: webhook
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"created_at":"2026-08-14T12:00:00.000Z","disable_reason":"20 consecutive failed deliveries.","disabled_at":"2026-08-15T12:00:00.000Z","endpoint":"https://example.com/webhooks/boundry","events":["email.sent"],"id":"wh_01j0example","object":"webhook","status":"disabled"}}.
objectrequiredobjectEvent resource. Example: {"created_at":"2026-08-14T12:00:00.000Z","disable_reason":"20 consecutive failed deliveries.","disabled_at":"2026-08-15T12:00:00.000Z","endpoint":"https://example.com/webhooks/boundry","events":["email.sent"],"id":"wh_01j0example","object":"webhook","status":"disabled"}.
api_versionrequiredstringAPI version pinned to this endpoint. Values: "2026-08-14".
consecutive_failuresrequiredintegerConsecutive delivery failures.
created_atrequiredstring (date-time)Timestamp when the webhook was created. Example: "2026-08-14T12:00:00.000Z".
descriptionrequiredstring | null | nullOptional endpoint description.
Option 1stringOptional endpoint description.
Option 2null | nullOne permitted response shape.
disable_reasonrequiredstringReason the endpoint was disabled. Example: "20 consecutive failed deliveries.".
disabled_atrequiredstring (date-time)Timestamp when Boundry disabled the endpoint. Example: "2026-08-14T12:00:00.000Z".
endpointrequiredstring (uri)Webhook delivery endpoint URL. Example: "https://hooks.acme.com/boundry".
eventsrequiredarraySubscribed event types.
idrequiredstringWebhook identifier. Example: "msg_01j0example".
last_failure_atrequiredstring (date-time) | null | nullTimestamp of the last failed delivery, or null.
Option 1string (date-time)Timestamp of the last failed delivery.
Option 2null | nullOne permitted response shape.
last_success_atrequiredstring (date-time) | null | nullTimestamp of the last successful delivery, or null.
Option 1string (date-time)Timestamp of the last successful delivery.
Option 2null | nullOne permitted response shape.
objectrequiredstringResource type discriminator. Values: "webhook".
secret_prefixrequiredstringNon-secret signing-secret prefix. Example: "whsec_example".
statusrequiredstringWebhook state. Values: "disabled".
updated_atrequiredstring (date-time)Timestamp when the webhook was last updated. Example: "2026-08-14T12:00:00.000Z".
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "webhook.endpoint.disabled".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"created_at": "2026-08-14T12:00:00.000Z",
"disable_reason": "20 consecutive failed deliveries.",
"disabled_at": "2026-08-15T12:00:00.000Z",
"endpoint": "https://example.com/webhooks/boundry",
"events": [
"email.sent"
],
"id": "wh_01j0example",
"object": "webhook",
"status": "disabled"
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "webhook.endpoint.disabled"
}webhook.endpoint.deleted
A webhook endpoint was removed.
Channel: webhook
Payload schema
api_versionrequiredstringAPI version pinned to the webhook endpoint. Values: "2026-08-14". Default: "2026-08-14".
created_atrequiredstring (date-time)Timestamp when Boundry created the event. Example: "2026-08-14T12:00:00.000Z".
datarequiredobjectEvent resource wrapper. Example: {"object":{"deleted":true,"id":"wh_01j0example","object":"webhook"}}.
objectrequiredobjectEvent resource. Example: {"deleted":true,"id":"wh_01j0example","object":"webhook"}.
deletedrequiredbooleanDeletion marker. Values: true.
idrequiredstringDeleted webhook identifier. Example: "msg_01j0example".
objectrequiredstringResource type discriminator. Values: "webhook".
idrequiredstringStable event identifier.
livemoderequiredbooleanWhether the event originated in live mode.
objectrequiredstringResource type discriminator. Values: "event".
project_idrequiredstringOwning project identifier. Example: "msg_01j0example".
typerequiredstringWebhook event type. Values: "webhook.endpoint.deleted".
Sample body
{
"api_version": "2026-08-14",
"created_at": "2026-08-14T12:00:00.000Z",
"data": {
"object": {
"deleted": true,
"id": "wh_01j0example",
"object": "webhook"
}
},
"id": "evt_01j0example",
"livemode": true,
"object": "event",
"project_id": "proj_au_prod",
"type": "webhook.endpoint.deleted"
}