Web APIでスケジュール配信する方法を教えてください

Web APIでスケジュール配信するには、send_atパラメータを使って配信予定日時をUNIX時間形式で指定します。2022年7月20日 10:00に配信するメール送信リクエストの例は以下の通りです。

{

  "personalizations": [

    {

      "to": [

        {

          "email": "to@example.com"

        }

      ],

      "subject": "テストメール"

    }

  ],

  "from": {

    "email": "from@example.com"

  },

  "content": [

    {

      "type": "text/plain",

      "value": "スケジュール配信のテストです。"

    }

  ],

  "send_at": 1658278800

}

ただし、以下の点に注意が必要です。

  • 指定できる配信予定日時の上限は72時間後です。
  • 過去の日時を指定した場合、すぐにメールが送信されます。

また、必須ではありませんが、メール送信リクエストで「バッチID( batch_id )」を指定しておくとスケジュール配信をキャンセルできるので安心です。バッチIDを指定して配信をキャンセルする手順は以下の通りです。

  1. Generate Batch IDエンドポイントにアクセスし、バッチIDを生成する
    ※バッチIDの有効期間は生成後10日間(864,000秒)ですのでご注意ください。
  2. メール送信リクエストでバッチIDを指定する

    {

      "personalizations": [

        {

          "to": [

            {

              "email": "to@example.com"

            }

          ],

          "subject": "テストメール"

        }

      ],

      "from": {

        "email": "from@example.com"

      },

      "content": [

        {

          "type": "text/plain",

          "value": "スケジュール配信のテストです。"

        }

      ],

      "send_at": 1658278800,

      "batch_id": “ABCDEFGH”

    }

  3. 配信予定日時の10分前までにCancel or pause a scheduled sendエンドポイントにアクセスし、スケジュール配信をキャンセルする
    ※配信予定日時の10分前を過ぎたキャンセルは動作が保証されません。

    {

      "batch_id": "ABCDEFGH",

      "status": "cancel"

    }