LoginSignup
5
2

More than 1 year has passed since last update.

ZapierからAutomation 360 Control RoomのAPIを叩いてロボットを実行する

Last updated at Posted at 2021-12-03

はじめに

最近、RPAの次はiPaaS!みたいな話もありますが、個人的には両方使えると自動化の幅が広がりますし、両方のいいところを活用し、時に片方だけを利用したりして、素早く目的を果たすことができると思っています。

というわけで、今回は個人でも試しやすいiPaaSのZapierからAutomation 360のAPIを叩いてみる。というのをやってみます。

この投稿で紹介したいこと、伝えたいこと

  • iPaaSとRPAプラットフォームの連携、設定例
  • ZapierのWebhookアクションは便利だけど、接続する相手によってはCustom Requestを使ったほうがいいケースがありますよ。

なので、Zapierの使い方も、A360のAPIの使い方も分かっている人の場合、参考になるのは後者のみです。

想定している業務

これ!というのは特になくて、同じ仕組みで色々な業務に使えると思いますが、いちおう例えばこんな感じ。

  1. (今回は割愛)Google Sheets等で元データを作る
  2. Google Driveにファイルをアップロードする、もしくは所定のフォルダにシートを移す
  3. ファイルがアップロードされたのをZapierが検出し、Automation 360のAPIを叩く
  4. (今回は割愛)Automation 360がSalesforce(APIを使うアクション利用)と、APIの無いレガシーシステムへデータを登録

Zapier ->

準備するもの

  • Zapier (Webhookが使えるStarter Plan以上)
  • Automation 360 (製品版)
  • 「API キーを生成」が可能なロールを持ったユーザー (Automation 360)
  • その他Bot実行に必要な権限 (Automation 360)

大まかな手順

Automation 360側

  • 使用するユーザーに「API キーを生成」の権限を付与する
  • APIキーを生成する

Zapier側

  • 新しくZapを作成し、トリガーを設定する
  • Webhookアクション(POST)を追加し、設定する
  • Webhookアクション(Custom Request)を追加し、設定する

手順詳細

Automation 360側

使用するユーザーに「API キーを生成」の権限を付与する

作業を行うユーザーが使用するロールに「API キーを生成」の権限を付与します。
(ロールやユーザーを編集する権限がない場合はConrol Roomの管理者に相談してください。)
image.png

APIキーを生成する

まず、「マイ設定」を開きます
image.png

画面右上に表示される「APIキーを生成」ボタンを押します
image.png

APIキーが生成されるので、メモ帳などに貼り付けておきます
image.png

Zapier側

新しくZapを作成し、トリガーを設定する

今回の例ではGoogle Driveのフォルダに新たにファイルが作成されたら。というトリガーにしてみます
image.png

トリガーのセットアップ
image.png

トリガーをテストしてみます。以下のような結果になっていれば成功です。
image.png

Webhookアクション(POST)を追加し、設定する

EventはPOSTを選択します
image.png

アクションは以下のように設定します。
その他の設定フィールドはそのままで大丈夫です。
image.png

URLはこちら。スクリーンショットの空白部分は使用するControl Roomにより変わります。

https://使用するControl Roomのドメイン.my.automationanywhere.digital/v1/authentication

設定ができたらテストしてみましょう。以下の例のように「token」が返り値として得られていればOKです。
image.png

Webhookアクション(Custom Request)を追加し、設定する

こちらも本来でしたらWebhookアクション(POST)を使いたいところですが、どうもヘッダーの書式などが微妙に合わないようで、Custom Requestで行うことにします。
もしかしたら私のやり方が悪いだけかもしれませんが、APIをローコードなプラットフォームから叩く時にこういうことが起こりやすい気がします。

まず、Webhooksアクションを追加します。
image.png

次に、Custom Requstを選びます
image.png

以下のように設定します。
image.png

設定項目

Data部分の値

fileIdとrunAsUserIdsに設定する***の値については、下に別トピックとして取得方法をまとめています。

{
  "fileId": *****,
  "runAsUserIds": [
    ***
  ]
}
fileIdに設定する値の取得方法

こちらは実行したいBotのIDです。実は各BotにはIDが振られていまして、対象のBotを開いた時に以下のようなURLになっていますが、こちらのURLの*****の部分を使用します。
Botは公開レポジトリにチェックインされている必要があります。

https://使用するControl Roomのドメイン.my.automationanywhere.digital/#/admin/users/*****/edit
runAsUserIdsに設定する値の取得方法

こちらは実行するBot RunnerのIDです。ユーザーにもIDが振られています。対象のユーザーをControl Roomの管理メニューから開いた時に以下のようなURLになっていますが、こちらのURLの***の部分を使用します。

https://使用するControl Roomのドメイン.my.automationanywhere.digital/#/bots/repository/public/taskbots/***/view
Headersの部分に入力するもの
ヘッダー
X-Authorization token(挿入方法は下記を参照)
Content-Type application/json
Postアクションで取得したtokenを挿入する方法

下図のように値のフィールドをクリックすると、「Insert Data」というメニューが表示されます。
これにより、先のアクションで取得した様々な値を挿入することができます。
今回は3.POSTで取得したTokenを挿入します。
image.png

完成

設定が終わったら、「Continue」を押したら完成です。テスト実行をしてみてください。
上手く動作したら「Turn on Zap」を押すと、トリガー条件を満たすと自動実行されるようになります。
image.png

5
2
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
5
2