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

【第327回】 REST API を使って連絡先がどのジャーニーにいるかを調べる方法

    Nobuyuki Watanabe

    以前の記事で、Salesforceの非公式アプリ「Marketing Cloud Engagement Journeys for Salesforce」を取り上げ、Salesforce CRM の取引先責任者やリードのレコードページ上で、進行中のジャーニーを確認したり、特定の顧客をジャーニーから削除する方法について紹介しました。

    このアプリの活用例として、たとえばカスタマーセンターがクレーム対応中に「この顧客には今後メールを送らないようにしたい」となった場合でも、その顧客だけをすべての進行中ジャーニーから速やかに削除することが可能になります。

    画像

    では、「Marketing Cloud Engagement Journeys for Salesforce」が使えない環境では、どうすればよいのでしょうか?

    そのような場合には、REST APIを活用して該当するジャーニーを検索し、処理を行う方法があります。今回は、その具体的な手順をご紹介します。


    今回の記事では REST API を使用します。過去の記事「Salesforce Marketing Cloud で REST API を叩いてみよう」の Part.1 と Part.2 の記事で取得できる以下の 2 つが必要となりますので、事前に用意してください。

    ■ Part.1 の REST ベース URL
    ■ Part.2 の アクセストークン

    今回、以下のスコープがセットアップで選択されている必要があります。

    ■ Automation - Journeys - Read
    ■ Automation - Journeys - Execute
    ■ Automation - Journeys - Activate/Stop/Pause/Resume/Send/Schedule
    ■ Contacts - List and Subscribers - Read
    ■ Data - Data Extensions - Read

    ※ 
    Automation - Journeys - Read だけだと正しく検索できません。


    ある連絡先がどのジャーニーにいるかを調べる

    以下を Talend API Tester や Postman で実行してください。

    --- スコープ
    Automation - Journeys - Read
    Automation - Journeys - Execute
    Automation - Journeys - Activate/Stop/Pause/Resume/Send/Schedule
    Contacts - List and Subscribers - Read
    Data - Data Extensions - Read
    
    --- メソッド 
    POST 
    
    --- エンドポイント
    [REST ベース URL].rest.marketingcloudapis.com/interaction/v1/interactions/contactMembership
    
    --- ヘッダー 
    Content-Type:application/json 
    Authorization:Bearer [アクセストークン] 
    
    --- ボディ
    {
       "ContactKeyList":["BOR501", "0035Y000072MKdIQAW", "ContactKey_3"]
    }

    今回は、"BOR501", "0035Y000072MKdIQAW", "ContactKey_3" の 3 名分を同時に検索していますが、同じ書き方で最大 50 名までを検索できます。

    検索結果

    以下のように表示されます。上段(contactMemberships)を展開することで検索した連絡先がジャーニーのどのバージョンにいるかの結果が表示され、下段(contactNotFound)には、現在のジャーニーには存在していない連絡先キーが表示されます。

    画像

    ちなみに、ここでは definitionKey が表示されるだけで、ジャーニー名などは表示されません。そこで definitionKey からジャーニー名を探す必要があります。


    ジャーニー名を調べる

    上で検索した結果から、definitionKey をコピーして、下のエンドポイントのパラメーターに貼り付けます。以下を Talend API Tester や Postman で実行してください。

    --- スコープ
    Automation - Journeys - Read
    Automation - Journeys - Execute
    Automation - Journeys - Activate/Stop/Pause/Resume/Send/Schedule
    Contacts - List and Subscribers - Read
    Data - Data Extensions - Read
    
    --- メソッド 
    GET
    
    --- エンドポイント
    [REST ベース URL].rest.marketingcloudapis.com/interaction/v1/interactions/key:28f23a58-3797-31f4-6e69-63fc8c642f34
    
    --- ヘッダー 
    Content-Type:application/json 
    Authorization:Bearer [アクセストークン] 
    
    --- ボディ
    なし

    検索結果

    これで結果が表示されます。「Journey 008」というジャーニー名であることが分かります。

    画像

    ここまでの事は、前の記事の「Marketing Cloud Engagement Journeys for Salesforce」の方でも、同じ結果が出ていることが分かります。

    画像

    連絡先をジャーニーから削除する

    さて、ここからジャーニーから連絡先を削除する方法は 2 つあります。

    1. ジャーニー名が分かったので、Marketing Cloud の Journey Builder よりジャーニーに遷移して「健全性」から削除する

    2. REST API を使用して削除する

    1. ジャーニーに遷移して「健全性」から削除する方法

    「Journey 008」のジャーニーで「健全性」のボタンをクリックします。

    画像

    「連絡先キー」で検索します。

    画像

    結果が表示されたら「ジャーニーから削除」をクリックして削除します。

    画像

    注意:健全性からの削除は、ジャーニーの履歴機能を使用しているため、過去 30 日以内の結果しか返しません。すでに 30 日を超えており表示されない場合は、REST API 使用して削除ください。

    2. REST API を使用して削除する方法

    以下を Talend API Tester や Postman で実行してください。

    --- スコープ
    Automation - Journeys - Read
    Automation - Journeys - Execute
    Automation - Journeys - Activate/Stop/Pause/Resume/Send/Schedule
    Contacts - List and Subscribers - Read
    Data - Data Extensions - Read
    
    --- メソッド 
    POST 
    
    --- エンドポイント
    [REST ベース URL].rest.marketingcloudapis.com/interaction/v1/interactions/contactexit
    
    --- ヘッダー 
    Content-Type:application/json 
    Authorization:Bearer [アクセストークン] 
    
    --- ボディ
    [
      {
        "ContactKey": "0035Y000072MKdIQAW",
        "DefinitionKey": "28f23a58-3797-31f4-6e69-63fc8c642f34"
      }
    ]

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

    これらの仕組みは Talend API Tester や Postman に一度作成してしまえば、連絡先キーを入れ替えるだけで繰り返し使用ができますので、一度仕組みを作ってしまうことをオススメします。

    今回は以上です。


    次の記事はこちら

    前回の記事はこちら

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

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