Use Your Own SMTP Email Provider

Auth0 allows you to configure your own SMTP email provider. Auth0's built-in email infrastructure should be used for testing level emails only. By using your own provider you can more completely manage, monitor and troubleshoot your email communications.

Auth0 currently supports the following providers:

You can only configure one email provider (Amazon SES, Sendgrid, and so on.) which will be used for all emails.

Whitelist IP addresses

To make sure that emails can be sent from Auth0 to your SMTP, you must open the right ports and allow inbound connections from specific IP addresses.

To get the list of IPs, go to Dashboard > Emails > Provider.

Configure Amazon SES

There are several steps to follow to configure Amazon SES for sending email. If you want to use the SES API, please follow this guide.

You can use two types of credentials

  1. API Credentials
  2. SMTP Credentials (the secret is usually 44 characters long)

For more information about SES credentials, visit Using Credentials With Amazon SES.

Use API credentials

  1. Sign up for an Amazon AWS account, or login.

  2. Verify your domain.

  3. Verify email addresses

  4. Request production access.

  5. Get Your AWS Access Keys. Copy these keys. You will need to enter these values into Auth0 (see below).

  6. Attach a policy with the right permissions. Attach a policy with the ses:SendRawEmail and ses:SendEmail permissions, as in this example:

  7. Go to the Custom Email Provider page of the Auth0 dashboard. Click Use my own Email Provider and click the Amazon Web Services logo.

  8. Enter your AWS Access Key Id, Secret Access Key and Region in the appropriate fields:

  9. Click Save.

Now you can send a test email using the SEND TEST EMAIL button on the Custom Email Provider page of the Auth0 dashboard. If you don't receive an email after a few minutes, please check your dashboard logs for any failures.

The Amazon SES console will now display all emails which have been sent to your users.

Use SMTP credentials

  1. Sign up for an Amazon AWS account, or login.

  2. Verify your domain.

  3. Request production access.

  4. Get Your SMTP Credentials. Copy the security credentials. You will need to enter these values into Auth0.

  5. Go to the Custom Email Provider page of the Auth0 dashboard. Click Use my own Email Provider and click the SMTP logo.

  6. Enter your SMTP server Host, Port, Username and Password in the appropriate fields. You can use email-smtp.us-east-1.amazonaws.com (using the appropriate region instead of us-east-1) for Host and 587 for Port.

  7. Click Save.

Now you can send a test email using the SEND TEST EMAIL button on the Custom Email Provider page of the Auth0 dashboard. If you don't receive an email after a few minutes, please check your dashboard logs for any failures.

The Amazon SES console will now display all emails which have been sent to your users.

Configure Mandrill

  1. Sign up for a Mandrill account, or login. Go to the Settings page and click Add API key. Save this key value.

  2. Go to the Custom Email Provider page of the Auth0 dashboard. Click Use my own Email Provider and click the Mandrill logo.

  3. Enter your previously obtained Mandrill API Key:

Now you can send a test email using the SEND TEST EMAIL button on the Custom Email Provider page of the Auth0 dashboard. If you don't receive an email after a few minutes, please check your dashboard logs for any failures.

The Outbound Activity page in Mandrill will now display all emails which have been sent to your users, including the subject and the delivery status of each message.

Configure SendGrid

  1. Sign up for a SendGrid account, or login. (If you have a Microsoft Azure subscription you can get a free account in the Azure Marketplace).

  2. Go to Settings > API Keys and click Create API Key.

  3. Provide a name for your key and enable Full Access for Mail Send permissions. Click Save.

  4. Copy the API key provided.

  5. Go to the Custom Email Provider page of the Auth0 dashboard. Click Use my own Email Provider and click the SendGrid logo.

  6. Provide a From email and enter your previously obtained SendGrid API Key:

Now you can send a test email using the SEND TEST EMAIL button on the Custom Email Provider page of the Auth0 dashboard. If you have configured everything correctly, you will receive a confirmation email:

If you do not receive an email after a few minutes, please check your dashboard logs for any failures.

The Email Activity page in SendGrid will now display all emails which have been sent to your users and the delivery status of each message.

Configure SparkPost

You must create your SparkPost account in the US region; Auth0 does not currently support EU-based SparkPost accounts.

You should create your Sparkpost account in the US region for it to work with Auth0, as we do not currently have support for EU based Sparkpost accounts.

  1. Sign up for a SparkPost account, or login. Go to the Account API Keys page and click New API key. Save this key value. The key must have Transmissions: Read/Write access.

  2. Go to the Custom Email Provider page of the Auth0 dashboard. Click Use my own Email Provider and click the SparkPost logo.

  3. Enter your previously obtained SparkPost API Key:

Now you can send a test email using the SEND TEST EMAIL button on the Custom Email Provider page of the Auth0 dashboard. Note that SparkPost only allows sending emails from verified domains. To verify a custom domain go to the Sending Domains page and add your custom domain. Alternatively, you can send test emails from the sparpostbox.com domain, but this is limited to only five test emails. See the relevant SparkPost docs for details.

If you don't receive an email after a few minutes, please check your dashboard logs for any failures.

The Message Events page in SparkPost will now display all emails which have been sent to your users, including the delivery status of each message.

Configure a custom SMTP server

You can use your own SMTP server to send email. There are three requirements for the SMTP server:

  • It must support LOGIN authentication.
  • It must support TLS 1.0 or higher.
  • It must use a certificate signed by a public certificate authority (CA).

To be able to use your own SMTP server:

  1. Open the Custom Email Provider page of the Auth0 dashboard.

  2. Click on Use my own Email Provider.

  3. Click the SMTP logo.

  4. Enter your SMTP server Host, Port, Username and Password in the appropriate fields:

  5. Click Save.

Common ports include 25 and 587. Please avoid using port 25 if you can, since many providers have limitations on this port.

Now you can send a test email using the SEND TEST EMAIL button on the Custom Email Provider page of the Auth0 dashboard. If you don't receive an email after a few minutes, please check your dashboard logs for any failures.

Test services

SMTP makes it easy to setup test services that allow you to test that your setup is working without spamming your users. For more information, see: Set up a Test SMTP Provider .

Keep reading