Microsoft Power Automateでエンベロープを送信するカスタムコネクタを作成する方法
ドキュサインとMicrosoft Power Automateとの連携は、Microsoft製品をお使いの方には必見です!本記事では、Power Automateのカスタムコネクタを使ったAPIレベルの連携についてご紹介します。これにより、ビジネスにおいて重要な契約を結ぶ際の時間と手間を節約することができます。
DocusignとMicrosoft Power Automateとの連携は、Microsoftツールをお使いの方には必見です。本記事でご紹介するように、Docusignの中核となる電子署名機能をMicrosoftの中で簡単に利用することができ、ビジネスにおいて重要な契約を結ぶ際の時間と手間を節約することができます。
Microsoft Power Automate(旧称:Flow)は、反復的な作業を効率化し、プロセスをペーパーレス化するための優れたツールであることは、すでに皆様もご存知のことと思います。だからこそ、このツールはペーパーレス化とタスクの自動化に取り組んでいる私達ドキュサインの製品とも相性がいいのです。
以前、Power Automateを使った連携についてご紹介しましたが、今回はより高度なカスタムコネクタを使ったAPIレベルの連携についてお話しします。
それでは、その仕組みを見ていきましょう。
サンプル事例:SharePointでの新規ファイル作成時のワークフロー作成
今回の例では、SharePointの特定のフォルダに新しいファイルが作成された際にトリガーが発生します。なお、同じワークフローでも、以下の例のように、お客様の特定のビジネスニーズに合わせて、別のトリガーを簡単に設定することができます。
調達部門では、SharePointのリストで入札/プロジェクトのステータスが変更されたときにトリガーが発生し、承認された契約書が自動的に送信されます。
人事部門におけるオンボーディング(入社手続き)では、新入社員が追加されると、オンボーディングパック(個人プロフィール、給与データ収集、NDAなど)が承認と署名のワークフローを経て自動的に送信されます。
この後ご紹介するのは、Docusign APIを使用して構築されたカスタムフローの例です。なお、Power Automateでは、コード不要のDocusignプレビルドコネクタも多数用意されています。より高度なシナリオでは、完全なAPIにアクセスすることで、構築済みのコネクタよりも多くのオプションを提供することができるので、非常に便利です。
まず、Docusignをセットアップし、次に実際に署名する文書に簡単な変更を加え、最後にMicrosoft Power Automateをセットアップするという、3つのステップですべてのプロセスが完了します。Docusign API を使用しているため、プロセスは標準的な「Go-Live」プロセスに従っており、Docusign開発者アカウント(こちらから作成できます)を使用する必要があります。このプロセスが完了すると、同じ Go-Liveリンクを使用して本番環境に移行できます。
ステップ1:Docusignセットアップ
Docusign eSignatureに管理者アカウントでログインし、アカウント番号をメモしてください(画面左上をご参照下さい)。
APIレベルの認証を可能にする特別なキーであるインテグレーションキーを作成します。
管理タブから[インテグレーション] > [アプリとキー] にアクセスし、「アカウントのベースURI」をメモします。ここでは、これをベースURLと呼びます。
「アプリとインテグレーションの追加」で、インテグレーションキーをメモします。
認証のユーザーアプリケーションで「認証コードの付与」のラジオボタンを選択し、「秘密鍵の追加」をクリックして、秘密鍵をメモします。
「URIの追加」をクリックし、次の値を追加します: https://global.consent.azure-apim.net/redirect (この値は Power Automate によって生成されるため変更される可能性がありますが、今のところこの初期値で問題ありません)。このリダイレクトURIの値は、念のためメモしておいてください。
文書カスタムフィールドの作成
[署名と送信] > [文書カスタムフィールド]に移動し、[文書カスタムフィールドの追加]をクリックします。
追加したいフィールド(例:署名、名前、署名日)を選択し、画面の指示に従います。例えば、「署名」フィールドを追加する場合、以下を入力します。
名前:署名
タイプ:ここに署名
共有:✔(チェックをいれる)
自動配置テキスト:¥s{r}¥
ステップ2:署名文書の設定
Docusignのフィールドを表示する場所を指定するために、署名する文書に若干の変更を加える必要があります(上記の「文書カスタムフィールドの作成」を参照)。文書カスタムフィールドを設定する際に作成した特別な「自動配置テキスト」を、フィールドを表示したい文書の任意の場所に入力するだけです。
例えば、以下の画像は、2人の署名者を必要とするWord文書です。最初の署名者を「¥s1¥」、署名者のフルネームを「¥n1¥」、署名した日付を「¥d1¥」と入力します。そして、二人目の署名者については、「¥s2¥」「¥n2¥」「¥d2¥」のように入力します。
本番利用では、実際には自動配置のテキストを白色にして見えないようにしてください。
ステップ 3:Microsoft Power Automateの設定
最終的な Microsoft Power Automate のフロー全体は以下のようになります。Power Automateの概要は「DocusignとMicrosoft Power Automateによる連携(2)実際の使用例」をご参照下さい。
それでは、それぞれのステップを見ていきましょう。
カスタムコネクタの作成
上の図では、「Send Document to Sign」が最終ステップになります。これは、フローを作成する前に設定する必要があります。
Power Automate にアクセスし、[データ] > [カスタムコネクタ] を選択します。
右上のメニューから、「カスタムコネクタの新規作成」>「一から作成」を選択します。
ここでコネクタ名を入力します。コネクタ名は、フローの中でこのDocusignステップを呼び出したいときにいつでも再利用されるので、適当な名前を付けてください。
全般情報
以下の詳細情報を入力します。
ホスト: [すでに前述で取得済のベースURLを入力]
ベースURL: /restapi/v2.1
セキュリティ
次の画面で、以下の情報を入力してください。
開発サンドボックス(デモ)環境の場合:
Client id:インテグレーションキー [前述で取得済]
Client secret:Secret Key [前述で取得済]
Authorization URL:https://account-d.docusign.com/oauth/auth
Refresh URL: https://account-d.docusign.com/oauth/token
スコープ:signature extended
本番環境の場合:
Client id:インテグレーションキー [前述で取得済]
Client secret:Secret Key [前述で取得済]
Authorization URL:https://account.docusign.com/oauth/auth
Token URL:https://account.docusign.com/oauth/token
Refresh URL:https://account.docusign.com/oauth/token
スコープ:signature extended
右上の「コネクタの作成」をクリックします。新たに生成されたリダイレクトURLが、Docusignで作成したインテグレーションキーのリダイレクトURIと一致していることを確認してください。
定義
新しいアクションを作成し、覚えやすい名前とユニークな操作IDを付けます。
要求の下の「サンプルからのインポート」をクリックし、以下のデータを入力します。
動詞:POST
URL:https://demo.docusign.net/restapi/v2.1/accounts/\[ご自身のアカウントID\]/envelopes
ヘッダー:Content-Type application/json
本文::
「インポート」をクリックしてこのセクションを完了します。
テスト
それでは、接続をテストしてみましょう。
テストのセクションで、「コネクタの更新」を選択します。[新しい接続] をクリックして、Docusignの認証情報でログインします。
ALLOW ACCESS をクリックして Power Automate に許可を与えます。完了すると、ドロップダウンリストに新しいエントリが表示され、動作したことが確認できます。
フローステップの作成
これでカスタムコネクタが完成したので、次はフローの各ステップを作成します。
フォルダー内にファイルが作成されたとき
これは基本的な「トリガー」となるステップであり、ビジネス上の要求に応じて、どんなトリガーでも可能です。この例では、「/Shared Documents/FlowTest」フォルダをリスニングしており、新しいファイルが作成されると、このワークフローが開始されます。
入力値:
サイトのアドレス: 利用するSharePointのサイト
フォルダーID: フォルダのパス
ファイルコンテンツの取得
このステップでは、「トリガー」に基づいてファイルの内容をキャプチャする必要があります。この例では、そのフォルダに作成された新しいファイルの内容になります。
入力値:
サイトのアドレス: 利用するSharePointのサイト
ファイル識別子: これは、前のステップの出力です。右側のペインにある「動的なコンテンツ」で「ファイル識別子」を選択します。上のスクリーンショットをご覧ください。
作成
このステップでは、前のステップで取得した「ファイルの内容」を、base64形式に変換します。これは、DocusignがREST APIを使用して送信する際に必要となります(これは以下の最終ステップとなります)。
入力値:
入力: “base64(…)” – 括弧内の「ダイナミックコンテンツ」で「ファイルの内容を取得」を以下のように選択してください。最終的な関数は次のようになります:base64(body('ファイル_コンテンツの取得'))
カスタムコネクタの追加
新しいステップを追加し、「カスタム」>「Send Envelope」(作成したカスタムコネクタの名称)を選択します。
作成したアクションを選択します。
ここからは、以下のようにフィールドを埋めていきます。
documentsフィールドには、変数(先ほど作成ステップで作成したもの)が入ります。「動的なコンテンツの追加」→「出力」を選択します。ここで、以下の値を追加します。
documentId: 1
fileExtension: txt
name: Doc1
order: 1
emailSubject: Send document for signature
email: [署名者のメールアドレスを入力]
name: [署名者の名前を入力]
recipientId: 1
roleName: Signer 1
routingOrder: 1
status: sent
注釈:以下のフィールドについて
"email": "[署名者のメールアドレスを入力]", "name": "[署名者の名前を入力]",
受信者(署名者)の名前と電子メールアドレス:前のステップでSharePointから署名者の名前とメールアドレスを収集し、それをここで入力することで、この項目を動的にすることができます。
それでは、保存して実行してください。
Docusignのテクノロジーを貴社のアプリやウェブサイトに統合するための詳細は、APIのページをご覧ください。
このようにPower Automateのカスタムコネクタを使えば、高機能なDocusign APIを簡単にSharePointのシステムと連携できることがおわかりいただけたかと思います。つまり、カスタムでお客様の要件にあった契約文書管理の実装が可能です。
本ブログは「Get into the flow of sending Docusign Envelopes with Microsoft Power Automate」の抄訳で日本向けに加筆修正しています。