AWS SDK for JavaScript V3 APIリファレンスガイドでは、バージョン 3 (V3) のすべてのAPIオペレーションについて詳しく説明しています AWS SDK for JavaScript 。
翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
Amazon での E メールテンプレートの使用 SES
この Node.js コード例は以下を示しています。
すべてのEメールテンプレートの一覧表を取得する方法
E メールテンプレートを取得して更新する方法
E メールテンプレートを作成して削除する方法
Amazon SESでは、E メールテンプレートを使用してパーソナライズされた E メールメッセージを送信できます。Amazon で E メールテンプレートを作成して使用する方法の詳細についてはSES、Amazon SES Simple Email Service デベロッパーガイドの「Amazon を使用したパーソナライズされた E API メールの送信」を参照してください。
シナリオ
この例では、一連の Node.js モジュールを使用して E メールテンプレートを操作します。Node.js モジュールは、 SDKの を使用して JavaScript 、SES
クライアントクラスの次のメソッドを使用して E メールテンプレートを作成および使用します。
前提条件タスク
この例をセットアップして実行するには、まず次のタスクを完了する必要があります。
-
これらのノード TypeScript 例を実行するようにプロジェクト環境を設定し、必要な AWS SDK for JavaScript モジュールとサードパーティモジュールをインストールします。「」の指示に従ってください GitHub
。
-
ユーザーの認証情報を使用して、共有設定ファイルを作成します。共有認証情報ファイルの提供の詳細については、「」および「ツールリファレンスガイド」の「共有設定ファイルと認証情報ファイル」を参照してください。 AWS SDKs
重要
これらの例は、 ECMAScript6 () を使用してクライアントサービスオブジェクトとコマンドをインポート/エクスポートする方法を示していますES6。
これには Node.js バージョン 13.x 以降が必要です。Node.js の最新バージョンをダウンロードしてインストールするには、「Node.js ダウンロード
」を参照してください。 CommonJS 構文を使用する場合は、「JavaScript ES6/CommonJS 構文」を参照してください。
Eメールテンプレートの一覧表示
この例では、Node.js モジュールを使用して、Amazon で使用する E メールテンプレートを作成しますSES。
libs
ディレクトリを作成し、ファイル名sesClient.js
でNode.js モジュールを作成します。以下のコードをコピーして貼り付けると、Amazon SESクライアントオブジェクトが作成されます。置換 REGION
を AWS リージョンで使用します。
import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "us-east-1"; // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };
このサンプルコードは、 にあります GitHub
ses_listtemplates.js
というファイル名で Node.js モジュールを作成します。必要なクライアントとパッケージのインストールを含め、前述のSDKように を設定します。
SES
クライアントクラスの ListTemplatesCommand
メソッドのパラメータを渡すオブジェクトを作成します。ListTemplatesCommand
メソッドを呼び出すには、パラメータを渡して Amazon SESクライアントサービスオブジェクトを呼び出します。
注記
この例では、必要な AWS Service V3 パッケージクライアント、V3 コマンドをインポートして使用し、非同期/待機パターンで send
メソッドを使用します。この例は、代わりに少し変更を加えてV2コマンドで作成できます。詳細については、「v3 コマンドの使用」を参照してください。
import { ListTemplatesCommand } from "@aws-sdk/client-ses"; import { sesClient } from "./libs/sesClient.js"; const createListTemplatesCommand = (maxItems) => new ListTemplatesCommand({ MaxItems: maxItems }); const run = async () => { const listTemplatesCommand = createListTemplatesCommand(10); try { return await sesClient.send(listTemplatesCommand); } catch (err) { console.log("Failed to list templates.", err); return err; } };
この例を実行するには、コマンドプロンプトで以下を入力します。Amazon はテンプレートのリストSESを返します。
node ses_listtemplates.js
このサンプルコードは、 にあります GitHub
E メールテンプレートの取得
この例では、Node.js モジュールを使用して、Amazon で使用する E メールテンプレートを取得しますSES。
libs
ディレクトリを作成し、ファイル名sesClient.js
でNode.js モジュールを作成します。以下のコードをコピーして貼り付けると、Amazon SESクライアントオブジェクトが作成されます。置換 REGION
を AWS リージョンで使用します。
import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "us-east-1"; // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };
このサンプルコードは、 にあります GitHub
ses_gettemplate.js
というファイル名で Node.js モジュールを作成します。必要なクライアントとパッケージのインストールを含め、前述のSDKように を設定します。
SES
クライアントクラスの GetTemplateCommand
メソッドに TemplateName
パラメータを渡すオブジェクトを作成します。GetTemplateCommand
メソッドを呼び出すには、パラメータを渡して Amazon SESクライアントサービスオブジェクトを呼び出します。
注記
この例では、必要な AWS Service V3 パッケージクライアント、V3 コマンドをインポートして使用し、非同期/待機パターンで send
メソッドを使用します。この例は、代わりに少し変更を加えてV2コマンドで作成できます。詳細については、「v3 コマンドの使用」を参照してください。
注記
置換 TEMPLATE_NAME
を返すテンプレートの名前に置き換えます。
import { GetTemplateCommand } from "@aws-sdk/client-ses"; import { getUniqueName } from "@aws-doc-sdk-examples/lib/utils/util-string.js"; import { sesClient } from "./libs/sesClient.js"; const TEMPLATE_NAME = getUniqueName("TemplateName"); const createGetTemplateCommand = (templateName) => new GetTemplateCommand({ TemplateName: templateName }); const run = async () => { const getTemplateCommand = createGetTemplateCommand(TEMPLATE_NAME); try { return await sesClient.send(getTemplateCommand); } catch (caught) { if (caught instanceof Error && caught.name === "MessageRejected") { /** @type { import('@aws-sdk/client-ses').MessageRejected} */ const messageRejectedError = caught; return messageRejectedError; } throw caught; } };
この例を実行するには、コマンドプロンプトで以下を入力します。Amazon はテンプレートの詳細SESを返します。
node ses_gettemplate.js
このサンプルコードは、 にあります GitHub
Eメールテンプレートの作成
この例では、Node.js モジュールを使用して、Amazon で使用する E メールテンプレートを作成しますSES。
libs
ディレクトリを作成し、ファイル名sesClient.js
でNode.js モジュールを作成します。以下のコードをコピーして貼り付けると、Amazon SESクライアントオブジェクトが作成されます。置換 REGION
を AWS リージョンで使用します。
import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "us-east-1"; // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };
このサンプルコードは、 にあります GitHub
ses_createtemplate.js
というファイル名で Node.js モジュールを作成します。必要なクライアントとパッケージのインストールを含め、前述のSDKように を設定します。
TemplateName
、HtmlPart
、SubjectPart
および TextPart
を含む、SES
クライアントクラスの CreateTemplateCommand
メソッドのパラメータを渡すオブジェクトを作成します。CreateTemplateCommand
メソッドを呼び出すには、パラメータを渡して Amazon SESクライアントサービスオブジェクトを呼び出します。
注記
この例では、必要な AWS Service V3 パッケージクライアント、V3 コマンドをインポートして使用し、非同期/待機パターンで send
メソッドを使用します。この例は、代わりに少し変更を加えてV2コマンドで作成できます。詳細については、「v3 コマンドの使用」を参照してください。
注記
置換 TEMPLATE_NAME
新しいテンプレートの名前、HtmlPart
E メールのHTMLタグ付けされたコンテンツ、および SubjectPart
E メールの件名の 。
import { CreateTemplateCommand } from "@aws-sdk/client-ses"; import { sesClient } from "./libs/sesClient.js"; import { getUniqueName } from "@aws-doc-sdk-examples/lib/utils/util-string.js"; const TEMPLATE_NAME = getUniqueName("TestTemplateName"); const createCreateTemplateCommand = () => { return new CreateTemplateCommand({ /** * The template feature in Amazon SES is based on the Handlebars template system. */ Template: { /** * The name of an existing template in Amazon SES. */ TemplateName: TEMPLATE_NAME, HtmlPart: ` <h1>Hello, {{contact.firstName}}!</h1> <p> Did you know Amazon has a mascot named Peccy? </p> `, SubjectPart: "Amazon Tip", }, }); }; const run = async () => { const createTemplateCommand = createCreateTemplateCommand(); try { return await sesClient.send(createTemplateCommand); } catch (err) { console.log("Failed to create template.", err); return err; } };
この例を実行するには、コマンドプロンプトで以下を入力します。テンプレートが Amazon に追加されますSES。
node ses_createtemplate.js
このサンプルコードは、 にあります GitHub
E メールテンプレートの更新
この例では、Node.js モジュールを使用して、Amazon で使用する E メールテンプレートを作成しますSES。
libs
ディレクトリを作成し、ファイル名sesClient.js
でNode.js モジュールを作成します。以下のコードをコピーして貼り付けると、Amazon SESクライアントオブジェクトが作成されます。置換 REGION
を AWS リージョンで使用します。
import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "us-east-1"; // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };
このサンプルコードは、 にあります GitHub
ses_updatetemplate.js
というファイル名で Node.js モジュールを作成します。必要なクライアントとパッケージのインストールを含め、前述のSDKように を設定します。
必要な TemplateName
パラメータを SES
クライアントクラスの UpdateTemplateCommand
メソッドに渡して、テンプレートで更新する Template
パラメータ値を渡すオブジェクトを作成します。UpdateTemplateCommand
メソッドを呼び出すには、パラメータを渡して Amazon SESサービスオブジェクトを呼び出します。
注記
この例では、必要な AWS Service V3 パッケージクライアント、V3 コマンドをインポートして使用し、非同期/待機パターンで send
メソッドを使用します。この例は、代わりに少し変更を加えてV2コマンドで作成できます。詳細については、「v3 コマンドの使用」を参照してください。
注記
置換 TEMPLATE_NAME
テンプレートの名前と HTML_PART
E メールのHTMLタグ付けされたコンテンツを含む 。
import { UpdateTemplateCommand } from "@aws-sdk/client-ses"; import { getUniqueName } from "@aws-doc-sdk-examples/lib/utils/util-string.js"; import { sesClient } from "./libs/sesClient.js"; const TEMPLATE_NAME = getUniqueName("TemplateName"); const HTML_PART = "<h1>Hello, World!</h1>"; const createUpdateTemplateCommand = () => { return new UpdateTemplateCommand({ Template: { TemplateName: TEMPLATE_NAME, HtmlPart: HTML_PART, SubjectPart: "Example", TextPart: "Updated template text.", }, }); }; const run = async () => { const updateTemplateCommand = createUpdateTemplateCommand(); try { return await sesClient.send(updateTemplateCommand); } catch (err) { console.log("Failed to update template.", err); return err; } };
この例を実行するには、コマンドプロンプトで以下を入力します。Amazon はテンプレートの詳細SESを返します。
node ses_updatetemplate.js
このサンプルコードは、 にあります GitHub
E メールテンプレートの削除
この例では、Node.js モジュールを使用して、Amazon で使用する E メールテンプレートを作成しますSES。
libs
ディレクトリを作成し、ファイル名sesClient.js
でNode.js モジュールを作成します。以下のコードをコピーして貼り付けると、Amazon SESクライアントオブジェクトが作成されます。置換 REGION
を AWS リージョンで使用します。
import { SESClient } from "@aws-sdk/client-ses"; // Set the AWS Region. const REGION = "us-east-1"; // Create SES service object. const sesClient = new SESClient({ region: REGION }); export { sesClient };
このサンプルコードは、 にあります GitHub
ses_deletetemplate.js
というファイル名で Node.js モジュールを作成します。必要なクライアントとパッケージのインストールを含め、前述のSDKように を設定します。
必要な TemplateName
パラメータを SES
クライアントクラスの DeleteTemplateCommand
メソッドに渡すオブジェクトを作成します。DeleteTemplateCommand
メソッドを呼び出すには、パラメータを渡して Amazon SESサービスオブジェクトを呼び出します。
注記
この例では、必要な AWS Service V3 パッケージクライアント、V3 コマンドをインポートして使用し、非同期/待機パターンで send
メソッドを使用します。この例は、代わりに少し変更を加えてV2コマンドで作成できます。詳細については、「v3 コマンドの使用」を参照してください。
注記
置換 TEMPLATE_NAME
削除するテンプレートの名前。
import { DeleteTemplateCommand } from "@aws-sdk/client-ses"; import { getUniqueName } from "@aws-doc-sdk-examples/lib/utils/util-string.js"; import { sesClient } from "./libs/sesClient.js"; const TEMPLATE_NAME = getUniqueName("TemplateName"); const createDeleteTemplateCommand = (templateName) => new DeleteTemplateCommand({ TemplateName: templateName }); const run = async () => { const deleteTemplateCommand = createDeleteTemplateCommand(TEMPLATE_NAME); try { return await sesClient.send(deleteTemplateCommand); } catch (err) { console.log("Failed to delete template.", err); return err; } };
この例を実行するには、コマンドプロンプトで以下を入力します。Amazon はテンプレートの詳細SESを返します。
node ses_deletetemplate.js
このサンプルコードは、 にあります GitHub