Emalc

Search Documentation

Quickly jump to any guide, document, or section...

Delivery Events & Forensic Telemetry

Every activity logged in Emalc originates from an immutable EmailDeliveryEvent. This reference catalog documents all event strings, their triggers, the metadata collected during execution, and how to interpret raw SMTP response codes.


Event Naming Convention#

Emalc utilizes standard dot-notation prefixes for all system logs and webhook dispatches:

text
email.<lifecycle_state>

For example, when an email is accepted into a recipient's mailbox, the event string is email.delivered. When a recipient opens an email, the event string is email.opened.


Complete Event Catalog#

Standard Outbound Progression#

The standard lifecycle of a successfully dispatched and placed message:

Event StringTrigger PointForensic Data CollectedSystem Action
email.queuedMessage accepted by Emalc dispatch pipelineQueue priority, scheduled dispatch windowHolds email until MTA worker picks up job
email.sentHanded off to global upstream MTAsOutbound MTA host, TLS encryption handshakeActively transmits payload toward recipient MX server
email.deliveredDestination mail server accepts email payloadRemote server response (SMTP 250 2.0.0 OK), latency msMarks delivery as successful

Understanding SMTP Status Codes#

When inspecting the Response Body in the Log Detail Sheet, destination servers return standardized three-digit SMTP response codes:

Code RangeMeaningExample StringRecommended Action
250Success250 2.0.0 OK Message accepted for deliveryNone. Message successfully reached destination server.
421Service Unavailable421 4.7.0 Try again later, closing transmissionNo action required. Emalc retries connection automatically.
451Local Processing Error451 4.3.0 Mail server busy or greylisting activeEmalc will automatically retry dispatch with backoff.
452Insufficient Storage452 4.2.2 Mailbox is full / quota exceededRetried for 72 hours. If unresolved, marked as soft bounce.
550Mailbox Unavailable550 5.1.1 User unknown / recipient does not existHard bounce. Emalc automatically suppresses recipient.
554Transaction Failed / Policy554 5.7.1 Relay access denied or IP blockedVerify domain SPF/DKIM authentication and IP reputation.

Correlating Logs with Webhooks#

Emalc dispatches real-time webhooks for every recorded delivery event. You can correlate incoming webhook payloads directly with the Logs dashboard:

json
{
  "event": "email.delivered",
  "eventId": "a1b2c3d4-e5f6-7a8b-9c0d-1e2f3a4b5c6d",
  "emailId": "f9e8d7c6-b5a4-3210-fedc-ba9876543210",
  "recipient": "alex@customer.com",
  "timestamp": "2026-09-17T08:12:05.000Z",
  "smtpResponse": "250 2.0.0 OK Message accepted for delivery"
}
  • eventId: Matches the unique ID shown in the Log Detail Sheet.
  • emailId: Corresponds to the master message record visible in the Emails dashboard.

Automated Webhook Alerting

Use eventId to deduplicate incoming webhook streams and immediately correlate failed delivery logs with external telemetry systems like Datadog, Grafana, or Sentry.