What is @aws-sdk/client-sesv2?
@aws-sdk/client-sesv2 is an AWS SDK for JavaScript package that allows you to interact with the Amazon Simple Email Service (SES) v2. It provides a range of functionalities for sending emails, managing email templates, handling email identities, and more.
What are @aws-sdk/client-sesv2's main functionalities?
Send Email
This feature allows you to send an email using Amazon SES. The code sample demonstrates how to create a client, construct a SendEmailCommand, and send an email.
{"import":"import { SESv2Client, SendEmailCommand } from '@aws-sdk/client-sesv2';","client":"const client = new SESv2Client({ region: 'us-east-1' });","command":"const command = new SendEmailCommand({\n Destination: {\n ToAddresses: ['recipient@example.com'],\n },\n Content: {\n Simple: {\n Subject: { Data: 'Test Email' },\n Body: { Text: { Data: 'This is a test email.' } },\n },\n },\n FromEmailAddress: 'sender@example.com',\n});","send":"const response = await client.send(command);\nconsole.log(response);"}
Create Email Template
This feature allows you to create an email template in Amazon SES. The code sample demonstrates how to create a client, construct a CreateEmailTemplateCommand, and create a template.
{"import":"import { SESv2Client, CreateEmailTemplateCommand } from '@aws-sdk/client-sesv2';","client":"const client = new SESv2Client({ region: 'us-east-1' });","command":"const command = new CreateEmailTemplateCommand({\n TemplateName: 'MyTemplate',\n TemplateContent: {\n Subject: 'Hello, {{name}}',\n Html: '<h1>Hello, {{name}}</h1>',\n Text: 'Hello, {{name}}',\n },\n});","send":"const response = await client.send(command);\nconsole.log(response);"}
List Email Identities
This feature allows you to list all email identities in your Amazon SES account. The code sample demonstrates how to create a client, construct a ListEmailIdentitiesCommand, and list email identities.
{"import":"import { SESv2Client, ListEmailIdentitiesCommand } from '@aws-sdk/client-sesv2';","client":"const client = new SESv2Client({ region: 'us-east-1' });","command":"const command = new ListEmailIdentitiesCommand({});","send":"const response = await client.send(command);\nconsole.log(response);"}
Other packages similar to @aws-sdk/client-sesv2
nodemailer
Nodemailer is a module for Node.js applications to allow easy email sending. It is not tied to any specific email service and can be used with various SMTP servers. Compared to @aws-sdk/client-sesv2, Nodemailer is more flexible in terms of email service providers but does not offer the same level of integration with AWS services.
sendgrid
SendGrid is a cloud-based service that provides email delivery and marketing campaigns. The @sendgrid/mail package allows you to send emails using SendGrid's API. Compared to @aws-sdk/client-sesv2, SendGrid offers additional features like email analytics and marketing tools but requires a separate SendGrid account.
mailgun-js
Mailgun is an email automation service that provides a powerful API for sending, receiving, and tracking emails. The mailgun-js package allows you to interact with Mailgun's API. Compared to @aws-sdk/client-sesv2, Mailgun offers advanced email tracking and analytics but requires a Mailgun account.
@aws-sdk/client-sesv2
Description
AWS SDK for JavaScript SESv2 Client for Node.js, Browser and React Native.
Amazon SES API v2
Amazon SES is an Amazon Web Services service that
you can use to send email messages to your customers.
If you're new to Amazon SES API v2, you might find it helpful to review the Amazon Simple Email Service Developer
Guide. The Amazon SES Developer Guide provides information
and code samples that demonstrate how to use Amazon SES API v2 features programmatically.
Installing
To install the this package, simply type add or install @aws-sdk/client-sesv2
using your favorite package manager:
npm install @aws-sdk/client-sesv2
yarn add @aws-sdk/client-sesv2
pnpm add @aws-sdk/client-sesv2
Getting Started
Import
The AWS SDK is modulized by clients and commands.
To send a request, you only need to import the SESv2Client
and
the commands you need, for example ListContactListsCommand
:
const { SESv2Client, ListContactListsCommand } = require("@aws-sdk/client-sesv2");
import { SESv2Client, ListContactListsCommand } from "@aws-sdk/client-sesv2";
Usage
To send a request, you:
- Initiate client with configuration (e.g. credentials, region).
- Initiate command with input parameters.
- Call
send
operation on client with command object as input. - If you are using a custom http handler, you may call
destroy()
to close open connections.
const client = new SESv2Client({ region: "REGION" });
const params = {
};
const command = new ListContactListsCommand(params);
Async/await
We recommend using await
operator to wait for the promise returned by send operation as follows:
try {
const data = await client.send(command);
} catch (error) {
} finally {
}
Async-await is clean, concise, intuitive, easy to debug and has better error handling
as compared to using Promise chains or callbacks.
Promises
You can also use Promise chaining
to execute send operation.
client.send(command).then(
(data) => {
},
(error) => {
}
);
Promises can also be called using .catch()
and .finally()
as follows:
client
.send(command)
.then((data) => {
})
.catch((error) => {
})
.finally(() => {
});
Callbacks
We do not recommend using callbacks because of callback hell,
but they are supported by the send operation.
client.send(command, (err, data) => {
});
v2 compatible style
The client can also send requests using v2 compatible style.
However, it results in a bigger bundle size and may be dropped in next major version. More details in the blog post
on modular packages in AWS SDK for JavaScript
import * as AWS from "@aws-sdk/client-sesv2";
const client = new AWS.SESv2({ region: "REGION" });
try {
const data = await client.listContactLists(params);
} catch (error) {
}
client
.listContactLists(params)
.then((data) => {
})
.catch((error) => {
});
client.listContactLists(params, (err, data) => {
});
Troubleshooting
When the service returns an exception, the error will include the exception information,
as well as response metadata (e.g. request id).
try {
const data = await client.send(command);
} catch (error) {
const { requestId, cfId, extendedRequestId } = error.$metadata;
console.log({ requestId, cfId, extendedRequestId });
}
Getting Help
Please use these community resources for getting help.
We use the GitHub issues for tracking bugs and feature requests, but have limited bandwidth to address them.
To test your universal JavaScript code in Node.js, browser and react-native environments,
visit our code samples repo.
Contributing
This client code is generated automatically. Any modifications will be overwritten the next time the @aws-sdk/client-sesv2
package is updated.
To contribute to client you can check our generate clients scripts.
License
This SDK is distributed under the
Apache License, Version 2.0,
see LICENSE for more information.
Client Commands (Operations List)
BatchGetMetricData
Command API Reference / Input / Output
CancelExportJob
Command API Reference / Input / Output
CreateConfigurationSet
Command API Reference / Input / Output
CreateConfigurationSetEventDestination
Command API Reference / Input / Output
CreateContact
Command API Reference / Input / Output
CreateContactList
Command API Reference / Input / Output
CreateCustomVerificationEmailTemplate
Command API Reference / Input / Output
CreateDedicatedIpPool
Command API Reference / Input / Output
CreateDeliverabilityTestReport
Command API Reference / Input / Output
CreateEmailIdentity
Command API Reference / Input / Output
CreateEmailIdentityPolicy
Command API Reference / Input / Output
CreateEmailTemplate
Command API Reference / Input / Output
CreateExportJob
Command API Reference / Input / Output
CreateImportJob
Command API Reference / Input / Output
DeleteConfigurationSet
Command API Reference / Input / Output
DeleteConfigurationSetEventDestination
Command API Reference / Input / Output
DeleteContact
Command API Reference / Input / Output
DeleteContactList
Command API Reference / Input / Output
DeleteCustomVerificationEmailTemplate
Command API Reference / Input / Output
DeleteDedicatedIpPool
Command API Reference / Input / Output
DeleteEmailIdentity
Command API Reference / Input / Output
DeleteEmailIdentityPolicy
Command API Reference / Input / Output
DeleteEmailTemplate
Command API Reference / Input / Output
DeleteSuppressedDestination
Command API Reference / Input / Output
GetAccount
Command API Reference / Input / Output
GetBlacklistReports
Command API Reference / Input / Output
GetConfigurationSet
Command API Reference / Input / Output
GetConfigurationSetEventDestinations
Command API Reference / Input / Output
GetContact
Command API Reference / Input / Output
GetContactList
Command API Reference / Input / Output
GetCustomVerificationEmailTemplate
Command API Reference / Input / Output
GetDedicatedIp
Command API Reference / Input / Output
GetDedicatedIpPool
Command API Reference / Input / Output
GetDedicatedIps
Command API Reference / Input / Output
GetDeliverabilityDashboardOptions
Command API Reference / Input / Output
GetDeliverabilityTestReport
Command API Reference / Input / Output
GetDomainDeliverabilityCampaign
Command API Reference / Input / Output
GetDomainStatisticsReport
Command API Reference / Input / Output
GetEmailIdentity
Command API Reference / Input / Output
GetEmailIdentityPolicies
Command API Reference / Input / Output
GetEmailTemplate
Command API Reference / Input / Output
GetExportJob
Command API Reference / Input / Output
GetImportJob
Command API Reference / Input / Output
GetMessageInsights
Command API Reference / Input / Output
GetSuppressedDestination
Command API Reference / Input / Output
ListConfigurationSets
Command API Reference / Input / Output
ListContactLists
Command API Reference / Input / Output
ListContacts
Command API Reference / Input / Output
ListCustomVerificationEmailTemplates
Command API Reference / Input / Output
ListDedicatedIpPools
Command API Reference / Input / Output
ListDeliverabilityTestReports
Command API Reference / Input / Output
ListDomainDeliverabilityCampaigns
Command API Reference / Input / Output
ListEmailIdentities
Command API Reference / Input / Output
ListEmailTemplates
Command API Reference / Input / Output
ListExportJobs
Command API Reference / Input / Output
ListImportJobs
Command API Reference / Input / Output
ListRecommendations
Command API Reference / Input / Output
ListSuppressedDestinations
Command API Reference / Input / Output
ListTagsForResource
Command API Reference / Input / Output
PutAccountDedicatedIpWarmupAttributes
Command API Reference / Input / Output
PutAccountDetails
Command API Reference / Input / Output
PutAccountSendingAttributes
Command API Reference / Input / Output
PutAccountSuppressionAttributes
Command API Reference / Input / Output
PutAccountVdmAttributes
Command API Reference / Input / Output
PutConfigurationSetDeliveryOptions
Command API Reference / Input / Output
PutConfigurationSetReputationOptions
Command API Reference / Input / Output
PutConfigurationSetSendingOptions
Command API Reference / Input / Output
PutConfigurationSetSuppressionOptions
Command API Reference / Input / Output
PutConfigurationSetTrackingOptions
Command API Reference / Input / Output
PutConfigurationSetVdmOptions
Command API Reference / Input / Output
PutDedicatedIpInPool
Command API Reference / Input / Output
PutDedicatedIpPoolScalingAttributes
Command API Reference / Input / Output
PutDedicatedIpWarmupAttributes
Command API Reference / Input / Output
PutDeliverabilityDashboardOption
Command API Reference / Input / Output
PutEmailIdentityConfigurationSetAttributes
Command API Reference / Input / Output
PutEmailIdentityDkimAttributes
Command API Reference / Input / Output
PutEmailIdentityDkimSigningAttributes
Command API Reference / Input / Output
PutEmailIdentityFeedbackAttributes
Command API Reference / Input / Output
PutEmailIdentityMailFromAttributes
Command API Reference / Input / Output
PutSuppressedDestination
Command API Reference / Input / Output
SendBulkEmail
Command API Reference / Input / Output
SendCustomVerificationEmail
Command API Reference / Input / Output
SendEmail
Command API Reference / Input / Output
TagResource
Command API Reference / Input / Output
TestRenderEmailTemplate
Command API Reference / Input / Output
UntagResource
Command API Reference / Input / Output
UpdateConfigurationSetEventDestination
Command API Reference / Input / Output
UpdateContact
Command API Reference / Input / Output
UpdateContactList
Command API Reference / Input / Output
UpdateCustomVerificationEmailTemplate
Command API Reference / Input / Output
UpdateEmailIdentityPolicy
Command API Reference / Input / Output
UpdateEmailTemplate
Command API Reference / Input / Output