<img src="//trc.taboola.com/1222697/log/3/unip?en=page_view" width="0" height="0" style="display:none">

2019年10月9日

Microsoft Flow と UiPath Orchestrator の連携方法

9 10月 2019

Microsoft Flow と UiPath Orchestrator の連携方法

はじめに

UiPath Robotを現在使用しているシステムから起動したいと思たことはありませんか?

UiPath Platformでは、Orchestrator の REST API やWebhookを使用することで、外部からRobotを起動したり、ジョブのイベントを受信したりすることができます。

ワクワクしませんか?(笑)

本記事では、現在使用しているシステムを Microsoft Flow と仮定して、ジョブの起動と完了イベントの受信方法を説明します。

 

2019年8月時点での情報を元に執筆しておりますので将来のバージョンにおいて内容が異なる可能性があります。あらかじめご了承ください。

また、ご使用中の Microsoft Flow のプランや設定によっては使用できない機能が含まれている可能性があります。

Microsoft Flow に関する詳細については Microsoft より公開されているドキュメント(https://flow.microsoft.com/ja-jp/)を参照ください。

image2019-9-24_13-17-33

 

Microsoft Flow から UiPath Orchestrator のジョブを実行する

本記事ではUiPath Orchestratorとして UiPath Clound Platform の Orchestrator を使用し、Microsoft Flow から Orchestrator API を使用してジョブを起動する方法について説明します。UiPath Clound Platform 以外の Orchestrator では認証方法が異なりますので注意が必要です。

事前準備として、UiPath Cloud Platform の Orchestrator にアカウントを作成し、こちらのページを参考に 「refresh_token」 を用意します。

また、Microsoft Flowからジョブとして起動するプロセスを「TestProcess」という名前でOrchestrator上に準備します。

準備ができたら下記の手順でMicrosoft Flowで新規フローを作成します。

 

1. Microsoft Flow で新規フローの作成画面で [インスタントフロー] - [手動でフローをトリガーします] を選択

 

2. [HTTP] アクションと [JSONの解析] アクションを使用して、「access_token」と「id_token」を取得

・[新しいステップ] をクリックして 新規ステップを追加

・[アクションを選択してください] - [組み込み] - [HTTP] を選択し、表示されるアクション一覧から [HTTP] アクションを選択

・[方法] は [POST] を選択

・[URI] に https://account.uipath.com/oauth/token を入力

・[本文] はこちらを参照して入力

※以下の赤枠内の [refresh_token] は先程準備した「refresh_token」に変更します。

image2019-9-13_15-43-14

 

・[新しいステップ] をクリックして新規ステップを追加

・[アクションを選択してください] - [組み込み] - [データ操作] を選択し、表示されるアクション一覧から [JSONの解析] アクションを選択

・[コンテンツ] に [HTTP] アクションの [本文] を設定

・[スキーマ] は [サンプルのペイロードを指定してスキーマを生成する] をクリックし、表示されたダイアログにこちらのページのレスポンスのサンプルをコピー&ペースト

※以下の赤枠内を使用します。

image2019-9-13_12-59-25

 

 

 3. [HTTP] アクションと [JSONの解析] アクションを使用して、「account_logical_name」を取得

・[新しいステップ] をクリックして 新規ステップを追加

・[アクションを選択してください] - [組み込み] - [HTTP] を選択し、表示されるアクション一覧から [HTTP] アクションを選択

・[方法] は [GET] を選択

・[URI] に https://platform.uipath.com/cloudrpa/api/getAccountsForUser を入力

・ヘッダーの [キー] に 「Authorization」を入力

・ヘッダーの [値] に「Bearer 」を入力したあとパラメータとして「id_token」を選択

・[新しいステップ] をクリックして新規ステップを追加

・[アクションを選択してください] - [組み込み] - [データ操作] を選択し、表示されるアクション一覧から [JSONの解析] アクションを選択

・[コンテンツ] に [HTTP] アクションの [本文] を設定

・[スキーマ] は [サンプルのペイロードを指定してスキーマを生成する] をクリックし、表示されたダイアログにこちらのページのレスポンスのサンプルをコピー&ペースト

 

 4. [HTTP] アクションと [JSONの解析] アクションを使用して、「serviceInstanceLogicalName」を取得

・[新しいステップ] をクリックして 新規ステップを追加

・[アクションを選択してください] - [組み込み] - [HTTP] を選択し、表示されるアクション一覧から [HTTP] アクションを選択

・[方法] は [GET] を選択

・[URI] に https://platform.uipath.com/cloudrpa/api/account/「account_logical_name」/getAllServiceInstances と入力

※「account_logical_name」を選択すると自動的に [Apply to each] アクションが追加され、 [HTTP] アクションが入れ子の状態になります。

これは「account_logical_name」が配列内のデータであるためですので、そのまま設定を続けます。

・ヘッダーの [キー] に「Authorization」を入力

・ヘッダーの [値] に「Bearer 」を入力したあとパラメータとして「id_token」を選択

・[新しいステップ] をクリックして新規ステップを追加

・[アクションを選択してください] - [組み込み] - [データ操作] を選択し、表示されるアクション一覧から [JSONの解析] アクションを選択

・[コンテンツ] に [HTTP] アクションの [本文] を設定

・[スキーマ] は [サンプルのペイロードを指定してスキーマを生成する] をクリックし、表示されたダイアログにこちらのページのレスポンスのサンプルをコピー&ペースト

 

5.  [HTTP] アクションと [JSONの解析] アクションを使用して、ジョブを開始するための「Key」を取得

・[新しいステップ] をクリックして 新規ステップを追加

・[アクションを選択してください] - [組み込み] - [HTTP] を選択し、表示されるアクション一覧から [HTTP] アクションを選択

・[方法] は [GET] を選択

・[URI] に https://platform.uipath.com/odata/Releases?$filter=ProcessKey%20eq%20'TestProcess’ と入力

・ヘッダーの [キー] に「Authorization」を入力

・ヘッダーの [値] に「Bearer 」を入力したあとパラメータとして「access_token」を選択

・ヘッダーの [キー] に X-UiPath-TenantName

・ヘッダーの [値] に「serviceInstanceLogicalName」を選択

※「serviceInstanceLogicalName」を選択すると自動的に [Apply to each] アクションが追加され、 [HTTP]アクションが入れ子の状態になります。

これは、「serviceInstanceLogicalName」が配列内のデータであるためですので、そのまま設定を続けます。

・[新しいステップ] をクリックして新規ステップを追加

・[アクションを選択してください] - [組み込み] - [データ操作] を選択し、表示されるアクション一覧から [JSONの解析] アクションを選択

・[コンテンツ] には上記 [HTTP] アクションの [本文] を設定します。

・[スキーマ] は [サンプルのペイロードを指定してスキーマを生成する] をクリックし、表示されたダイアログにこちらのページのレスポンスのサンプルをコピー&ペースト

 

6.  [HTTP] アクションを使用して、ジョブを開始

・[新しいステップ] をクリックして 新規ステップを追加

・[アクションを選択してください] - [組み込み] - [HTTP] を選択し、表示されるアクション一覧から [HTTP] アクションを選択

・[方法] は [POST] を選択

・[URI] にhttps://platform.uipath.com/odata/Jobs/UiPath.Server.Configuration.OData.StartJobsを入力

・ヘッダーの [キー] に「Authorization」を入力

・ヘッダーの [値] に「Bearer 」を入力したあとパラメータとして「access_token」を選択

・ヘッダーの [キー] に 「X-UiPath-TenantName」を入力

・ヘッダーの [値] に「serviceInstanceLogicalName」を選択

・[本文] はこちらのページを参照に入力してください。"ReleaseKey" に「Key」の値を設定します。

※「Key」を選択すると自動的に [Apply to each] アクションが追加され、 [HTTP] アクションが入れ子の状態になります。

これは、「Key」が配列内のデータであるためですので、そのまま設定を続けます。

 

こちらでフローの作成は完了です。

Microsooft FlowのWebサイトでフローの [実行] を押下することでジョブが起動することを確認してください。

 

Microsoft Flow でジョブの終了イベントを受信する

 

ここではMicrosoft Flow から Orchestrator のWebhook機能を使用してジョブの正常終了イベントを受信する方法を説明します。

Orchestrator の Webhook 機能の詳細はこちらを参照してください。

 

1. Microsoft Flow で新規フローの作成画面で [インスタントフロー] - [HTTP要求の受信時] を選択

・[サンプルのペイロードを使用してスキーマを生成する] をクリックし、表示されたダイアログにこちらのページのレスポンスのサンプルをコピー&ペースト

※以下の赤枠内を使用します。

image2019-9-13_17-26-56

 

2. フローを保存し、Webhook の設定のため「URL」をコピー

・フローを保存し、 [HTTP要求の受信時] トリガーの [HTTP POST の URL] に表示された URL をコピー

3. UiPath Orchestrator にアクセスしてWebhookの設定

・UiPath Orcehstrator にアクセスし、右上のユーザアイコンをクリックして [Webhook] を選択

・[カスタムURL] 欄に「URL」を入力

・[イベントタイプ] は [個別のイベントを選択] を選択

・[Job] と [job.completed] にチェック

image2019-9-13_17-40-36

 

こちらでフローの作成は完了です。

Microsoft Flow でジョブ終了イベントを受信できるようになります。

 

おわりに

今回は、UiPath Orchestrator の REST API や Webhookの使用方法について、Microsoft Flowを題材として説明しました。

ぜひこれらを活用して、自動化のバリエーションを増やしていただければと思います。


by Toshihide Omori

TOPICS: Region: Japan, UiPath Orchestrator, Microsoft Flow

Show sidebar