DEV Community

Lakin Mohapatra
Lakin Mohapatra

Posted on

1

Getting Started with SES: Required Permissions to Send Emails

Sending emails has become an integral part of many web applications. Amazon SES (Simple Email Service) is a highly scalable email service provided by AWS (Amazon Web Services) that allows developers to send bulk emails using their web applications. In this blog post, we will explore the required permissions to send emails using SES.

Before sending emails using SES, you need to ensure that you have the necessary IAM (Identity and Access Management) permissions to access the SES service. You can do this by creating an IAM user with the required permissions or by adding the necessary permissions to an existing user.

The following are the required permissions to send emails using SES:

ses:SendEmail - This permission allows you to send emails using SES.

ses:SendRawEmail - This permission allows you to send raw email messages using SES.

ses:GetSendQuota - This permission allows you to retrieve the maximum number of emails you can send per 24-hour period and the number of emails you have already sent in that period.

ses:GetSendStatistics - This permission allows you to retrieve information about the emails you have sent using SES.

Once you have ensured that your IAM user has the necessary permissions, you can start sending emails using SES. Here's a simple code snippet in Node.js to send an email using SES:

const AWS = require('aws-sdk');
AWS.config.update({region: 'us-east-1'});

const ses = new AWS.SES();

const params = {
  Destination: {
    ToAddresses: ['recipient@example.com']
  },
  Message: {
    Body: {
      Html: {
        Charset: 'UTF-8',
        Data: '<h1>Hello from SES!</h1>'
      }
    },
    Subject: {
      Charset: 'UTF-8',
      Data: 'SES Test Email'
    }
  },
  Source: 'sender@example.com'
};

ses.sendEmail(params, function(err, data) {
  if (err) {
    console.log(err, err.stack);
  } else {
    console.log(data);
  }
});

Enter fullscreen mode Exit fullscreen mode

In the above code snippet, we are sending an email using SES with a subject "SES Test Email" and a message "Hello from SES!" in HTML format. We have specified the recipient email address, sender email address, and the AWS region in which SES is enabled.

SES is an easy-to-use email service that allows developers to send bulk emails using their web applications. However, it is important to ensure that you have the necessary IAM permissions to access the SES service. By following the steps outlined in this blog post, you can easily get started with SES and start sending emails using your web application.

Image of Timescale

🚀 pgai Vectorizer: SQLAlchemy and LiteLLM Make Vector Search Simple

We built pgai Vectorizer to simplify embedding management for AI applications—without needing a separate database or complex infrastructure. Since launch, developers have created over 3,000 vectorizers on Timescale Cloud, with many more self-hosted.

Read more →

Top comments (0)

Heroku

Simplify your DevOps and maximize your time.

Since 2007, Heroku has been the go-to platform for developers as it monitors uptime, performance, and infrastructure concerns, allowing you to focus on writing code.

Learn More