1. はじめに
2年目になってしまいました。三木拓海です!
そしてなんと、この4月よりFIXERのtech blog編集部にも参加させていただくことになりました~!
これからはより一層tech blogを盛り上げられるよう活動していきたいと思います!
まず初めに、尊敬する先輩編集部員であるところのなむゆさんが固定ハンドルで投稿されてるので、三木も固定ハンドル付けようかなと考えています。
みきみ、みきた、きたく、うーんイマイチパッとしない……。いいアイデアあったら、皆様三木まで教えてください。
さて、そんな部員になってからの初ブログはPowerPlatformリレー、FIXERのエンジニアがPowerPlatformについてのあれこれを記事にします。
私の記事は、PowerPlatformのカスタムコネクタの紹介です。
2. コネクタとは?
PowerPlatformには、コネクタと言われる外部サービスとの連携用部品みたいなものがあります。
PowerPlatformに予め用意されているコネクタは325種類以上あり、これらのコネクタによってExcel上の集計データをPowerApps上で表示したり、AutomateからSlackやYammerにメッセージを送ることができます。
自分はこれまで何気なくこれらのコネクタを使っていたんですが、ふと、これってどういったものなのか気になり、公式ドキュメントを調べてみました。
そしたらなんと、以下のような文が
コネクタ は、基礎となるサービスが Microsoft Power Automate、 Microsoft Power Apps、Azure Logic Apps と通信できるようにする API のプロキシ/ラッパーです。 それにより、ユーザーがアカウントを接続し、事前に構築された アクション と トリガー のセットを活用してアプリとワークフローを作成する方法が提供されます。
え、コネクタってAPIのラッパーだったの?
3. コネクタの正体はAPIのラッパー
ラッパーという言葉に聞きなれない人もいるかと思いますが、サランラップのラップと同じ意味で、”包むもの”という意味を表す言葉になります。
今回の場合は“そのままでは使えない機能や部品を包み込み、使えるように間に入ってくれるもの”だと思ってください。つまり、コネクタは、各サービスで提供されているAPIを包み込みPowerPlatform上からその機能を呼び出す事ができるよう包んだものという事になります。
Excelデータの取得やSlack、Yammerのような業務コミュニケーションツールとの繋ぎこみは、各ツールのAPIをラップしたコネクタがすでに提供されているので、スムーズに行なえるわけですね。
4. いや、そもそもAPIって何?
これもまた広い意味の言葉なので、とても簡単に解説するのですが、ソフトウェア同士を結合する仕組み、だと思ってください。
そして、今回の場合はその結合のための統一規格みたいなものかなと思ってください。
以下の画像のようなイメージで居てもらえるとありがたいかなと。
外部サービスとの連携を想定し、APIを用意しているサービスは、それらのAPIをラッピングしたコネクタを使用することで、その機能がPowerPlatform上で活用可能になる訳ですね。
5. カスタムコネクタとは?
さて先にも述べた通り、PowerPlatformでは、325種類以上のコネクタが予め用意されています。
TwitterやSpotify、YouTubeなど、APIが公開されているものは、ほとんどコネクタによって最初から連携が可能になっています。
しかし、コネクタが用意されていないサービスと連携したい時や、APIとしては用意されているが、コネクタでは包んでいない機能も使えるようにしたい場合があります。
そんな時に新しく独自に作成できるコネクタ、それがカスタムコネクタです。
6. REST APIが提供されているものはカスタムコネクタで連携可能!
カスタム コネクタは、REST API(Logic AppsはSOAP APIもサポートします)のラッパーで、Logic Apps、Power AutomateまたはPower Appsに REST またはSOAP APIとの通信を許可します。
https://docs.microsoft.com/ja-jp/connectors/custom-connectors/
カスタムコネクタはREST APIのラッパーです。REST APIとはまたこれも詳細をぼかしますが、今流行りのAPIの設計方式だと考えてもらうのが良いでしょうか。
例えばkintoneやSpotifyのようなREST APIを公開しているサービスならば、カスタムコネクタを作成することで繋ぎこめますし、一般公開しない社内用のソフトウェアであったとしてもAPIが用意されていればカスタムコネクタを作成してあげることで、PowerPlatformと繋ぎこむことが可能になります。
7. おわりに
今回は、PowerPlatformで活用可能なカスタムコネクタの紹介をしました。 ドキュメントを読んでいたところ、コネクタはAPIのラッパーだったという点にびっくりし、そのまま記事にした次第です。
昨今のウェブサービスは、APIを用意し、外部連携を最初から想定しているものがほとんどなため、PowerPlatformは実質的にほとんどのウェブサービスと連携可能だと考えてよいでしょう。
今回は紹介までとさせていただきますが、また別の記事にて、作成手順の紹介もできれば良いなと思っています。
FIXER Inc. 三木拓海
FIXER2020新卒の三木拓海です!
東京工業大学院でCGの研究室に居ました。
芝居とお酒が好きです。