背景
弊社では、データをリアルタイムに集約・分析・見える化するデータ活用プラットフォームであるDomo(ドーモ)のコンサルティングサービスを提供しております。
Domoはデータ接続、転送、整形加工、可視化、情報共有がオールインワン提供に加えて、企業向け管理機能も優れているので、例えば、どのようなデータを誰が、いつ作って、今現在どんな状態になっているのか、データ同士の連携など様々な切り口で分類、整理し、最新のツールらしくグラフィカルに綺麗に表示してくれます。ですが逆に、時々旧石器時代のように管理情報をEXCELにテキストでベタ書きした表が欲しくなります。
このような場合にはDomoが用意しているCLIツールを使えば良さそうなのですが、今回はCLIを使わず、前から気になっていたマイクロソフトの無料RPAツールであるPower Automate DesktopとDomo APIを使って、DomoのDataSet情報をEXCEL表に転記してみました。
今回はそのうち前半戦のアクセストークンの取得に関して手短になるように要点部分を記しています。詳細な解説は弊社Webのブログ参照をお願いいたします。
後半のDataset情報の取得からExcel転記に関してはコチラをご覧ください。
https://alpcom.co.jp/blog/20211115/
Domo API仕様 オリジナル情報はコチラです
https://developer.domo.com/docs/authentication/overview-4#Important%20terms
要はDomoデベロッパーポータルからClient IDとClient Secretを取得して下記のようにリクエストすると、お約束のJSONが返ってくるので"access_token"を指定してアクセストークンのみを取得すれば良さそうです。
$ curl -v -u {CLIENT_ID}:{CLIENT_SECRET} "https://api.domo.com/oauth/token?grant_type=client_credentials&scope={SCOPE}"
curl表記をPower Automate Desktopではどのように指定するのか
各社絶賛提供中のPRAには表現は異なりますが、HTTPプロトコルをそのまま使える命令が「普通に」実装されています。Power Automate Desktopでは、その名も「Webサービスを呼び出します」です。いろいろ指定の仕方はあると思うのですが、下記のような指定で"access_token"を含むJSONが返ってきました。
1.URL:https://api.domo.com/oauth/token?grant_type=client_credentials&scope=data workflow audit buzz user account dashboard
2.メソッド:GET
3.受け入れる:application/json
4.コンテンツタイプ:application/json
URL欄に書くscopeの指定は
scope=data%20workflow%20audit%20buzz%20user%20account%20dashboard
ではなく
scope=data workflow audit buzz user account dashboard
でした。
「詳細」をクリックすると上図が表示されますので、「HTTP認証」を使えるようにして、事前にDomoデベロッパーポータルから取得したClient IDとClient Secretを指定します。
Client IDとClient Secretの取得や、その他のPower Automate Desktop設定詳細は弊社Webのブログ参照をお願いいたします。
Domo(ドーモ)とは
ここまで読んでいただきありがとうございます。Power Automate Desktop繋がりで、この記事を読んでいただけていると想定していますので「Domoって何よ?」との方向けに3分程度の手短な紹介ビデオを作っておりますので、是非ご覧ください。
Domoのご紹介-第1回 経営から現場まで、ビジネスユーザーに最適なDomoのご紹介
https://youtu.be/ZjfA6ODnR7g