Kyle’s Reference Links

Contents External Links Friendly Links Marvin Links

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.

Valid XHTML 1.0 Strict! Valid CSS! Lovingly handcrafted with Vim