Visual RFC.
ALL RFCs / RFC 3463
Read the RFC ↗

RFC 3463 / START HERE

Enhanced mail status, before the details

Enhanced Mail System Status Codes names a code format, not an expanded acronym.

A dotted code such as 4.2.2 describes a mail delivery condition using three fields: outcome class, problem subject and specific detail. A Delivery Status Notification (DSN) is a structured report about what happened to mail; the code helps software explain it consistently across languages.

The idea in one picture

  1. Mail status

  2. Read three fields

  3. Explain the outcome

A simplified picture of the idea; the chapters explain the actual mechanisms.

Why it exists

Ordinary SMTP reply numbers and free-form text do not give enough structured detail for delivery reports. RFC 3463 separates mailbox, system, routing, content and policy conditions. Later updates add definitions and registry rules; this is the foundational code model rather than a complete current registry.

A familiar example

When a fictional recipient’s mailbox is full, a report might use 4.2.2. A reader can distinguish a temporary storage condition from a bad address, and still report the broad class when a detail is unfamiliar. Codes do not prescribe a retry schedule, prove that a diagnosis is true or authenticate a sender.

Helpful background

You can start here without reading another RFC. If these ideas are unfamiliar, these short introductions may help.

What you’ll learn next

Begin with chapter one, or choose a topic.

  1. Read the three fields without inventing a new SMTP codeAn enhanced status code is a dotted class, subject and detail. It describes a mail-system condition; it is not a replacement spelling for an ordinary three-digit SMTP reply.
  2. Distinguish success, temporary conditions and permanent failureThe leading field carries the broad outcome even when a reader does not know the rest. It guides interpretation rather than specifying an automatic retry schedule.
  3. Locate the cause with the subject and detail togetherA repeated detail number can mean different things under different subjects. Compare an address error, a mailbox condition and a system-wide storage condition.
  4. Preserve what is known when a detail is unfamiliarA reader may encounter a well-formed code whose specific detail or subject it does not recognize. Report the broader meaning that remains known.
  5. Use the registry and limit what a diagnostic revealsLater documents add codes and registry rules. Consult the referenced definition rather than guessing from number shape, and remember that precise diagnostics can expose internal details.
Start with chapter one →

This introduction explains RFC 3463 (2003). Read the original RFC ↗