Sends e-mail messages by an SMTP server.

This tag must have a body.

This tag is also supported within <cfscript>

<cfmail from=object to=object cc=object bcc=object replyto=object failto=object subject=string type=string maxrows=number mimeattach=string listener=any query=string group=string groupcasesensitive=boolean startrow=number server=string port=number mailerid=string timeout=number username=string password=string wraptext=number charset=string async=boolean usetls=boolean priority=String usessl=boolean proxyserver=string proxyport=number proxyuser=string proxypassword=string remove=boolean sendtime=datetime debug=boolean ><!--- body ---></cfmail>
Attribute Description
object, required

The sender of the e-mail message.

object, required

The name of the e-mail message recipient.

object, optional

Indicates addresses to copy the e-mail message to; "cc" stands for "carbon copy."

object, optional

Indicates addresses to copy the e-mail message to, without listing them in the message header.

"bcc" stands for "blind carbon copy."

object, optional

Address(es) to which the recipient is directed to send replies.

object, optional

Address to which mailing systems should send delivery failure notifications. Sets the mail envelope Return-Path value.

string, required

The subject of the mail message. This field may be driven dynamically on a message-by-message basis

string, optional

Specifies extended type attributes for the message.

  • text
  • plain
  • html
  • text/plain
  • text/html
string, optional

Specifies the path of the file to be attached to the e-mail message. An attached file is MIME-encoded.

any, optional
boolean, optional

Boolean indicating whether to group with regard to case or not. The default value is NO; case is considered while grouping. If the query attribute specifies a query object that was generated by a case-insensitive SQL query, set the groupCaseSensitive attribute to NO to keep the recordset intact.

string, optional

The address of the SMTP server to use for sending messages. If no server is specified, the server name specified in the Lucee Administrator is used.

number, optional

The TCP/IP port on which the SMTP server listens for requests. This is normally 25.

string, optional

Specifies a mailer ID to be passed in the X-Mailer SMTP header, which identifies the mailer application.

number, optional

The number of seconds to wait before timing out the connection to the SMTP server.

string, optional

A user name to send to SMTP servers that require authentication. Requires a password attribute.

string, optional

A password to send to SMTP servers that require authentication. Requires a username attribute.

number, optional

Specifies the maximum line length, in characters of the mail text. If a line has more than the specified number of characters, replaces the last white space character, such as a tab or space, preceding the specified position with a line break. If there are no white space characters, inserts a line break at the specified position. A common value for this attribute is 72.

string, optional

Character encoding of the mail message

boolean, optional

if set to true, the mail is sent asynchronously by the Lucee Task manager (with multiple tries), if set to false the mail is sent in the same thread that executes the request, which is useful for troubleshooting because you get an error message if there is one.

This setting overrides the setting with the same name in the Lucee Administrator.

This attribute replaces the old "spoolenable" attribute which is still supported as an alias.

Alias: spoolenable

boolean, optional

Whether to use Transport Level Security.

Alias: tls, starttls

String, optional

The message priority level. Can be one of the following values:

  • An integer in the range 1-5; 1 represents the highest priority.
  • One of the following string values, which correspond to the numeric values: highest or urgent, high, normal, low, and lowest or non-urgent.
boolean, optional

Whether to use Secure Sockets Layer.

Alias: ssl, secure

string, optional

Host name or IP address of a proxy server.

number, optional

The port number on the proxy server from which the object is requested. Default is 80. When used with resolveURL, the URLs of retrieved documents that specify a port number are automatically resolved to preserve links in the retrieved document.

string, optional

When required by a proxy server, a valid username.

string, optional

When required by a proxy server, a valid password.

boolean, optional

remove all attachments from filesystem after the mail is successfully sent

datetime, optional

Set a future date time to send an email in the future via the spooler.

boolean, optional

Whether to enable detailed logging to console.

Unimplemented Attribute(s)

Attribute Description
number, optional

Specifies the maximum number of e-mail messages to send.

* unimplemented *
string, optional

The name of the cfquery from which to draw data for message(s) to send. Specify this attribute to send more than one mail message, or to send the results of a query within a message.

* unimplemented *
string, optional

Specifies the query column to use when you group sets of records together to send as an e-mail message. For example, if you send a set of billing statements to customers, you might group on "Customer_ID." The group attribute, which is case sensitive, eliminates adjacent duplicates when the data is sorted by the specified field. See the Usage section for exceptions.

* unimplemented *
number, optional

Specifies the row in the query to start from.

* unimplemented *


Simple example for cfmail

 	<cfmail from="aaa@bb.com" to="test01@mail.com" subject="sample" cc="test02@gmail.com" server="example.mail.com">
		Test Email
		<cfdump var="#cfcatch.message#">

See also