技術者ブログ:(Outsystems)外部APIを呼び出す

技術者ブログとして日ごろ取り組んでいる学習内容をご紹介します。
今回は、ローコード開発をテーマにしている第2チームです。

今回のテーマ:(Outsystems)外部APIを呼び出す

Outsystemsでは、いくつかの方法で外部公開されているAPIを利用することができます。
今回は、その中でも特にREST形式のAPIを呼び出す方法について紹介します。

今回使用するAPI

今回は、OpenAIが提供しているAPIの一つである”Completions“(リンク先:APIのリファレンス)を呼び出す場合を例として挙げます。
いわゆる”ChatGPT”が提供している、「リクエストを投げることで、AIがそのリクエストに対する回答を文章形式で返してくれる」機能を実現するためのAPIです。
皆様も一度は目にしたり、利用した経験があるのではないでしょうか?

実装例

今回は、本APIを使用して「ユーザーが入力した日本語レポートについて、AIによる評価を行わせ、内容に対する評価や改善点のフィードバックを受け取る」機能を作成しました。

API実行画面の構成

画面の構成としては至ってシンプルで、画面左の「レポート入力欄」にテキストを入力し、評価実行ボタンを押下することで、画面右の「フィードバック」欄に評価や改善点のフィードバックが表示される、といったものになります。

ボタン押下時のアクション
“GetFeedback”アクション

ボタン押下時の処理は、DataActionに設定したREST APIの再実行になります。
API実行に必要となるリクエストにパラメータを設定し、API本体を実行する、という流れです。
では、ここでどのようにAPIのリクエストを設定するのかというと、Outsystemsにリクエストのサンプルを記載してやることで自動的に生成してくれます。
以下、画像にて説明をしていきます。

RESTのコンテキストメニューを表示。ここで”Consume REST API…”を選択。
今回は”Add single method”を選択します。
呼び出したいRESTのURL、およびリクエスト/レスポンスのサンプルを設定する画面。
ここに先述の”Completions”リンクに記載のAPI Referenceを参考に、リクエスト/ボディを設定する。
ボディの設定例
ヘッダの設定例
ボディ・ヘッダの入力内容を元に、テストデータを入力してテスト実行することで、リクエスト・レスポンスのテスト結果を確認できる。
内容に問題が無ければ”Finish”ボタンを押下することでアクション本体、およびリクエスト・レスポンスに必要なデータ型(Structure)が自動生成される。

ここまでできれば、後は通常のOutsystemsでロジックを組む場合と同様に、作成されたREST APIをアクションとしてフローに配置し、必要なインプットを設定、戻り値を処理するだけで呼び出しが実現できます。

実行例。入力したレポートに対するフィードバックが返されている。

まとめ

いかがでしたでしょうか?
実際に公開されているAPIのURLと、APIのリファレンスがあれば、このようにOutsystemsから通常のアクションと同じように呼び出すことができます。
ただし、一般に公開されているAPIについては使用料金を設定していたり、回数や容量に制限を設けていたりする場合があります。
くれぐれもご利用は計画的に…。

第2チームでは、これからもOutSystemsなどのローコードツールを使った技術者ブログを展開していきますのでお楽しみに!