翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
テンプレートを使用して、Amazon SES API でパーソナライズされた E メールを送信する
Amazon SES では、保存されたテンプレートを使用するか、インラインテンプレートを使用して、テンプレート化された E メールを送信できます。
-
保存済みテンプレート – Amazon SES v2 API の
CreateEmailTemplate
オペレーションを使用して SES で作成および保存されるTemplate
リソースを指します。 Amazon SES テンプレートには、書き込まれたコンテンツとインラインで変数 (プレースホルダー) を含む E メールの件名と本文が含まれています。SendEmail
またはSendBulkEmail
v2 API オペレーションを呼び出すときに、保存されたテンプレートの名前とテンプレート内のプレースホルダー変数への動的データが提供されます。保存されたテンプレートは簡単に再利用でき、同様の種類の E メールを送信する際の時間と労力を節約できます。各 E メールをゼロから作成する代わりに、基本構造と設計を一度作成するだけで済み、テンプレート内の動的コンテンツを更新するだけです。
-
インラインテンプレート –
Template
リソースは使用されませんが、変数 (プレースホルダー) を含む E メールの件名と本文は、これらのプレースホルダー変数の値とともに、SendEmail
または v2 APISendBulkEmail
オペレーションを呼び出すときにインラインで提供されます。インラインテンプレートは、SES アカウントでテンプレートリソースを管理する必要がなくなり、アプリケーションロジック内にテンプレートコンテンツを直接含めることができるため、統合プロセスを簡素化することで、一括 E メールを送信するプロセスを合理化します。あたりの 20,000 テンプレートの制限にはカウントされません AWS リージョン。
ストアドテンプレートを使用する場合、次の制限が適用されます。
-
それぞれに最大 20,000 個の E メールテンプレートを作成できます AWS リージョン。
-
各テンプレートは、テキストと HTML パートの両方を含めて、最大 500 KB のサイズまで可能です。
インラインテンプレートを使用する場合、次の制限が適用されます。
-
各入力 JSON ファイルは、テキスト部分と HTML 部分の両方を含めて、最大 1 MB のサイズにすることができます。
以下は、保存されたテンプレートとインラインテンプレートの両方に適用されます。
-
使用できる置換変数の数に制限はありません。
-
SendBulkEmail
オペレーションの呼び出しごとに、最大 50 個の送信先オブジェクトに E メールを送信できます。Destination
オブジェクトには、ToAddresses、CcAddresses、および BccAddresses で定義された複数の受信者を含めることができます。v2 API への 1 回の呼び出しで問い合わせることができる送信先の数は、アカウントの最大送信レートによって制限される場合があります。詳細については、「Amazon SES 送信制限の管理」を参照してください。
この章では、ストアドテンプレートとインラインテンプレートの両方を使用する例を含む手順について説明します。
注記
これらの手順では、 AWS CLIがすでにインストールされ、設定されていることを前提としています。のインストールと設定の詳細については AWS CLI、「 AWS Command Line Interface ユーザーガイド」を参照してください。
(オプション) パート 1: レンダリング失敗イベント通知を設定する
無効なパーソナライズコンテンツを含む E メールを送信する場合、Amazon SES はメッセージを受け入れることもありますが、配信することはできません。このため、パーソナライズされた E メールを送信する場合は、Amazon SNS を介してレンダリング失敗イベント通知を送信するように SES を設定する必要があります。レンダリング失敗イベント通知を受信した場合、無効なコンテンツが含まれていたメッセージを確認し、問題を修正して、もう一度メッセージを送信できます。
このセクションの手順はオプションですが、強くお勧めします。
レンダリング失敗イベント通知を設定するには
-
Amazon SNS トピックを作成する。手続きについては、Amazon Simple Notification Service デベロッパーガイドのトピックの作成を参照してください。
-
Amazon SNS トピックを購読します。たとえば、E メールでレンダリング失敗通知を受信する場合は、そのトピックを E メールエンドポイント (E メールアドレス) で購読する必要があります。
手順については、Amazon Simple Notification Service デベロッパーガイドのトピックを購読するを参照してください。
-
「イベント発行の Amazon SNS イベント送信先のセットアップ」の手順を完了して、設定セットをセットアップし、レンダリング失敗イベントを Amazon SNS トピックに発行します。
(オプション) パート 2: E メールテンプレートを作成する
保存されたテンプレートを使用する場合、このセクションでは、SES CreateEmailTemplate
v2 API オペレーションを使用してテンプレートを作成する方法を示します。インラインテンプレートを使用する場合は、このステップをスキップできます。
この手順は、 AWS CLIがすでにインストールされ、設定されていることを前提としています。のインストールと設定の詳細については AWS CLI、「 AWS Command Line Interface ユーザーガイド」を参照してください。
テンプレートを作成するには
-
テキストエディタで、新しいファイルを作成し、必要に応じてカスタマイズする次のコードを貼り付けます。
{ "TemplateName": "MyTemplate", "TemplateContent": { "Subject": "Greetings, {{name}}!", "Text": "Dear {{name}},\r\nYour favorite animal is {{favoriteanimal}}.", "Html": "<h1>Hello {{name}},</h1><p>Your favorite animal is {{favoriteanimal}}.</p>" } }
このコードには次のプロパティが含まれています。
-
TemplateName –
Template
リソースの名前。E メールを送信する場合に、この名前を参照します。 -
TemplateContent – 次の属性のコンテナ。
-
SubjectPart – E メールの件名。このプロパティには、置換タグが含まれる場合があります。これらのタグは以下のフォーマットを使用します:
{{tagname}}
。E メールを送信するとき、各宛先のtagname
に対する値を指定できます。 -
HtmlPart – E メールの HTML 本文。このプロパティには、置換タグが含まれる場合があります。前述の例には、
{{name}}
および{{favoriteanimal}}
の 2 つのタグが含まれます。 -
TextPart – E メールのテキスト本文。E メールクライアントに HTML コンテンツが表示されない受信者には、このバージョンの E メールが表示されます。このプロパティには代替タグが含まれている場合もあります。
-
-
-
上記の例をニーズに合わせてカスタマイズし、ファイルを
mytemplate.json
として保存します。 -
コマンドラインで、次のコマンドを入力して v2 API
CreateEmailTemplate
オペレーションを使用して新しいテンプレートを作成します。aws sesv2 create-email-template --cli-input-json file://
mytemplate.json
パート 3: パーソナライズされた E メールを送信する
次の 2 つの SES v2 API オペレーションを使用して、保存されたテンプレートまたはインラインテンプレートを使用して E メールを送信できます。
-
SendEmail
オペレーションは、カスタマイズされた E メールを 1 つの送信先オブジェクトに送信するのに役立ちます。v2 APIDestination
オブジェクトには、ToAddresses、CcAddresses、および BccAddresses プロパティを含めることができます。これらは任意の組み合わせで使用でき、同じ E メールを受信する 1 つ以上の E メールアドレスを含めることができます。 -
SendBulkEmail
オペレーションは、v2 API への 1 回の呼び出しで複数の送信先オブジェクトに一意の E メールを送信する場合に便利です。
このセクションでは、 を使用して AWS CLI 、これら両方の送信オペレーションを使用してテンプレート化された E メールを送信する方法の例を示します。
テンプレート化された E メールを 1 つの送信先オブジェクトに送信する
SendEmail
オペレーションを使用して、1 つの送信先オブジェクトで定義された 1 人以上の受信者に E メールを送信できます。Destination
オブジェクトにあるすべての受信者に、同じ E メールが届きます。
テンプレート化された E メールを単一の送信先オブジェクトに送信するには
-
保存済みテンプレートを使用するかインラインテンプレートを使用するかに応じて、テキストエディタに貼り付けるコード例を選択し、必要に応じてカスタマイズします。
-
上記の例をニーズに合わせてカスタマイズし、ファイルを
myemail.json
として保存します。 -
コマンドラインで、次の v2 API コマンドを入力して E メールを送信します。
aws sesv2 send-email --cli-input-json file://
myemail.json
テンプレート化された E メールを複数の送信先オブジェクトに送信する
SendBulkEmail
オペレーションを使用して、SES v2 API への 1 回の呼び出しで複数の送信先オブジェクトに E メールを送信できます。SES は、各Destination
オブジェクトの受信者に一意の E メールを送信します。
テンプレート化された E メールを複数の送信先オブジェクトに送信するには
-
保存済みテンプレートとインラインテンプレートのどちらを使用するかに応じて、テキストエディタに貼り付けるコード例を選択し、必要に応じてカスタマイズします。
-
前のステップのコードの値をニーズに合わせて変更し、ファイルを
mybulkemail.json
として保存します。 -
コマンドラインで、次の v2 API コマンドを入力して一括 E メールを送信します。
aws sesv2 send-bulk-email --cli-input-json file://
mybulkemail.json