Enhanced Mail System Status Codes
This document defines a set of extended status codes for use within the mail system for delivery status reports, tracking, and improved diagnostics. In combination with other information provided in the Delivery Status Notification (DSN) delivery report, these codes facilitate media and language independent rendering of message delivery status. [STANDARDS-TRACK]
This document is current and has been amended. 5 later RFCs have changed part of it. Nothing on the RFC itself tells you this.
What it is
Enhanced mail system status codes: the three-part numbers like 5.1.1 that carry more meaning than a bare 550.
What it solves
A 550 tells you the delivery failed permanently and nothing else. Automating on it means parsing free text that every provider writes differently.
What it means to operate
The class says what to do and the subject says which subsystem complained, so 5.1.1 is a recipient problem and 5.7.1 is a policy one, and they call for completely different responses. Route your bounce processing on the enhanced code where it exists and fall back to the basic code only when it does not.
Bounce classifier turns an SMTP response into the action it calls for. Open bounce classifier
Normative requirements
Every sentence in this RFC carrying an RFC 2119 keyword, with the section it came from.
2 Status Code Structure
- MUSTEach numeric sub-code within the status-code MUST be expressed without leading zero digits.