メインコンテンツへスキップ
見出し画像
Photo byshunsukesatake

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

    Nobuyuki Watanabe

    今回で全 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 のトップページはこちら

     
     
     
    Salesforce Marketing Cloud、Agentforce、Data Cloud、Salesforce 認定資格に関する実践的な情報を発信しています。これらの記事が、皆さまの学習や日々の業務に少しでもお役に立てば幸いです。