

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

# リスト管理の使用
<a name="sending-email-list-management"></a>

Amazon SES にはリスト管理機能があります。つまり、カスタマーは連絡先リストと呼ばれる独自のメーリングリストを管理できます。*連絡先リスト*は、特定の 1 つ以上のトピックを購読したすべての連絡先を保存できるリストです。*連絡先*は、E メールを受信しているエンドユーザーです。*トピック*は、リスト内の関心グループ、テーマ、またはラベルです。リストには、複数のトピックを含めることができます。

Amazon SES API v2の [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListContacts.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListContacts.html) オペレーションを使用して、特定のトピックを購読している連絡先のリストを取得し、[https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_SendEmail.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_SendEmail.html) オペレーションを使用して、 連絡先に E メールを送信することができます。

サブスクリプション管理の詳細については、「[サブスクリプションの使用](sending-email-subscription-management.md)」を参照してください。

## リスト管理の概要
<a name="list-management-overview"></a>

リスト管理を使用する場合は、次の要素を考慮する必要があります。
+ リストの作成中にリストトピックを指定できます。
+ ごとに許可される連絡先リストは 1 つだけです AWS アカウント。
+ リストには、最大 20 個のトピックを設定できます。
+ 既存の連絡先リストを更新できます。これには、リストへの新しいトピックの追加、リストからの連絡先の追加と削除、リストまたはトピックの連絡先設定の更新が含まれます。
+ トピックの表示名や説明などのトピックメタデータを更新できます。
+ 連絡先リストの連絡先、トピックを購読した連絡先、1つのトピックの購読を取り消した連絡先、およびリスト内のすべてのトピックの購読を取り消した連絡先のリストを取得できます。
+ 既存の連絡先リストを SES にインポートするには、[https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_CreateImportJob.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_CreateImportJob.html) APIを使用します。
+ SES は、連絡先リストに登録されていない連絡先に送信されるメッセージのバウンスイベントを発行します。詳細については、「[サブスクリプションの使用](sending-email-subscription-management.md)」を参照してください。
+ 各連絡先には、その連絡先に関する情報を格納するための属性を関連付けることができます。

## リスト管理の設定
<a name="configuring-list-management"></a>

次の操作を使用して、リスト管理機能を設定できます。連絡先リストおよび連絡先操作の完全なリストは、[Amazon SES API v2 リファレンス](https://docs.aws.amazon.com/ses/latest/APIReference-V2/Welcome.html)を参照してください。

### 連絡先リストを作成する
<a name="configuring-list-management-create-contact-list"></a>

SES API v2 の [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_CreateContactList.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_CreateContactList.html) オペレーションを使用して、連絡先リストを作成できます。 AWS CLIを使用すると、この設定をすばやく簡単に設定できます。のインストールと設定の詳細については AWS CLI、 [AWS Command Line Interface ユーザーガイド](https://docs.aws.amazon.com/cli/latest/userguide/)を参照してください。

**を使用して連絡先リストを作成するには AWS CLI**
+ コマンドラインで以下のコマンドを入力します。

  ```
  aws sesv2 create-contact-list --cli-input-json file://{{CONTACT-LIST-JSON}}
  ```

  上記のコマンドで、{{CONTACT-LIST-JSON}} を [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_CreateContactList.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_CreateContactList.html) リクエストの JSON ファイルへのパスに置き換えます。

  リクエストのための `CreateContactList` input JSON ファイルの例を次に示します。

  ```
  {
      "ContactListName": "ExampleContactListName",
      "Description": "Creating a contact list example",
      "Topics": [
       {
           "TopicName": "Sports",
           "DisplayName": "Sports Newsletter",
           "Description": "Sign up for our free newsletter to receive updates on all sports.",
           "DefaultSubscriptionStatus": "OPT_OUT"
       },
       {
           "TopicName": "Cycling",
           "DisplayName": "Cycling newsletter",
           "Description": "Never miss a cycling update by subscribing to our newsletter.",
           "DefaultSubscriptionStatus": "OPT_IN"
       },
       {
           "TopicName": "NewProducts",
           "DisplayName": "New products",
           "Description": "Hear about new products by subscribing to this mailing list.",
           "DefaultSubscriptionStatus": "OPT_IN"
       },
       {
           "TopicName": "DailyUpdates",
           "DisplayName": "Daily updates",
           "Description": "Start your day with sport updates, Monday through Friday.",
           "DefaultSubscriptionStatus": "OPT_OUT"
       }
      ]
  }
  ```

### 連絡先を作成
<a name="configuring-list-management-create-contact"></a>

SES API v2 の [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_CreateContact.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_CreateContact.html) オペレーションを使用して、連絡先を作成できます。 AWS CLIを使用すると、この設定をすばやく簡単に設定できます。のインストールと設定の詳細については AWS CLI、 [AWS Command Line Interface ユーザーガイド](https://docs.aws.amazon.com/cli/latest/userguide/)を参照してください。

**を使用して連絡先を作成するには AWS CLI**
+ コマンドラインで以下のコマンドを入力します。

  ```
  aws sesv2 create-contact --cli-input-json file://{{CONTACT-JSON}}
  ```

  上記のコマンドで、{{CONTACT-JSON}} を [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_CreateContact.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_CreateContact.html) リクエストの JSON ファイルへのパスに置き換えます。

  リクエストのための `CreateContact` input JSON ファイルの例を次に示します。

  ```
  {
      "ContactListName": "ExampleContactListName",
      "EmailAddress": "example@amazon.com",
      "UnsubscribeAll": false,
      "TopicPreferences": [
          {
              "TopicName": "Sports",
              "SubscriptionStatus": "OPT_IN"
          }
      ],
      "AttributesData": "{\"Name\": \"John\", \"Location\": \"Seattle\"}"
  }
  ```

  上の例で、`false` の `UnsubscribeAll` 値は、連絡先がすべてのトピックの購読を解除していないことを示し、`true` の値は、連絡先がすべてのトピックの購読を解除したことを意味します。

  `TopicPreferences` には、連絡先のトピックへのサブスクリプションステータスに関する情報が含まれています。前述の例では、連絡先は「*スポーツ*」トピックにオプトインしており、「*スポーツ*」トピックへのすべての E メールを受信します。

  `AttributesData` は JSON フィールドで、連絡先に関するメタデータを格納できます。有効な JSON オブジェクトである必要があります。

### 連絡先リストへの連絡先の一括インポート
<a name="configuring-list-management-bulk-import"></a>

アドレスを手動で一括追加するには、最初に、連絡先を Amazon S3 オブジェクトにアップロードしてから、SES API v2の [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_CreateImportJob.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_CreateImportJob.html) オペレーションまたは SES コンソールを使用します。詳細については、「[アカウントレベルのサプレッションリストに E メールアドレスを一括で追加](sending-email-suppression-list.md#sending-email-suppression-list-manual-add-bulk)」を参照してください。

連絡先をインポートする前に、連絡先リストを作成する必要があります。

**注記**  
ImportJob ごとに、最大 100 万件の連絡先を連絡先リストに追加できます。

連絡先リストに連絡先を一括で追加するには、次の手順を実行します。
+ 連絡先を CSV 形式または JSON 形式で Amazon S3 オブジェクトにアップロードします。

  **CSV 形式**

  Amazon S3 にアップロードされるファイルの最初の行は、ヘッダー行である必要があります。

  `topicPreferences` オブジェクトは、CSV 形式用にフラット化する必要があります。`topicPreferences` のすべてのトピックには、個別のヘッダーフィールドがあります。

  連絡先リストに一括で連絡先を追加するための CSV 形式の例：

  ```
  emailAddress,unsubscribeAll,attributesData,topicPreferences.Sports,topicPreferences.Cycling
  example1@amazon.com,false,{"Name": "John"},OPT_IN,OPT_OUT
  example2@amazon.com,true,,OPT_OUT,OPT_OUT
  ```

  **JSON 形式**

  newline-delimited JSON ファイルのみがサポートされています。この形式で、各行は 1 つの連絡先情報を含む完全な JSON オブジェクトです。

  連絡先リストに一括で連絡先を追加するための JSON 形式の例：

  ```
  {
       "emailAddress": "example1@amazon.com",
       "unsubscribeAll": false,
       "attributesData": "{\"Name\":\"John\"}",
       "topicPreferences": [
        {
            "topicName": "Sports",
            "subscriptionStatus": "OPT_IN"
        },
        {
            "topicName": "Cycling",
            "subscriptionStatus": "OPT_OUT"
        }
       ]
  }
  {
       "emailAddress": "example2@amazon.com",
       "unsubscribeAll": true,
       "topicPreferences": [
        {
            "topicName": "Sports",
            "subscriptionStatus": "OPT_OUT"
        },
        {
            "topicName": "Cycling",
            "subscriptionStatus": "OPT_OUT"
        }
       ]
  }
  ```

  前述の例では{{example1@amazon.com}}および{{example2@amazon.com}}を、連絡先リストに追加する E メールアドレスに置き換えます。`attributesData` の値を、連絡先の特定の値に置き換えます。また、{{スポーツ}}および{{サイクリング}}を、連絡先に適用する `topicName` に置き換えます。使用可能な `topicPreferences` は {{OPT\_IN}} および {{OPT\_OUT}} です。

  連絡先を CSV 形式または JSON 形式で Amazon S3 オブジェクトにアップロードする場合、次の属性がサポートされます。    
[See the AWS documentation website for more details](http://docs.aws.amazon.com/ja_jp/ses/latest/dg/sending-email-list-management.html)
+  Amazon S3 オブジェクトを読み込む許可を SES に与える。

  次のポリシーは、Amazon S3 バケットに適用されると、SES にそのバケットを読み込む許可を与えます。Amazon S3 バケットの添付ポリシーの詳細については、*Amazon Simple Storage Service ユーザーガイド* の「[バケットポリシーとユーザーポリシーの使用](https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-iam-policies.html) 」を参照してください。
+ SES に AWS KMS キーを使用するアクセス許可を付与します。

  Amazon S3 オブジェクトが AWS KMS キーで暗号化されている場合は、KMS キーを使用するためのアクセス許可を Amazon SES に付与する必要があります。SES は、カスタマー管理キーからのみ許可を得ることができ、デフォルトの KMS キーからは許可を得られません。キーのポリシーにステートメントを追加することで、カスタマーマネージドキーを使用するための許可を SES に付与する必要があります。

  SES がカスタマー管理キーを使用できるようにするために SES に次のポリシーステートメントを貼り付けます。

  ```
  {
     "Sid": "AllowSESToDecrypt", 
     "Effect": "Allow",
     "Principal": {
         "Service":"ses.amazonaws.com"
     },
     "Action": [
         "kms:Decrypt", 
     ],
     "Resource": "*"
  }
  ```
+ [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_CreateImportJob.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_CreateImportJob.html) オペレーションを SES API v2 で使用します。

**注記**  
次の例では、 AWS CLIがインストール済みであるものとします。のインストールと設定の詳細については AWS CLI、 [AWS Command Line Interface ユーザーガイド](https://docs.aws.amazon.com/cli/latest/userguide/)を参照してください。

コマンドラインで、以下のコマンドを入力します。{{s3バケット}} をAmazon S3 バケットの名前と置き換え、{{s3object}} をAmazon S3 オブジェクト名に置き換えます。

```
aws sesv2 create-import-job --import-destination ContactListDestination={ContactListName=ExampleContactListName,ContactListImportAction=PUT} --import-data-source S3Url="s3://s3bucket/s3object",DataFormat=CSV
```

## 例によるリスト管理のウォークスルー
<a name="configuring-list-management-list-contacts"></a>

次のウォークスルーでは、リスト管理を使用して連絡先を一覧表示し、`ListManagementOptions` を使用して E メールで連絡先リストとトピック名を指定する方法、およびサブスクリプションの解除リンクを挿入する方法の例を示します。

1. **を使用して連絡先を一覧表示 AWS CLI**する – [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListContacts.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListContacts.html)オペレーションを使用して、特定のトピックにサブスクライブしているすべての連絡先のリストを [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_SendEmail.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_SendEmail.html)オペレーションと組み合わせて取得できます。これにより、E メールを送信できます。

   コマンドラインで以下のコマンドを入力します。

   ```
   aws sesv2 list-contacts --cli-input-json file://{{LIST-CONTACTS-JSON}}
   ```

   上記のコマンドで、{{LIST-CONTACTS-JSON}} を [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListContacts.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListContacts.html) リクエストの JSON ファイルへのパスに置き換えます。

   リクエストのための `ListContacts` input JSON ファイルの例を次に示します。

   ```
   {
       "ContactListName": "ExampleContactListName",
       "Filter": {
           "FilteredStatus": "OPT_IN",
           "TopicFilter": {
               "TopicName": "Cycling",
               "UseDefaultIfPreferenceUnavailable": true
           }
       },
       "PageSize": 50
   }
   ```

   `FilteredStatus` には、フィルタリングする購読ステータス (`OPT_IN` または `OPT_OUT`) が表示されます。

   `TopicFilter` は、結果が欲しいトピックを指定するオプションのフィルターです。上記の例では「*Cycling*」です。

   `UseDefaultIfPreferenceUnavailable` は、`true` または `false` の値を持つことができます。`true` の場合、連絡先にトピックに対する明示的な設定がなければ、トピックのデフォルト設定が使用されます。`false` の場合、明示的に定めた設定を持つ連絡先のみがフィルタリングの対象となります。

1. **`ListManagementOptions` を有効にしてメールを送信** — 上記の [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListContacts.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListContacts.html)オペレーションを使用してリスト内の連絡先を一覧表示した後、[https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListManagementOptions.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListManagementOptions.html) ヘッダーを利用して、連絡先リストとトピック名を指定し、[https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_SendEmail.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_SendEmail.html) オペレーションを利用して各連絡先にメールを送信できます。

   `SendEmail` オペレーションで `ListManagementOptions` を使用するには、メールが属している [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListManagementOptions.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListManagementOptions.html) と [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListManagementOptions.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListManagementOptions.html) を含めます (`topicName` はオプションです):

   ```
   ListManagementOptions:
       String contactListName
       String topicName
   ```

   連絡先リストにない受信者の E メールアドレスへの `SendEmail` リクエストに `ListManagementOptions` を含めると、連絡先がリストに自動的に作成されます。

   連絡先リストに登録されていない連絡先にメールを送信した場合、SES はそのバウンスイベントを発行します。つまり、登録されていない連絡先への送信を回避するために `SendEmail` リクエストを更新する必要はありません。

1. **登録解除のリンクの場所を示す** – [https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListManagementOptions.html](https://docs.aws.amazon.com/ses/latest/APIReference-V2/API_ListManagementOptions.html) を利用する場合、SES を有効にし、`{{amazonSESUnsubscribeUrl}}` プレースホルダを使用して、SES で登録解除の URL を挿入する必要がある場所を指定して、E メールに登録解除のフッターリンクを追加するオプションがあります。プレースホルダの置き換えは、HTML および TEXT コンテンツタイプでのみサポートされます。プレースホルダは、最大 2 倍含めることができます。2 回以上使用した場合、最初の 2 つのオカレンスのみが置き換えられます。詳細については、「[サブスクリプションの使用](sending-email-subscription-management.md)」を参照してください。

   または、SMTPインターフェイスで E メールを送信しながら、`X-SES-LIST-MANAGEMENT-OPTIONS` ヘッダーを使用してリストとトピック名を指定します。

   SMTP インターフェイスを使用して E メールを送信するときにリストとトピック名を指定するには、次の E メールヘッダーをメッセージに追加します。

   `X-SES-LIST-MANAGEMENT-OPTIONS: {contactListName}; topic={topicName}`