Looker APIでダッシュボードのフィルター値を変更してみた
投稿者:杉山
こんにちは、日本情報通信の杉山です。
先日までは11月で夏日なんてことがありましたが、急に寒くなってきましたね。。。
今回は『Looker API特集』第3弾!Looker APIでフィルター値を変更してみた結果についてをご紹介します。
Looker API特集:過去のブログはこちら
目次
- フィルター値の変更手順
- 結果
- まとめ
フィルター値の変更手順
※以下の作業は基本的にAPI Explorer上での操作です。
ローカル環境で行うには過去のブログでも紹介している認証を行った上で、別途本稿に記載しているコードをご確認ください。
今回の検証では「検証」ダッシュボードのエリアネームをデフォルトでは”フィルターなし”に設定していますが、”東京”に変更してみたいと思います。
①変更したいフィルターがあるダッシュボードのダッシュボードIDを取得
ダッシュボードID(dashboard_id)の検索・取得方法は以下2パターンです。
- 特定のダッシュボード画面を開き、URLから確認(例:/dashboards/67)
- Get All Dashboardsメソッド(例:”content favorite_id”:null, “id”:”67”,)
②該当ダッシュボードにある全フィルターから設定したいフィルターIDを検索・取得
- Get All Dashboard Filtersメソッド
- ①で取得したdashboard_idを記載
※filedsに値を入力しても現時点ではLooker APIの仕様上参照されません
- ①で取得したdashboard_idを記載
出力結果のidに記載されている値がフィルターID
③設定したい値をdefault_valueに記載し、フィルター情報を更新
- Update Dashboard Filterメソッド
- ②で取得したdashboard_filter_idを記載
- 今回はdefault_valueに”東京”と記載
- I understand that this API endpoint will change data.にチェック
★③以降をローカル環境で行う場合、以下のコードをAPI認証を行った環境で記載
※こちらのブログをご覧頂いている方はtest.pyに追記する形で問題ありません
response = sdk.update_dashboard_filter(
dashboard_filter_id=”92″,
body=mdls.WriteDashboardFilter(
default_value=”東京”,
row=0,
allow_multiple_values=False,
required=False
))
※modelsをmdlsで定義していない場合はbody=mdls.WriteDashboardFilterの表記が異なります。
結果
「検証」ダッシュボードのエリアネームをデフォルトで”東京”に変更出来ました。
まとめ
今回はLooker APIでダッシュボードのフィルター値を変更してみた結果についてご紹介しました。本投稿でご紹介した検証結果は、APIを用いてダッシュボードのフィルター設定を変更するといったシンプルな内容になっています。そのため今後は「ユーザー属性ごとにエリアネームのフィルターを設定する」といった組み合わせた内容も試してご紹介出来ればと思います!
次回
本稿をご覧頂き、ありがとうございました。
次回『Looker API特集』第4弾では、ローカル環境でダッシュボードをPDF形式でGCSバケットに出力する方法についてご紹介いたします。Looker上でダッシュボードをスケジュール配信する際に宛先やフォーマットなどを選択しますが、この操作をAPIを用いて設定することが可能です。是非これまでのブログに続き次回ブログもご覧ください!