SMTP Response Codes
The categories are:
- 1xx Positive preliminary reply
- 2xx Positive completion reply
- 3xx Positive intermediate reply
- 4xx Temporary failure
- 5xx Permanent failure
The second digit also means stuff:
- x0x Syntax-related response
- x1x Information responses (unlikely to be errors)
- x2x Connection-related response
- x3x Unspecified
- x4x Unspecified
- x5x Mail system-related responses
Both 4xx and 5xx responses mean that the message was not accepted. A 5xx
response means it will never be accepted, so you can dispose of the message. A
4xx response means you should try back again.
The common code meanings (from RFC 821/2821) are:
Code |
Meaning |
211 |
System status, or system help reply |
214 |
Help message |
220 |
Service Ready |
221 |
Service closing transmission channel |
250 |
Requested mail action okay, completed |
251 |
User not local; will forward to <forward-path> |
252 |
Cannot VRFY user, but will accept message and attempt delivery |
253 |
OK, <n> pending messages for node <x> started. (RFC 1985) |
354 |
Start mail input; end with <CRLF>.<CRLF> |
355 |
Octet-offset is the transaction offset (RFC 1845) |
421 |
Service not available, closing transmission channel |
432 |
A password transition is needed (RFC 2554) |
450 |
Requested mail action not taken: mailbox unavailable/busy |
451 |
Requested action aborted: local error in processing |
452 |
Requested action not taken: insufficient system storage |
453 |
You have no mail. (RFC 2645) |
454 |
TLS not available temporarily or authentication failed temporarily. (RFC 2552) |
458 |
Unable to queue messages for node X. (RFC 1985) |
459 |
Node <x> not allowed. (RFC 1985) |
500 |
Syntax error, command unrecognized |
501 |
Syntax error in parameters or arguments |
502 |
Command not implemented (usually no different than 500) |
503 |
Bad sequence of commands |
504 |
Command parameter not implemented |
521 |
Machine does not accept mail. (RFC 1846) |
530 |
Authentication required (RFC 2554) or must issue STARTTLS first (RFC 3207). |
534 |
Authentication mechanism too weak. (RFC 2554) |
538 |
Encryption required for requested authentication mechanism. (RFC 2554) |
550 |
Requested action not taken: mailbox unavailable |
551 |
User not local; please try <forward-path> |
552 |
Requested mail action aborted: message too big |
553 |
Requested action not taken: mailbox name not allowed |
554 |
Transaction failed |
For further codes, check out RFC 1893.
If you're looking for the definition of the "Robustness Principle", it's in RFC 1123.
|