Message Lifecycle - Messaging
Message Lifecycle
7.1 Bulk Message Status
Each message/send call creates a bulk message that progresses through these states:
| Status | Description |
|---|
sending | Message is being processed and individual emails are being dispatched |
completed | All individual emails have been processed |
failed | Processing failed (check errorEnum and errorDescription) |
canceled | Message was canceled before completion |
7.2 Discrete Message Status
Each recipient generates a discrete message with its own delivery lifecycle:
| Status | Description |
|---|
sending | Email queued for delivery |
processed | Email accepted by the email provider |
delivered | Email delivered to recipient's mailbox |
deferred | Delivery delayed, will retry |
dropped | Email dropped (invalid address, policy violation) |
bounce | Email bounced (mailbox full, domain not found) |
error | Delivery error |
7.3 Engagement Tracking Events
After delivery, these tracking events may update the discrete message status:
| Event | Description |
|---|
open | Recipient opened the email |
click | Recipient clicked a link in the email |
spamreport | Recipient reported the email as spam |
unsubscribed | Recipient unsubscribed via the email link |
7.4 Discrete Error Codes
| Error | Description |
|---|
emailNotResolvedToValidEmailAddress | User ID could not be resolved to an email |
userUnsubscribeFromThisGroup | User unsubscribed from the message's unsubscribe group |
userNotFoundInOurDb | User ID not found in the system |
createMagicLinkFailed | Failed to generate a magic login link |
createUnsubscribeUriLinkFailed | Failed to generate an unsubscribe link |
createJwtQrCodeFailed | Failed to generate a QR code |
sendGridError | Email provider returned an error |