Logo
メール
API 経由でメールを送信する

APIによるメール送信

顧客にメールを送信する別の方法として、メールAPI (opens in a new tab) も使用できます。

前提条件

NTT CPaaS でメールを送信するには、ドメインが NTT CPaaS システムで アクティブ である必要があります。 NTT CPaaS アカウントの (opens in a new tab) ユーザープロファイル でメールドメインを確認します。

電子メール メッセージの送信

1 つの宛先への単純な 1 つのメッセージの送信や、1 つの API 要求で多数の受信者へのパーソナライズされたメッセージのバッチ送信など、電子メール メッセージを送信するには、 電子メール メッセージの送信 (opens in a new tab) API を使用します。

フル機能のメール

フル機能のメールは、1つ以上の宛先アドレスに、添付ファイル付きの1つ以上のメールメッセージを送信する時に使用します。詳細については、フル機能のメールの送信 (opens in a new tab)に関するリファレンスドキュメントをご参照ください。

複数の受信者にメールを送信する

リクエストに複数のtoパラメータを含めることで、同じメールを複数の受信者アドレスに送信します。

複数の添付ファイルを含むメールを送信する

複数の添付ファイルを含むメールを送信するには、リクエストに複数の添付ファイルパラメーターを追加します。

複数の To、Cc、Bcc 受信者に電子メールを送信する

リクエストに複数の toccbcc パラメーターを含めることで、同じメールを複数の受信者アドレスに送信できます。

curl

    curl -s --user user:password \
    https://./3/send \
    -F from='Jane Smith ' \
    -F to='john.smith@somedomain.com' \
    -F to='jane.smith@somedomain.com' \
    -F cc='juliet.smith@somedomain.com' \
    -F cc='abram.smith@somedomain.com' \
    -F bcc='joy.smith@somedomain.com' \
    -F bcc='clare.smith@somedomain.com' \
    -F subject='Mail subject text' \
    -F text='Mail body text' \
    --form-string html='Html bodyRich HTML message body.' \
    -F attachment=@files/image1.jpg

パーソナライズされたメールをテンプレートを使って送信

リクエストの to パラメーター内にプレースホルダー値を追加して、パーソナライズされたメールを送信します。事前に定義されたテンプレートを使ってメッセージを送信する場合は、テンプレート識別子の値を templateIdパラメーターに渡します。テンプレートを管理するには、NTT CPaaSのWebインターフェイスに ログイン (opens in a new tab)します。

IP プール ID を含む電子メールの送信

IP プールを選択すると、すべての部門が同じ送信ドメインを使用している場合でも、部門固有の IP プールを介して電子メールを送信できます。このアプローチは、配信品質、運用、およびコンプライアンス上の利点を提供します。

複数の部門が IP プールを共有する場合、送信レピュテーションも共有されます。1 つの部門の送信プラクティスがその評判を損なうと、他のすべての部門に影響を与える可能性があります。各部門を独自の IP プールに割り当てることで、個々のレピュテーションを分離して保護できます。

送信に特定の IP プールを使用するには、 電子メール メッセージの送信 (opens in a new tab) API への要求に ipPoolId パラメーターを含めます。

カスタムmessageIDでメールを送信

リクエストのtoパラメーター内に一意のmessageIdを含めることで、カスタムのmessageIdを含むメールを送信します。

動的コンテンツを含むメールの送信

動的コンテンツを含む E メールを送信するには、次の 2 つの方法がサポートされています。

  1. テンプレート言語 (推奨)
    1. API 要求で templateLanguageVersion=2 を使用します。
    2. 置換、ロジック、および式のより強力な構文を許可します。
  2. 従来のハンドルバーヘルパー
    1. API 要求で templateLanguageVersion を設定しないでください。
    2. 下位互換性のために引き続きサポートされています。

完全な API リファレンスについては、「 フル機能のメール (opens in a new tab) API エンドポイントを送信する」を参照してください。

これら 2 つのアプローチの詳細については、以下のセクションを参照してください。

テンプレート言語

動的コンテンツ を含む E メールを送信するには、HTML コンテンツ内で テンプレート言語 を使用し、リクエストの to または default パラメーターにプレースホルダー値を定義します。

使用可能なテンプレート言語コンストラクトを追加して、置換条件ステートメント、またはイテレーションをメールテンプレートに直接処理できます。

詳細については、テンプレート言語を参照してください。

レガシーハンドルバーヘルパー

レガシーヘルパーは、おなじみの {{#helper}} ...{{/helper}} 構文を使用します。これらは引き続きサポートされていますが、将来を見据えたプロジェクトのために、新しいテンプレート言語に移行することをお勧めします。



MIME 形式を使用したメールの送信

API 経由で MIME (多目的インターネットメール拡張機能) 形式の電子メールを送信できます。MIME を使用して E メールコンテンツを送信すると、E メールの構成と送信の柔軟性が高まります。例えば:

  • 柔軟なメッセージフォーマット
  • インライン画像、HTML、添付ファイル

MIME 形式のコンテンツを含む E メールを送信するには、 MIME E メール送信 (opens in a new tab) API のリファレンス ドキュメントを参照してください。

メール配信レポート

[電子メール配信レポート (opens in a new tab)] 方法では、送信されたすべての電子メールの 1 回限りの配信レポート (DLR) を取得できます。E メール配信レポートは、送信されたすべての E メールのパフォーマンスに関する詳細情報と指標を提供します。レポートの数に制限を設定したり、特定のメッセージやキャンペーンをターゲットに設定したりできます。

配信レポートは、フェールオーバーロジックの作成や、配信パフォーマンスが最適でない場合のトラフィックの速度低下など、ワークフローを最適化できる重要な分析情報を提供します。

備考

配信レポートは一度だけ返されます。追加の配信レポートリクエストは、空のコレクションを返します。

以下に、メール配信レポートの取得例を示します。

メッセージIDによるレポートの取得

特定のメッセージを指定するには、messageId パラメーターを使用します。

例えば:

GET /email/4/reports?messageId=

最初の2つの配信レポートの取得

limitパラメータを使用して、レポートの最大数を定義します。

例えば:

GET /email/4/reports?limit=2 HTTP/1.1

一括IDによるレポートの取得

一意のレポートをリクエストしたい時は、bulkIdパラメーターを使用します。

例えば

GET /email/4/reports?bulkId=lrzkq6gatdkxouhrkgni HTTP/1.1

メールメッセージログ

[ 電子メール ログの取得 (opens in a new tab) ] メソッドを使用すると、電子メール メッセージのログを取得できます。この要求では、どのクエリ パラメーターも必須ではありません。パラメーターの任意の組み合わせを使用して、結果をフィルター処理できます。以下にいくつかの例を示します。

ログの可用性

メールログは、過去48時間分のみ利用できます。

応答形式

成功した場合、応答ヘッダーの HTTP ステータスコードは 200 OK になり、メッセージログが返されます。

承認せずにメッセージを送信しようとすると、HTTP ステータスコード 401 Unauthorizedの応答が返されます。

このメソッドを短期間に何度も使用すると、429 Too Many Requests ステータスコードが表示されます。これにより、レポートがより適切な場合にログを誤用するのを防ぐことができます。

複数のメッセージIDフィルターによるログの取得

フィールド fromtoおよび limitは、応答メッセージログをフィルタリングするために使用する1つのパラメーターを受け入れます。

日付範囲と一般的なステータスフィルターによるログの取得

フィールド sentSincegeneralStatusは、応答メッセージログをフィルタリングするために使用する1つのパラメーターを受け入れます。

一括IDによるログの取得

このメソッドを使用するには、メッセージログをフィルタリングするメールの応答で返されるbulkIdを使用します。

通知の追跡

トラッキング通知は、受信者がメールをどのように操作しているかを監視するのに役立ちます。エンゲージメントと配信品質に関する貴重な洞察を、特定のイベントについて通知することで提供します。

  • 開封 - 受信者がメールを開いたときにトリガーされます。
  • クリック - 受信者がメール内のURLをクリックしたときにトリガーされます。
  • 登録解除 - 受信者がそれ以降の電子メールの受信をオプトアウトしたときにトリガーされます。
  • 苦情 - 受信者がメールをスパムとしてマークするか、プロバイダーに報告したときにトリガーされます。
  • 遅延バウンス - 受信者のサーバーによって最初に受け入れられた E メールが後で配信に失敗した場合にトリガーされます。

trackingUrl を渡すと、Infobip はこれらの通知をシステムに送り返します。通知ペイロードにはイベントに関する構造化データが含まれているため、自動的に処理して、レポート、分析、または抑制ワークフローにフィードできます。

次のセクションでは、開封数、クリック数、登録解除数、苦情、遅延バウンスの通知ペイロードの例を示します。

開封通知

json
{
  "notificationType": "OPENED",
  "eventId": "8d2f8781-91fc-4473-9b0a-b12b51fafbe6",
  "domain": "some-domain.com",
  "recipient": "john.doe@some-domain.com",
  "sendDateTime": 1704106800000,
  "messageId": "14b734recsf69n8zkao5",
  "bulkId": "ikzzmbhu6223bxkhmyrj",
  "callbackData": "Callback data",
  "recipientInfo": {
    "deviceType": "Phone",
    "os": "iOS 12",
    "deviceName": "Apple"
  },
  "geoLocation": {
    "countryName": "Los Angeles",
    "city": "United States"
  },
  "entityId": "promotional-traffic-entity",
  "applicationId": "marketing-automation-application",
  "campaignReferenceId": "campaign-reference-123"
}
 

クリック通知

json
 
{
  "notificationType": "CLICKED",
  "eventId": "8d2f8781-91fc-4473-9b0a-b12b51fafbe6",
  "domain": "some-domain.com",
  "recipient": "john.doe@some-domain.com",
  "url": "https://www.somelink.com",
  "sendDateTime": 1704106800000,
  "messageId": "14b734recsf69n8zkao5",
  "bulkId": "ikzzmbhu6223bxkhmyrj",
  "callbackData": "Callback data",
  "recipientInfo": {
    "deviceType": "Phone",
    "os": "iOS 12",
    "deviceName": "Apple"
  },
  "geoLocation": {
    "countryName": "Los Angeles",
    "city": "United States"
  },
  "entityId": "promotional-traffic-entity",
  "applicationId": "marketing-automation-application",
  "campaignReferenceId": "campaign-reference-123"
}
 

配信停止通知

json
 
{
  "notificationType": "UNSUBSCRIBED",
  "eventId": "8d2f8781-91fc-4473-9b0a-b12b51fafbe6",
  "domain": "some-domain.com",
  "recipient": "john.doe@some-domain.com",
  "sendDateTime": 1704106800000,
  "messageId": "14b734recsf69n8zkao5",
  "bulkId": "ikzzmbhu6223bxkhmyrj",
  "callbackData": "Callback data",
  "recipientInfo": {
    "deviceType": "Phone",
    "os": "iOS 12",
    "deviceName": "Apple"
  },
  "geoLocation": {
    "countryName": "Los Angeles",
    "city": "United States"
  },
  "entityId": "promotional-traffic-entity",
  "applicationId": "marketing-automation-application",
  "campaignReferenceId": "campaign-reference-123"
}
 

苦情通知

json
 
{
  "notificationType": "COMPLAINED",
  "eventId": "8d2f8781-91fc-4473-9b0a-b12b51fafbe6",
  "domain": "some-domain.com",
  "recipient": "john.doe@some-domain.com",
  "sender": "noreply@some-domain.com",
  "sendDateTime": 1704106800000,
  "messageId": "14b734recsf69n8zkao5",
  "bulkId": "ikzzmbhu6223bxkhmyrj",
  "callbackData": "Callback data",
  "entityId": "promotional-traffic-entity",
  "applicationId": "marketing-automation-application",
  "campaignReferenceId": "campaign-reference-123"
}
 

遅延バウンス通知

json
 
{
  "notificationType": "LATE_BOUNCE",
  "eventId": "8d2f8781-91fc-4473-9b0a-b12b51fafbe6",
  "domain": "some-domain.com",
  "recipient": "john.doe@some-domain.com",
  "sender": "noreply@some-domain.com",
  "sendDateTime": 1704106800000,
  "messageId": "14b734recsf69n8zkao5",
  "bulkId": "ikzzmbhu6223bxkhmyrj",
  "callbackData": "Callback data",
  "entityId": "promotional-traffic-entity",
  "applicationId": "marketing-automation-application",
  "campaignReferenceId": "campaign-reference-123"
}
 

Logo

ご不明点は

サポートまでお問い合わせ

ください

© NTTCom Online Marketing Solutions Corporation