見出し画像

【第42回】 Marketing Cloud REST API 超入門 Part.3 - リクエスト送信

今回で全 3 回に分けて書いてきた「Marketing Cloud REST API 超入門」の連載は、最終回となります。このシリーズでは、Marketing Cloud REST API の基本を一歩ずつ解説してきました。

これまでに扱った内容は以下の通りです。

① API 連携のインターフェース設定 ~ Talend API Tester のインストール
② 認証サーバーへ「アクセストークン」を要求
③ リソースサーバーへ「リクエスト」を送信

今回の Part.3 を実行するには以下が必要となります。
・ Part.1 の REST ベース URL
・ Part.2 の アクセストークン

今回の Part.3 では、実際に REST API を使用してリソースサーバーへリクエストを送信し、Marketing Cloud の機能を操作していきます。


■ リソースサーバーへ「リクエスト」を送信

今回は代表的なシナリオとして、Journey Builder で「API イベント」というエントリーソースを使ったジャーニーを作成し、API を使用してジャーニーをトリガーする手順を紹介します。

Step 1: データエクステンションの作成

まず、「API イベント」エントリーソース用のデータエクステンションを作成します。

標準データエクステンションで構いませんので、新規でデータエクステンションを作成してください

このデータエクステンションは「送信可能」で設定する必要があります

また、その購読者を「一度のみ」エントリーさせたい場合は、プライマリキーを設定してください「何度も」エントリーさせたい場合は、プライマリーキーの設定は不要です

そして、フィールドは「Id」「Email」「Name」「Eventdate」の 4 つで作成しました。このデータエクステンションに、API で連携された連絡先データが格納されます。

Step 2: Journey Builder の設定

次に、Journey Builder に移動し、「API イベント」エントリーソースを配置します。その後、以下の手順で設定を進めます。

「API イベント」エントリーソースをクリックして、「イベントを作成」をクリックしてください

表示される「データエクステンションの選択」をクリックします。

ここで、先ほど Step 1 で作成したデータエクステンションを選択します。

「完了」ボタンをクリックします。

この設定が完了しましたら、イベント定義キーが発行されますので、メモ帳などにコピペしておきます。「APIEvent-」の部分から必要です

その後は、メールアクティビティをセットして、すべてのジャーニーの設定が完了したら「アクテイブ化」ボタンをクリックしてください。

これで、ジャーニーはアクテイブ化されましたので、後は API を実行するだけとなります。

Step 3: Talend API Tester でのリクエスト送信

それでは Talend API Tester に移動して「リクエストを追加」をクリックしてください。

リクエストを新規で追加して「リクエストを開く」をクリックします。

メソッドから POST を選択します

エンドポイントに、Part.1 で取得した「REST ベース URL」を使って以下のように入力してください。

https://[REST ベース URL].rest.marketingcloudapis.com/interaction/v1/events

「ヘッダーを追加」をクリックします。

ヘッダーの左窓に「Auth」と入力して、サジェスチョンから Authorization を選択します

まず、ヘッダーの右窓に「Bearer」(ベアラー)と入力します

そして、Bearer の後ろに半角スペースを開けて、Part.2 で取得済みのアクセストークンを入力します

アクセストークンの有効期限は 18 分間です。期限切れの場合は、再度 Part.2 に戻ってアクセストークンを取得し直してください。

ボディに以下の JSON を貼り付けます。

{
  "contactKey": "連絡先キー",
  "eventDefinitionKey": "APIEvent- イベント定義キー",
  "data": {
    "id": "連絡先キー", // 上の連絡先キーと同じもので OK です
    "email": "メールアドレス",
    "name": "名前",
    "eventDate": " 2023/01/01 "
  }
}

入力が完了したら「送信」ボタンをクリックします。

レスポンスが 201 Created で返ってきたら成功です。

この設定は再利用できますので Talend API Tester に保存しておきましょう。

Step 4: 結果の確認と保存

Journey Builder に遷移し、1 件の連絡先がエントリーされていることを確認します。

また、エントリーソースのデータエクステンションにも、1 件格納されていることを確認します。成功です。

サンプルコードのまとめ

それでは、最後に、今回のサンプルコードをまとめておきます。

--- メソッド 
POST

--- エンドポイント
https://[REST ベース URL].rest.marketingcloudapis.com/interaction/v1/events

--- ヘッダー 
Content-Type:application/json 
Authorization:Bearer [アクセストークン] 

--- ボディ(サンプル)
{
  "contactKey": "連絡先キー",
  "eventDefinitionKey": "APIEvent- イベント定義キー",
  "data": {
    "id": "連絡先キー", // 上の連絡先キーと同じもので OK です
    "email": "メールアドレス",
    "name": "名前",
    "eventDate": " 2023/01/01 "
  }
}

<エラー対処のポイント>
・ "data" を記述した際、最後に「 , 」が残っているとエラーになります
・ 連絡先キーだけをプライマリーキーとして設定すると 2 回目以降のエントリー時に重複が発生してエラーとなります。
・ ジャーニーがアクティブ化していないとエラーになります。
・スコープが正しく設定されているかを確認してください。
<interaction/v1/events の場合>
■ AUTOMATION - Journeys - Read
■ CONTACTS - List and Subscribers - Read

以上です。


いかがでしたでしょうか?

これで、Marketing Cloud REST API の基本操作が完了しました。テスターを使って API を実行する流れがつかめたのではないでしょうか?このシリーズで扱わなかった他の API 機能については、別の機会にご紹介して行きます。

今回は以上です。


次の記事はこちら

前回の記事はこちら

私の note のトップページはこちら