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

【第77回】 REST API を使って Journey Builder の変更履歴を確認する方法

    Nobuyuki Watanabe

    誰かが Journey Builder の設定を変更したみたいだけど、変更した人が分からない・・・という経験ありませんか?このような場合に Journey Builder の変更履歴を確認できたら便利ですよね。今回はその方法をお知らせします。このような確認は REST API を使うことで実行できます。

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

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


    それでは Journey Builder の変更履歴を REST API を使って確認する手順を見て行きます。まずは 確認対象のジャーニーを特定するために Journey ID が必要となります。Journey ID を取得する方法は 2 つあります。

    1つ目の方法は、以下の SQL を使用して Journey ID を取得できます。

    SELECT JourneyID
    , VersionNumber
    , VersionID
    FROM _Journey
    WHERE JourneyName = '調べたいジャーニー名'

    ※ ちなみに、一度もアクティブ化していないドラフトのジャーニーであっても、変更履歴は取得できますが、そのジャーニーを一度でも「保存」していないと Journey ID 自体が生成されません。

    2 つ目の方法は、保存後、以下の図の箇所にジャーニー ID が発行されます。「%23」より後ろをコピーしてください。

    画像

    Journey ID を取得したら、Talend API Tester に移動します。新規リクエストを立ち上げてください。新規リクエストの画面を立ち上げたら、以下の情報を入力して、入力後に送信ボタンを押します。

    画像
    --- メソッド 
    GET
    
    --- エンドポイント
    [REST ベース URL].rest.marketingcloudapis.com/interaction/v1/interactions/[ジャーニーID]/audit/all?versionNumber=[バージョン番号] 
    
    --- ヘッダー
    Content-Type:application/json 
    Authorization:Bearer [アクセストークン] 

    今回、GET メソッドのためボディの入力はありません。すべてエンドポイントの URL 内で指示します。下にエンドポイントを抜き出して表記しました。

    - Scheme:https
    - Base URL:[REST base URL]
    - Path:/interactions/ [Journey ID] /audit/all
    - Query Parameter:versionNumber= [version number]

    まず「all」の部分に注目ですが、これを「all」とすれば、文字通りすべての種別の変更履歴が抽出されます。「all」以外の選択肢は、以下の種別がありますので、ある特定の種別の変更履歴だけを調べたい場合は「all」を以下のものに変更すれば、その種別の変更履歴だけを抽出できます。

    「all」以外の変更履歴の種別
    - create(作成)
    - modify(変更)
    - publish(検証とアクティブ化)
    - Stop(停止)
    - delete(削除)

    ※ 残念ながら「一時停止」と「再開」はこの変更履歴に含まれません。

    また、versionNumber の部分はパラメーターになっており、設定すれば、そのバージョン番号のものだけを確認できます。不要な場合は削除して下さい。通常は、現在稼働中のバージョンの履歴を調べたいと思うので、そのバージョンの番号を入れる形になります。


    ちなみに、この API で抽出できる内容としては、以下となります。
    ・誰が行ったか?
    ・いつ行ったか?

    また「どのアクティビティ」を「どのように変更したか」?まで知りたいところですが、残念ながら、そこまでは細かくは抽出されません。ここで言う「変更」とは、ジャーニーの「保存」ボタンを押す行為に対して、変更(modify)をカウントしているに過ぎません。

    よって、仮に何も変更していなくても「保存」ボタンを押せば、それは「変更」としてカウントされるわけです。

    ジャーニーアクティブ後にメールアクティビティ上でメールコンテンツの変更ができると思うのですが、それは変更として履歴に載るのか?という疑問があると思いますが、こちらはジャーニーの「保存」ボタンを押したことにはなっていませんので、この REST API の変更履歴には残りません。

    このメールコンテンツの変更の履歴に関しては、ジョブ ID が新たに生成されますので、データビューをクエリすることで変更履歴の確認ができます。以下で、抽出方法を記事にしていますので確認して下さい。


    話を元に戻します。リクエストの送信後は、200 OK のレスポンスがあれば成功です。

    画像

    ボディに初期表示されるものは、折りたたみがされています。各行の左に▲マークがありますので、そちらをクリックして必要なもののみ展開してください。

    画像

    以下は、メールアクティビティを設定した例になります。

    画像

    このタイムスタンプに関しては CST のタイムゾーンで表示されますので 15時間前の時間が表示されます。


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

    このように変更履歴は確認できることを知っておくことで、トラブルシューティングが楽になりますので、是非一度お試し下さい。

    ■ 追記:2024 年 10 月 11 日
    Winter '25 の新機能リリースにおいて、過去 30 日以内のジャーニーの変更履歴を Journey Builder の画面から取得できるようになりました。詳細は、以下の記事をご確認ください。

    今回は以上です。


    Click here for English version

    次の記事はこちら

    前回の記事はこちら

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

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