【第210回】 ジャーニー履歴を圧縮してダウンロードする方法
今回、Salesforce Marketing Cloud の新機能 Summer '24 でリリースされたジャーニー履歴ダウンロードを圧縮してダウンロードする機能を試してみたいと思います。
それでは、まず、以下の圧縮しないでダウンロードする REST API を試してみてください。実行できることが確認できたら今回の内容に進みましょう。
▶ ジャーニー履歴ダウンロード用の REST API は下記を参照
このジャーニー履歴ダウンロードを圧縮してダウンロードする機能は、上のヘルプドキュメントにも記載がある通り、curl などを使用して実行する必要があります。この curl とは HTTP リクエストを簡単に行うためのツールで、Linux、macOS には標準でインストールされていますし、Windowsでも Windows 10 以降であればインストールされているはずです。
まずは、ご自身の PC で使用できるか確認してみましょう。コマンドプロンプトを開いて、以下のコマンドをコピペして、Enter をクリックしてみて下さい。
curl --version
以下の通り、curl が使用できることを確認できました。ただし、curl が使用できることが確認できたからと言って、圧縮が成功するとは限りませんので注意して下さい。
続いて、アクセストークン を取得してください。こちらは、以下の記事を参考にして Talend API Tester を使って取得してください。
今回は、圧縮されて生成される .gz ファイル(ジージップ)の保存場所をデスクトップに指定したいと思います。それを指定するのに PC のUSER_NAME が必要になりますが、これはコマンドプロンプトを開いた時に表示されていますので、そちらをコピーしてください。
されて、これらが取得できたら、以下の curl コマンドに値を挿入して、ボディ(-d)の部分も、取得したい内容に編集したら、コマンドプロンプトでコマンドを実行してください。
curl "https://[REST ベース URL].rest.marketingcloudapis.com/interaction/v1/interactions/journeyhistory/download?columns=ContactKey,ActivityId,ActivityName,ActivityType,ClientStatus,CreatedDate,DefinitionId,DefinitionInstanceId,DefinitionName,EndDate,EntrySource,EpochTimeInMilliseconds,EventId,EventName,Id,Message,OutcomeActivityId,SourceType,StartDate,Status,TransactionTime,Result.Status,Result.Tags,Result.Messages,Result.Outcome" ^
-X POST ^
-H "Authorization: Bearer [アクセストークン]" ^
-H "accept-encoding: gzip" ^
-H "x-direct-pipe: true" ^
-H "content-type: application/json" ^
-d "{ \"start\": \"2024-01-01T00:00:00Z\", \"end\": \"2029-12-31T23:59:00Z\", \"activityIds\": [\"5133bd26-99a1-42e4-8ae7-23aca002bcce\"], \"statuses\": [\"complete\"] }" ^
-o "C:\Users\[ユーザーネーム]\Desktop\journeyhistory.gz"
すると、デスクトップ上に journeyhistory.gz というファイルが出現したと思います。
この .gz ファイルを 7-Zip 等のツールを使って解凍してください。CSV ファイルが取得できたと思います。これをエクセルで開ければ、成功です。
今回は以上です。