リックソフトブログ

2020年05月27日

Workato(ワーカート)のHTTPコネクタ(汎用コネクタ)でSlack APIエンドポイントを利用する

Author

大野 智之 Tomoyuki Ohno

大野 智之</mt:Var>

  

WorkatoとSlackの連携は柔軟に可能...HTTPSコネクタを使えば!

Workatoには、標準で用意されている「Slackコネクタ」「Workbot for Slackコネクタ」を利用すると、Slackと連携することが出来ます。

また、アクションとして存在しない処理は、カスタムアクションとして特定のAPIエンドポイントを指定して利用することが出来ます。

しかし、カスタムアクションで利用可能なAPIエンドポイントが想定しているパーミッションは、各コネクタのOAuth scopesで示されている範囲となっています。

▽Slackコネクタの例

image2020-5-21_11-52-0.png

▽Workbot for Slackコネクタの例

image2020-5-21_11-52-59.png

では、「WorkatoではOAuth scopesで示されていないパーミッションを必要とするAPIエンドポイントへリクエストを行ったり、そのレスポンス結果を取得して使用することは出来ないのか?」と思われるかもしれませんが、そのようなことはありません。できます。

Workatoには、HTTPコネクタという様々なWeb APIへに利用可能な汎用的なコネクタがあります。

HTTPコネクターを利用すると、SlackコネクタやWorkbot for SlackコネクタのOAuth scopesに無いパーミッションを必要とするAPIエンドポイントを利用することが出来ます

それでは、以下に対応方法を記載していきます。

HTTPコネクタを利用した連携方法

1.Slackへアプリを作成する

まず、Webブラウザから、Slack APIのページ(https://api.slack.com/)を開きます。

ページが表示されたら、「Your Apps」をクリックします。

Your Appsが表示されない場合は(「Your Apps」が「Go to Slack」になっている場合は)、Slackへログインしてから本ページを開きます。

image2020-5-21_12-5-15.png

以下のページが表示されたら、「Create New App」をクリックします。

image2020-5-21_12-8-23.png

以下のモーダルダイアログが表示されますので、アプリ名(任意の名称)と、利用するSlackのワークスペースを指定して、「Create App」をクリックします。

image2020-5-21_12-11-6.png

アプリが作成されると、以下の画面にが表示されますので、「Permissions」をクリックします。

image2020-5-21_12-20-0.png

Scopesまでスクロールし、User Token Scopesの「Add an OAuth Scope」をクリックします。

image2020-5-21_12-21-23.png

クリックすると、アプリで利用可能なOAuth Scope(パーミッション)を選択することが出来ます。OAuth Scopeは複数指定することが可能です。

image2020-5-21_12-22-14.png

OAuth Scopeの設定が完了したら、上にスクロールし、「Install App to Workspace」をクリックします。

image2020-5-21_12-27-22.png

以下の画面が表示されますので、「許可する」をクリックします。

image2020-5-21_12-28-27.png

OAuth Access Tokenが表示されますので、このトークンを記録(メモ)します。

image2020-5-21_12-31-56.png

2.WorkatoへApp Connectionsを追加する

Workatoへログインし、「App Connections」をクリックします。

image2020-5-21_13-59-58.png

Create a new connection」をクリックします。

image2020-5-21_13-59-48.png

「HTTP」を選択します。

image2020-5-21_14-1-31.png

以下の画面が表示されますので、次の項目を設定します。設定完了後、「Link your account」をクリックします。

  • Connection name:任意の名称
  • Authentication type:Header auth
  • Header authorization: 以下の通り入力します。SlackのOAuth Access Tokenは、Slackアプリ作成時に出力されたOAuth Access Tokenを入力します。
    Authorization: Bearer <SlackのOAuth Access Token>

image2020-5-21_14-4-52.png

Connection successと表示されたことを確認します。

image2020-5-21_14-9-18.png

3.Workatoへレシピを追加する

「Create a new recipe」をクリックします。

image2020-5-21_14-10-44.png

トリガーとするアプリのコネクタ(ワークフロー処理開始時における起点となるアプリ)を選択し、設定のうえ「Next」をクリックします。

image2020-5-21_14-12-13.png

「HTTP」をクリックします。

image2020-5-21_14-14-10.png

そのまま(Actionに「Send request」が選択されたまま)「Next」をクリックします。

image2020-5-21_14-15-10.png

作成したApp Connectionを選択し、「Next」をクリックします。

image2020-5-21_14-16-51.png

「I'm an expert. Skip」をクリックします。

image2020-5-21_14-18-13.png

以下のようにワークフローの画面が表示されます。

HTTPコネクター(Send request via HTTPと表示されているアクション)をクリックします。

image2020-5-21_14-21-14.png

「setup manually」をクリックします。

image2020-5-21_14-20-37.png

SlackのAPIリファレンスを参考に、Request URLとMethodを設定します。

image2020-5-21_14-28-48.png

Request URL parametersを展開し、「Add URL parameter」をクリックします。

image2020-5-21_14-30-27.png

SlackのAPIリファレンスのArgumentsを参考に、パラメーターを設定します。

なお、tokenは設定不要です。(既にApp Connectorで設定済みであるため)

image2020-5-21_14-35-11.png

ResponseのResponse schemaの「Use JSON」をクリックします。

image2020-5-21_14-37-20.png

SlackのAPIリファレンスのResponseの例をコピーしてWorkatoのJSON Sampleへペーストし、「Next」をクリックします。

例:https://api.slack.com/methods/conversations.history

image2020-5-21_14-40-8.png

結果を確認し、「Generate schema」をクリックします。

image2020-5-21_14-41-7.png

Response schemaがJSONの結果をもとに生成されたことを確認します。

image2020-5-21_14-41-53.png

これ以降は、後続処理の実装を進めていきます。

4.レシピを実行する

実際に作成したレシピを実行します。

image2020-5-21_16-32-25.png

トリガーによりレシピが実行すると、実行履歴がJobsに追加されます。

このジョブのJob IDをクリックします。

image2020-5-21_14-44-35.png

HTTPコネクターのActionをクリックします。

image2020-5-21_14-45-46.png

以下のようにリクエストとレスポンスを確認することができます。

image2020-5-21_14-48-11.png

image2020-5-21_14-46-53.png

Slackクライアント上で確認してみると、該当するチャンネルの結果が取得できていることが確認できます。

image2020-5-21_14-51-57.png

以上のように、Workatoの標準コネクタに用意されていない機能や制限されている機能であっても、標準コネクタと比べて手順は増えますが、HTTPコネクタを利用することで対応することができます。

また、標準コネクタであってもノーコードでSlackとの連携が可能ですので、非常に手軽に、簡単にSlackのAPIを利用することが出来ます

Slack APIを手軽に利用されたい、Slackを効率的に管理したい、Slackと他のシステムを簡単に連携したい、そのようなソリューションをお探しの方は、是非Workatoをご検討ください。

                                               

製品について詳しくはこちらをご覧ください。

Workato製品情報 Slack導入支援サービス               
                    
                                                                         

本情報はブログを公開した時点の情報となります。
ご不明な点はお問い合わせください。

        

お問い合わせ         

  
本ブログのカテゴリ: Workato
  

アトラシアン製品の導入と活用を
成功させたいなら
リックソフトのサポートが
必要です。

サードパーティ製のアドオンもサポート

サードパーティ製のアドオンもサポート

サポート

アトラシアン社ではサポート範囲外となっているサードパーティ製のアドオンをリックソフトのサポートではサポートします。

  • アトラシアン製品とサードパーティ製のアドオンとの事象の切り分け
  • 海外のアドオンベンダーとのやり取りを代行(日→英/英→日)

リックソフトのサポートは開発元が提供するサポート以上の価値があります。

サポートについて

ツールの活用を促進するアイテム

ツールの活用を促進するアイテム

各種ガイドブック

ツールを導入しただけでは成功とはいえません。利用者が効果を感じていただくことが大切です。独自で制作した各種ガイドブックはツール活用を促進します。

リックソフトからライセンス購入を頂いたお客様にはガイドブックを無料進呈いたします。

ガイドブックについて

価値あるツールの使い方

価値あるツールの使い方

研修・トレーニング

ツール操作の研修だけでなく「ウォータフォール型開発」「アジャイル型開発」のシミュレーション研修も提供。

日本随一の生産性向上にも効果のある研修サービスです。

リックソフトからライセンス購入を頂いたお客様には無料招待や割引特典がございます。

研修について

PAGE TOP