SMTP reply codes

See rfc2821 for the basic specification of SMTP; see also rfc1123 for important additional information.

See rfc1893 and rfc2034 for information about enhanced status codes.

Check the RFC index for further mail-related RFCs.

Reply codes in numerical order
Code Meaning
200 (nonstandard success response, see rfc876)
211 System status, or system help reply
214 Help message
220 <domain> Service ready
221 <domain> 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
354 Start mail input; end with <CRLF>.<CRLF>
421 <domain> Service not available, closing transmission channel
450 Requested mail action not taken: mailbox unavailable
451 Requested action aborted: local error in processing
452 Requested action not taken: insufficient system storage
500 Syntax error, command unrecognised
501 Syntax error in parameters or arguments
502 Command not implemented
503 Bad sequence of commands
504 Command parameter not implemented
521 <domain> does not accept mail (see rfc1846)
530 Access denied (???a Sendmailism)
550 Requested action not taken: mailbox unavailable
551 User not local; please try <forward-path>
552 Requested mail action aborted: exceeded storage allocation
553 Requested action not taken: mailbox name not allowed
554 Transaction failed
Reply codes grouped by command
Command Code Description
connect
220<domain> Service ready
421<domain> Service not available, closing transmission channel
HELO
250Requested mail action okay, completed
500Syntax error, command unrecognised
501Syntax error in parameters or arguments
504Command parameter not implemented
521<domain> does not accept mail [rfc1846]
421<domain> Service not available, closing transmission channel
EHLO
250Requested mail action okay, completed
550Not implemented
500Syntax error, command unrecognised
501Syntax error in parameters or arguments
504Command parameter not implemented
421<domain> Service not available, closing transmission channel
MAIL
250Requested mail action okay, completed
552Requested mail action aborted: exceeded storage allocation
451Requested action aborted: local error in processing
452Requested action not taken: insufficient system storage
500Syntax error, command unrecognised
501Syntax error in parameters or arguments
421<domain> Service not available, closing transmission channel
RCPT
250Requested mail action okay, completed
251User not local; will forward to <forward-path>
550Requested action not taken: mailbox unavailable
551User not local; please try <forward-path>
552Requested mail action aborted: exceeded storage allocation
553Requested action not taken: mailbox name not allowed
450Requested mail action not taken: mailbox unavailable
451Requested action aborted: local error in processing
452Requested action not taken: insufficient system storage
500Syntax error, command unrecognised
501Syntax error in parameters or arguments
503Bad sequence of commands
521<domain> does not accept mail [rfc1846]
421<domain> Service not available, closing transmission channel
DATA
354Start mail input; end with <CRLF>.<CRLF>
451Requested action aborted: local error in processing
554Transaction failed
500Syntax error, command unrecognised
501Syntax error in parameters or arguments
503Bad sequence of commands
421<domain> Service not available, closing transmission channel
received data
250Requested mail action okay, completed
552Requested mail action aborted: exceeded storage allocation
554Transaction failed
451Requested action aborted: local error in processing
452Requested action not taken: insufficient system storage
RSET
200(nonstandard success response, see rfc876)
250Requested mail action okay, completed
500Syntax error, command unrecognised
501Syntax error in parameters or arguments
504Command parameter not implemented
421<domain> Service not available, closing transmission channel
SEND
250Requested mail action okay, completed
552Requested mail action aborted: exceeded storage allocation
451Requested action aborted: local error in processing
452Requested action not taken: insufficient system storage
500Syntax error, command unrecognised
501Syntax error in parameters or arguments
502Command not implemented
421<domain> Service not available, closing transmission channel
SOML
250Requested mail action okay, completed
552Requested mail action aborted: exceeded storage allocation
451Requested action aborted: local error in processing
452Requested action not taken: insufficient system storage
500Syntax error, command unrecognised
501Syntax error in parameters or arguments
502Command not implemented
421<domain> Service not available, closing transmission channel
SAML
250Requested mail action okay, completed
552Requested mail action aborted: exceeded storage allocation
451Requested action aborted: local error in processing
452Requested action not taken: insufficient system storage
500Syntax error, command unrecognised
501Syntax error in parameters or arguments
502Command not implemented
421<domain> Service not available, closing transmission channel
VRFY
250Requested mail action okay, completed
251User not local; will forward to <forward-path>
252 Cannot VRFY user, but will accept message and attempt delivery
550Requested action not taken: mailbox unavailable
551User not local; please try <forward-path>
553Requested action not taken: mailbox name not allowed
500Syntax error, command unrecognised
501Syntax error in parameters or arguments
502Command not implemented
504Command parameter not implemented
421<domain> Service not available, closing transmission channel
EXPN
250Requested mail action okay, completed
550Requested action not taken: mailbox unavailable
500Syntax error, command unrecognised
501Syntax error in parameters or arguments
502Command not implemented
504Command parameter not implemented
421<domain> Service not available, closing transmission channel
HELP
211System status, or system help reply
214Help message
500Syntax error, command unrecognised
501Syntax error in parameters or arguments
502Command not implemented
504Command parameter not implemented
421<domain> Service not available, closing transmission channel
NOOP
200(nonstandard success response, see rfc876)
250Requested mail action okay, completed
500Syntax error, command unrecognised
421<domain> Service not available, closing transmission channel
QUIT
221<domain> Service closing transmission channel
500Syntax error, command unrecognised
TURN
250Requested mail action okay, completed
502Command not implemented
500Syntax error, command unrecognised
503Bad sequence of commands

RJK | Contents