Skip to content

Send Basic Emails API

Backendless provides API for basic email delivery. The API lets you specify:

  • plain text and/or HTML-based content for your email messages;
  • a list of email address for the recipient;
  • a list of attachments;

Important

Before the API can be used, the Backendless backend must be configured with your own SMTP server information. This is an important requirement as the API will not work when the Manage > App Settings > Email Settings section in Backendless Console contains default values. For instructions on how to configure your own SMTP server in Backendless, see the Email Settings section.

Sending Email API


Delivers an email message to the recipient(s) specified in the API call.

// *******************************************
// synchronous methods
// *******************************************
Backendless.Messaging.sendTextEmail( String subject, 
                                     String messageBody, 
                                     List<String> recipients )
Backendless.Messaging.sendTextEmail( String subject, 
                                     String messageBody, 
                                     String recipient )
Backendless.Messaging.sendHTMLEmail( String subject, 
                                     String messageBody, 
                                     List<String> recipients )
Backendless.Messaging.sendHTMLEmail( String subject, 
                                     String messageBody, 
                                     String recipient )
Backendless.Messaging.sendEmail( String subject, 
                                 BodyParts bodyParts, 
                                 String recipient, 
                                 List<String> attachments )
Backendless.Messaging.sendEmail( String subject, 
                                 BodyParts bodyParts, 
                                 String recipient )
Backendless.Messaging.sendEmail( String subject, 
                                 BodyParts bodyParts, 
                                 List<String> recipients, 
                                 List<String> attachments )

// *******************************************
// asynchronous methods
// *******************************************
Backendless.Messaging.sendTextEmail( String subject, 
                                     String messageBody, 
                                     List<String> recipients, 
                                     AsyncCallback<Void> responder );
Backendless.Messaging.sendTextEmail( String subject, 
                                     String messageBody, 
                                     String recipient, 
                                     AsyncCallback<Void> responder );
Backendless.Messaging.sendHTMLEmail( String subject, 
                                     String messageBody, 
                                     List<String> recipients, 
                                     AsyncCallback<Void> responder );
Backendless.Messaging.sendHTMLEmail( String subject, 
                                     String messageBody, 
                                     String recipient, 
                                     AsyncCallback<Void> responder );
Backendless.Messaging.sendEmail( String subject, 
                                 BodyParts bodyParts, 
                                 String recipient, 
                                 List<String> attachments, 
                                 AsyncCallback<Void> responder );
Backendless.Messaging.sendEmail( String subject, 
                                 BodyParts bodyParts, 
                                 String recipient, 
                                 AsyncCallback<Void> responder );
Backendless.Messaging.sendEmail( String subject, 
                                 BodyParts bodyParts, 
                                 List<String> recipients, 
                                 List<String> attachments, 
                                 AsyncCallback<Void> responder );

where:

Argument                Description
subject email message subject.
messageBody plain text or HTML body of the email message.
bodyParts an instance of com.backendless.messaging.BodyParts class which contains either plain text and/or HTML version of the message body.
recipient email address to deliver the email message to.
recipients a collection of email addressed to deliver the email message to.
attachments an array of file paths for the file entries from the Backendless File Service. Referenced files will be attached to the email message. The path is calculated from the root of the file system (as it is seen in File Service browser in Backendless console) without the leading slash. For example, if file agreement.txt is located at /documents/legal/, then the path in the API call must be "documents/legal/agreement.txt".
responder the callback used for asynchronous calls to indicate that the operation has either successfully completed or resulted in error.

Example

// **************************************************************
// Async API request
// **************************************************************
AsyncCallback<Void> responder = new AsyncCallback<Void>()
{
  @Override
  public void handleResponse( Void response )
  {
    Log.i( "MYAPP", "[ASYNC] email has been sent" );
  }

  @Override
  public void handleFault( BackendlessFault fault )
  {
    Log.e( "MYAPP", "error sending email - " + fault.getMessage() );
  }
};

Backendless.Messaging.sendTextEmail( "Reminder", 
                                     "Hey JB! Your car will be ready by 5pm", 
                                     "james.bond@mi6.co.uk", 
                                     responder );

// **************************************************************
// Sync API request. HTML messahe to multiple recipients
// **************************************************************
ArrayList<String> recipients = new ArrayList<String>();
recipients.add( "mom@gmail.com" );
recipients.add( "dad@gmail.com" );

String mailBody = "Guys, the dinner last night was <b>awesome</b>";

Backendless.Messaging.sendHTMLEmail( "Dinner", mailBody, recipients );

Log.i( "MYAPP", "[SYNC] email has been sent" );


// **************************************************************
// Sync API Request. Send an email with attachments
// **************************************************************                          

String subject = "Agreement";

BodyParts bodyParts = new BodyParts();
bodyParts.setTextMessage( "the agreement is attached to this letter" );

String recipient = "client@example.com";

List<String> attachments = new ArrayList<>();
attachments.add( "documents/legal/agreement.txt" );

Backendless.Messaging.sendEmail( subject, bodyParts, recipient, attachments );

Codeless Reference

email_api_send_email_1

where:

Argument                Description
subject Email message subject.
body text/html Plain text or HTML body of the email message.
recipient(s) A list containing email addresses to deliver the email message to.
attachment(s) A list of file paths for the file entries from the Backendless File Service. Referenced files will be attached to the email message. The path is calculated from the root of the file system (as it is seen in File Service browser in Backendless console) without the leading slash. For example, if file agreement.txt is located at /documents/legal/, then the path in the API call must be "documents/legal/agreement.txt".
return result When this box is checked, the operation returns an object containing the status of the email delivery or an error.

Returns an object containing the status of the email delivery or an error.

The example below sends an email to the "alice@yourmail.com" with attachments leading to the files stored in the "/misc" directory.

email_api_send_email_2