1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

ZendeskのサポートチケットデータをRedshiftへロードする

Last updated at Posted at 2020-10-06

今回のブログでは、XplentyのRest APIコンポーネントを使用し、ZendeskのSupport APIにアクセスし、チケットデータをIncrementalでロードする手順について解説します。

#Zendesk側での設定
管理メニューから「API」を選択する
image.png

パスワードアクセスを有効に設定する
image.png

#Xplenty側の設定
##Step1: Rest API Componentの設定
Rest API コンポーネントでBasic認証を選択し、ユーザー名とパスワードを入力する
image.png

今回は、Support APIのIncremental Exportを使用するので、ドキュメントのルールに従い、URLを入力。
image.png

URL: https://サブドメイン名.zendesk.com/api/v2/incremental/tickets.json?start_time=1601768082&include=metric_sets

start_time: UnixTimeの数値を指定

ResponseでJSON Pathを入力
image.png

Data Previewで結果が正しく取得できるのを確認したら、必要な列を選択し、Saveボタンをクリック。
image.png

##Step2: Selectコンポーネントで入れ子になっているJSON部分の値を取得する式をセット
image.png

##Step3: ロード先のDBもしくはDWHを設定(今回はRedshiftへロード)
Redshiftへの接続を設定し、テーブル名の入力および差分更新の設定(Merge with existing data using delete and insert)を選択する。
image.png

今回作成したデータフローは、こんな感じになります。
image.png

##Step4: 自動で差分更新を行うための変数設定
最初の設定では、URLのパラメータ「start_time」を固定値で実装しましたが、今後自動的に前回取り込み分からの差分を取得できるよう変数を利用したリクエストURLが生成できるよう設定します。
image.png

###1. 差分更新のため、前回実行時間を取得する変数をセットします。
image.png

  • 変数名:start_date
  • :ToUnixTime(CASE WHEN $_PACKAGE_LAST_SUCCESSFUL_JOB_SUBMISSION_TIMESTAMP == '' THEN ToDate('2000-01-01T00:00:00.000Z') ELSE ToDate($_PACKAGE_LAST_SUCCESSFUL_JOB_SUBMISSION_TIMESTAMP) END)

式で使用しているシステム変数「$_PACKAGE_LAST_SUCCESSFUL_JOB_SUBMISSION_TIMESTAMP」には、自動的に前回ジョブ実行日時がセットされる。

###2. URLのstart_timeの値に変数をセットします。(太字部分は変数)
URL: https://サブドメイン名.zendesk.com/api/v2/incremental/tickets.json?start_time=**$start_date**&include=metric_sets
image.png

これで簡単に差分だけを更新するDataflowパッケージの完成です。
もし、自社でお使いのSaaSサービスをクラウドに接続して取得したい場合は、XplentyのHPからオンラインデモをリクエストし、相談してみてはいかがでしょうか?

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?