を使用した Amazon SES の例 AWS CLI - AWS SDKコードの例

Doc AWS SDK ExamplesWord リポジトリには、さらに多くの GitHub の例があります。 AWS SDK

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

を使用した Amazon SES の例 AWS CLI

次のコード例は、Amazon SES AWS Command Line Interface で を使用してアクションを実行し、一般的なシナリオを実装する方法を示しています。

アクションはより大きなプログラムからのコードの抜粋であり、コンテキスト内で実行する必要があります。アクションは個々のサービス機能を呼び出す方法を示していますが、コンテキスト内のアクションは、関連するシナリオで確認できます。

各例には、完全なソースコードへのリンクが含まれています。ここでは、コンテキストでコードを設定および実行する方法の手順を確認できます。

トピック

アクション

次の例は、delete-identity を使用する方法を説明しています。

AWS CLI

ID を削除するには

次の例では、 delete-identity コマンドを使用して、Amazon SES で検証された ID のリストから ID を削除します。

aws ses delete-identity --identity user@example.com

検証された ID の詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES での E メールアドレスとドメインの検証」を参照してください。

  • API の詳細については、AWS CLI 「 コマンドリファレンス」のDeleteIdentity」を参照してください。

次のコード例は、get-identity-dkim-attributes を使用する方法を示しています。

AWS CLI

ID のリストの Amazon SES Easy DKIM 属性を取得するには

次の例では、 get-identity-dkim-attributes コマンドを使用して、アイデンティティのリストの Amazon SES Easy DKIM 属性を取得します。

aws ses get-identity-dkim-attributes --identities "example.com" "user@example.com"

出力:

{ "DkimAttributes": { "example.com": { "DkimTokens": [ "EXAMPLEjcs5xoyqytjsotsijas7236gr", "EXAMPLEjr76cvoc6mysspnioorxsn6ep", "EXAMPLEkbmkqkhlm2lyz77ppkulerm4k" ], "DkimEnabled": true, "DkimVerificationStatus": "Success" }, "user@example.com": { "DkimEnabled": false, "DkimVerificationStatus": "NotStarted" } } }

検証のために、送信したことがない ID を使用してこのコマンドを呼び出した場合、その ID は出力に表示されません。

Easy DKIM の詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon DKIM の Easy SES」を参照してください。

  • API の詳細については、AWS CLI 「 コマンドリファレンス」のGetIdentityDkimAttributes」を参照してください。

次の例は、get-identity-notification-attributes を使用する方法を説明しています。

AWS CLI

ID のリストの Amazon SES 通知属性を取得するには

次の例では、 get-identity-notification-attributes コマンドを使用して、アイデンティティのリストの Amazon SES 通知属性を取得します。

aws ses get-identity-notification-attributes --identities "user1@example.com" "user2@example.com"

出力:

{ "NotificationAttributes": { "user1@example.com": { "ForwardingEnabled": false, "ComplaintTopic": "arn:aws:sns:us-east-1:EXAMPLE65304:MyTopic", "BounceTopic": "arn:aws:sns:us-east-1:EXAMPLE65304:MyTopic", "DeliveryTopic": "arn:aws:sns:us-east-1:EXAMPLE65304:MyTopic" }, "user2@example.com": { "ForwardingEnabled": true } } }

このコマンドは、E メールフィードバック転送のステータスと、該当する場合は、バウンス、苦情、配信通知が送信される Amazon SNS トピックの Amazon リソースネーム (ARNs) を返します。

検証のために、送信したことがない ID を使用してこのコマンドを呼び出した場合、その ID は出力に表示されません。

通知の詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES で通知を使用する」を参照してください。

次の例は、get-identity-verification-attributes を使用する方法を説明しています。

AWS CLI

ID のリストの Amazon SES 検証ステータスを取得するには

次の例では、 get-identity-verification-attributes コマンドを使用して、アイデンティティのリストの Amazon SES 検証ステータスを取得します。

aws ses get-identity-verification-attributes --identities "user1@example.com" "user2@example.com"

出力:

{ "VerificationAttributes": { "user1@example.com": { "VerificationStatus": "Success" }, "user2@example.com": { "VerificationStatus": "Pending" } } }

検証のために、送信したことがない ID を使用してこのコマンドを呼び出した場合、その ID は出力に表示されません。

検証された ID の詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES での E メールアドレスとドメインの検証」を参照してください。

次のコード例は、get-send-quota を使用する方法を示しています。

AWS CLI

Amazon SES の送信制限を取得するには

次の例では、 get-send-quota コマンドを使用して Amazon SES 送信制限を返します。

aws ses get-send-quota

出力:

{ "Max24HourSend": 200.0, "SentLast24Hours": 1.0, "MaxSendRate": 1.0 }

Max24HourSend は送信クォータで、24 時間内に送信できる E メールの最大数です。送信クォータには、期間の推移が反映されます。E メールを送信しようとするたびに、Amazon SES は過去 24 時間に送信された E メールの数をチェックします。送信済みのメールの合計数がクォータ未満であれば、送信リクエストは受理され、E メールが送信されます。

SentLast24Hours は、過去 24 時間に送信された E メールの数です。

MaxSendRate は、1 秒あたりに送信できる E メールの最大数です。

送信制限は、メッセージ数ではなく、受取人数に基づいていることに注意してください。例えば、受取人数が 10 人である E メールは、送信クォータに対しては 10 通とカウントされます。

詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES 送信制限の管理」を参照してください。

  • API の詳細については、AWS CLI 「 コマンドリファレンス」のGetSendQuota」を参照してください。

次の例は、get-send-statistics を使用する方法を説明しています。

AWS CLI

Amazon SES 送信統計を取得するには

次の例では、 get-send-statistics コマンドを使用して Amazon SES 送信統計を返します。

aws ses get-send-statistics

出力:

{ "SendDataPoints": [ { "Complaints": 0, "Timestamp": "2013-06-12T19:32:00Z", "DeliveryAttempts": 2, "Bounces": 0, "Rejects": 0 }, { "Complaints": 0, "Timestamp": "2013-06-12T00:47:00Z", "DeliveryAttempts": 1, "Bounces": 0, "Rejects": 0 } ] }

結果は、送信アクティビティの過去 2 週間を表すデータポイントのリストです。リスト内の各データポイントには、15 分間隔での統計が含まれています。

この例では、過去 2 週間にユーザーが送信した E メールが 15 分間隔で 2 回しかなかったため、データポイントは 2 つしかありません。

詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES 使用状況統計のモニタリング」を参照してください。

  • API の詳細については、AWS CLI 「 コマンドリファレンス」のGetSendStatistics」を参照してください。

次のコード例は、list-identities を使用する方法を示しています。

AWS CLI

特定の AWS アカウントのすべての ID (E メールアドレスとドメイン) を一覧表示するには

次の例では、 list-identities コマンドを使用して、Amazon SES での検証のために送信されたすべての ID を一覧表示します。

aws ses list-identities

出力:

{ "Identities": [ "user@example.com", "example.com" ] }

返されるリストには、検証ステータス (検証済み、検証保留中、失敗など) に関係なく、すべての ID が含まれます。

この例では、identity-type パラメータを指定しなかったため、E メールアドレスおよびドメインが返されます。

検証の詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES での E メールアドレスとドメインの検証」を参照してください。

  • API の詳細については、AWS CLI 「 コマンドリファレンス」のListIdentities」を参照してください。

次の例は、send-email を使用する方法を説明しています。

AWS CLI

Amazon SES を使用してフォーマットされた E メールを送信するには

以下の例では、send-email コマンドを使用してフォーマットされた E メールを送信しています。

aws ses send-email --from sender@example.com --destination file://destination.json --message file://message.json

出力:

{ "MessageId": "EXAMPLEf3a5efcd1-51adec81-d2a4-4e3f-9fe2-5d85c1b23783-000000" }

送信先とメッセージは、現在のディレクトリの .json ファイルに保存されている JSON データ構造です。これらのファイルは以下のとおりです。

destination.json:

{ "ToAddresses": ["recipient1@example.com", "recipient2@example.com"], "CcAddresses": ["recipient3@example.com"], "BccAddresses": [] }

message.json:

{ "Subject": { "Data": "Test email sent using the AWS CLI", "Charset": "UTF-8" }, "Body": { "Text": { "Data": "This is the message body in text format.", "Charset": "UTF-8" }, "Html": { "Data": "This message body contains HTML formatting. It can, for example, contain links like this one: <a class=\"ulink\" href=\"http://docs.aws.amazon.com/ses/latest/DeveloperGuide\" target=\"_blank\">Amazon SES Developer Guide</a>.", "Charset": "UTF-8" } } }

送信者と受信者の E メールアドレスを、使用したい E メールアドレスに置き換えます。送信者の E メールアドレスは Amazon SES で検証する必要があることに注意してください。Amazon SES への本番稼働アクセスが許可されるまで、受信者が Amazon SES メールボックスシミュレーターでない限り、各受信者の E メールアドレスも確認する必要があります。検証の詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES での E メールアドレスとドメインの検証」を参照してください。

出力のメッセージ ID は、send-email の呼び出しが成功したことを示しています。

E メールが届かない場合は、迷惑メールフォルダを確認してください。

フォーマットされた E メールの送信の詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES API を使用したフォーマットされた E メールの送信」を参照してください。

  • API の詳細については、AWS CLI 「 コマンドリファレンス」のSendEmail」を参照してください。

次のコード例は、send-raw-email を使用する方法を示しています。

AWS CLI

Amazon SES を使用して未加工の E メールを送信するには

次の例では、 send-raw-email コマンドを使用して TXT 添付ファイルを含む E メールを送信します。

aws ses send-raw-email --raw-message file://message.json

出力:

{ "MessageId": "EXAMPLEf3f73d99b-c63fb06f-d263-41f8-a0fb-d0dc67d56c07-000000" }

raw メッセージは、現在のディレクトリの という名前のファイルに保存された JSON データ構造message.jsonです。以下の要素が含まれます。

{ "Data": "From: sender@example.com\nTo: recipient@example.com\nSubject: Test email sent using the AWS CLI (contains an attachment)\nMIME-Version: 1.0\nContent-type: Multipart/Mixed; boundary=\"NextPart\"\n\n--NextPart\nContent-Type: text/plain\n\nThis is the message body.\n\n--NextPart\nContent-Type: text/plain;\nContent-Disposition: attachment; filename=\"attachment.txt\"\n\nThis is the text in the attachment.\n\n--NextPart--" }

ご覧のように、「Data」は、Attachment.txt と呼ばれる添付ファイルを含む、MIME 形式の未加工の E メールコンテンツ全体を含む 1 つの長い文字列です。

sender@example.com と recipient@example.com は、使用するアドレスに置き換えてください。送信者の E メールアドレスは Amazon SES で検証する必要があることに注意してください。Amazon SES への本番稼働アクセスが許可されるまで、受信者が Amazon SES メールボックスシミュレーターでない限り、受信者の E メールアドレスも確認する必要があります。検証の詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES での E メールアドレスとドメインの検証」を参照してください。

出力のメッセージ ID は、 send-raw-email への呼び出しが成功したことを示します。

E メールが届かない場合は、迷惑メールフォルダを確認してください。

未加工の E メールの送信の詳細については、「Amazon Simple Email Service デベロッパーガイド」の「Amazon SES API を使用した未加工の E メールの送信」を参照してください。

  • API の詳細については、AWS CLI 「 コマンドリファレンス」のSendRawEmail」を参照してください。

次のコード例は、set-identity-dkim-enabled を使用する方法を示しています。

AWS CLI

Amazon DKIM 検証済み ID の Easy SES を有効または無効にするには

次の例では、 set-identity-dkim-enabled コマンドを使用して、検証済みの E メールアドレスの DKIM を無効にします。

aws ses set-identity-dkim-enabled --identity user@example.com --no-dkim-enabled

Easy DKIM の詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon DKIM の Easy SES」を参照してください。

  • API の詳細については、AWS CLI 「 コマンドリファレンス」のSetIdentityDkimEnabled」を参照してください。

次のコード例は、set-identity-feedback-forwarding-enabled を使用する方法を示しています。

AWS CLI

Amazon SES 検証済み ID のバウンスと苦情の E メールフィードバック転送を有効または無効にするには

次の例では、 set-identity-feedback-forwarding-enabled コマンドを使用して、検証済みの E メールアドレスが E メールでバウンスと苦情の通知を受信できるようにします。

aws ses set-identity-feedback-forwarding-enabled --identity user@example.com --forwarding-enabled

Amazon SNS または E メールフィードバック転送のいずれかを介してバウンス通知と苦情通知を受け取る必要があるため、バウンス通知と苦情通知の両方に Amazon SNS トピックを選択した場合のみ、E メールフィードバック転送を無効にすることができます。

通知の詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES で通知を使用する」を参照してください。

次の例は、set-identity-notification-topic を使用する方法を説明しています。

AWS CLI

Amazon SNS が検証済み ID のバウンス、苦情、配信通知を発行する Amazon SES トピックを設定するには

次の例では、 set-identity-notification-topic コマンドを使用して、検証された E メールアドレスがバウンス通知を受信する Amazon SNS トピックを指定します。

aws ses set-identity-notification-topic --identity user@example.com --notification-type Bounce --sns-topic arn:aws:sns:us-east-1:EXAMPLE65304:MyTopic

通知の詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES で通知を使用する」を参照してください。

  • API の詳細については、AWS CLI 「 コマンドリファレンス」のSetIdentityNotificationTopic」を参照してください。

次の例は、verify-domain-dkim を使用する方法を説明しています。

AWS CLI

Amazon DKIM で DKIM 署名するための検証済みドメインの SES トークンを生成するには

次の例では、 verify-domain-dkim コマンドを使用して、Amazon DKIM で検証されたドメインの SES トークンを生成します。

aws ses verify-domain-dkim --domain example.com

出力:

{ "DkimTokens": [ "EXAMPLEq76owjnks3lnluwg65scbemvw", "EXAMPLEi3dnsj67hstzaj673klariwx2", "EXAMPLEwfbtcukvimehexktmdtaz6naj" ] }

DKIM を設定するには、返された DKIM トークンを使用して、Amazon Word がホストする Word パブリックキーを指す CNAME レコードでドメインの DKIM DNS設定を更新する必要がありますSES。詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon DKIM の Easy SES」を参照してください。

  • API の詳細については、AWS CLI 「 コマンドリファレンス」のVerifyDomainDkim」を参照してください。

次のコード例は、verify-domain-identity を使用する方法を示しています。

AWS CLI

Amazon SES でドメインを検証するには

以下の例では、verify-domain-identity コマンドを使用してドメインを認証しています。

aws ses verify-domain-identity --domain example.com

出力:

{ "VerificationToken": "eoEmxw+YaYhb3h3iVJHuXMJXqeu1q1/wwmvjuEXAMPLE" }

ドメインの検証を完了するには、返された検証トークンを含む TXT レコードをドメインの DNS 設定に追加する必要があります。詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES でのドメインの検証」を参照してください。

  • API の詳細については、AWS CLI 「 コマンドリファレンス」のVerifyDomainIdentity」を参照してください。

次の例は、verify-email-identity を使用する方法を説明しています。

AWS CLI

Amazon SES で E メールアドレスを確認するには

以下の例では、verify-email-identity コマンドを使用して E メールアドレスを認証しています。

aws ses verify-email-identity --email-address user@example.com

Amazon SES を使用して E メールを送信する前に、E メールを送信するアドレスまたはドメインを確認して、所有していることを証明する必要があります。本番稼働用アクセスがまだない場合は、Amazon SES メールボックスシミュレーターによって提供される E メールアドレスを除き、E メールを送信する E メールアドレスも確認する必要があります。

verify-email-identity が呼び出されると、E メールアドレスに検証 E メールが送信されます。ユーザーは、E メールのリンクをクリックして、検証プロセスを完了する必要があります。

詳細については、Amazon Simple Email Service デベロッパーガイドの「Amazon SES での E メールアドレスの検証」を参照してください。

  • API の詳細については、 AWS CLI コマンドリファレンスVerifyEmailIdentity」を参照してください。