SMTP

SMTP 354 Start Mail Input vs 501 Syntax Error in Parameters

SMTP 354 (Start Mail Input) is a 3xx Positive Intermediate response, while 501 (Syntax Error in Parameters) is a 5xx Permanent Negative response. 354 indicates that the server is ready to receive the message body. The client should begin sending the email content (headers and body) and terminate with a single line containing only a period (CRLF.CRLF). In contrast, 501 means that the command was recognized but the parameters or arguments are syntactically invalid. The server understood what you wanted to do but could not parse the details.

Description

The server is ready to receive the message body. The client should begin sending the email content (headers and body) and terminate with a single line containing only a period (CRLF.CRLF).

When You See It

After sending the DATA command. The server is now waiting for you to type or stream the email message, ending with a dot on its own line.

How to Fix

Send your message content followed by a line with just a period (.) to signal the end. If you get an error after this, check that your message does not contain a bare period on a line by itself within the body.

Description

The command was recognized but the parameters or arguments are syntactically invalid. The server understood what you wanted to do but could not parse the details.

When You See It

When a command like MAIL FROM or RCPT TO has a malformed email address, missing angle brackets, or invalid characters in the arguments.

How to Fix

Review the parameter format — email addresses should be enclosed in angle brackets (e.g., <[email protected]>). Check for stray spaces, missing colons, or encoding issues.

Key Differences

1.

354 is a 3xx Positive Intermediate response, while 501 is a 5xx Permanent Negative response.

2.

SMTP 354: The server is ready to receive the message body. The client should begin sending the email content (headers and body) and terminate with a single line containing only a period (CRLF.CRLF).

3.

SMTP 501: The command was recognized but the parameters or arguments are syntactically invalid. The server understood what you wanted to do but could not parse the details.

4.

You encounter 354 when after sending the DATA command. The server is now waiting for you to type or stream the email message, ending with a dot on its own line.

5.

You encounter 501 when when a command like MAIL FROM or RCPT TO has a malformed email address, missing angle brackets, or invalid characters in the arguments.

When to Use Which

For 354 (Start Mail Input): Send your message content followed by a line with just a period (.) to signal the end. If you get an error after this, check that your message does not contain a bare period on a line by itself within the body. For 501 (Syntax Error in Parameters): Review the parameter format — email addresses should be enclosed in angle brackets (e.g., <[email protected]>). Check for stray spaces, missing colons, or encoding issues.

Learn More