見出し画像

BOTをAPIとして実行してみた

村井@C-RISEです。
先日、クラウドBOT®で自動化BOTを作る手順をご紹介しました。

今回は、クラウドBOT®で作ったBOTをAPIとして実行してみたいと思います。
APIというと、プログラムをガリガリとコーディングするイメージを持たれている方も居られると思います。
しかし、今回はBOT作成からAPI実行まで

・プログラミング不要のノーコード
・専用ソフト不要のノーインストール

で手順をご紹介致します。
なので、プログラム経験の無い方でも気軽に読んで頂けると思います。

エンジニアの方であれば、API実行の為の細かいソースコードの説明をしなくても、この記事からイメージを掴んで頂き、読了後すぐにソフトにAPIを組み込めると思いますし、非エンジニアの方であれば「APIってこういうものなんだ」と概要を理解して頂き、さらには実際に自分でAPIを作成して実行して頂けると思います。

最近のiPaaSの盛り上がり具合を見てると、ノーコードでAPIを呼び出す手段も今後ますます増えてくるだろうなと感じます。

BOTをAPI化すると何ができるのか?
作ったBOTを色々なシステムとつなげる事ができるようになります。
クラウドBOT®の大きなテーマの一つは「つなげる事」です。
今後、BOT同士をつなげる機能の提供も予定しています。

クラウドBOT®は無料でBOTをAPI化できる

来月正式サービスとして、有料プランの発表を予定しています。
でも、もちろん無料プランも継続します。
そして、なんと無料プランでもAPI機能は利用可能です。
プログラムを覚えたての学生さんや、趣味でプログラミングをしている方もぜひ無料プランで色々なBOTを作ってAPI連携に挑戦してみて下さい。

​まずは、BOTを作ってみよう

まずは、API化する為のBOTを作ります。
以前の記事と同じような手順で作ってみましょう。
今回は、気象庁のページから明日の天気予報を取得するBOTを作ってみたいと思います。

データ取得対象のサイトはここです。

では、前回の復習も兼ねて早速BOTを作ってみましょう

図1

新しいBOTを作る時は、ダッシュボードから「BOTを作る」をクリックします。

図2

BOTエディタが立ち上がったら、上記のURL入力欄に先程の気象庁のURLを貼り付けてEnterを押下します。

図3

気象庁のサイトが表示されました。
手順の記録状況を確認する為に、メニューボタン「≡」をクリックしてサイドメニューを開きます。

図4

サイドメニューの「記録開始」ボタンをクリックすると、現在のページを初期ページとして記録が開始されます。

図5

自動的に「アドレス入力操作」とデータとしての「ページURL」が記録されましたね。

図6

取得したいのは、明日の天気予報です。
週間天気予報の明日の日付(3月30日時点の翌日3月31日)をテキストコピーします。「値2」というデータ名で記録されました。

図8

そして、「雨のち曇り」という明日の天気情報もテキストコピーします。値3というデータ名で記録されました。
このままだと、データの意味が分かり難いのでデータ名を編集します。

図9

それぞれ、データ名を「日付」と「天気」に変更しました。
気象庁ページのコピー位置にもそれぞれのデータ名称が同時に反映されます。
さらに色々操作を記録しても良いのですが、記事が長くなってしまうので、今回はこれでBOT操作の記録は完了です。

図10

左上の保存アイコンをクリックすると上記のような保存画面が表示されます。
BOT名と説明を入力して「保存」ボタンをクリックすると新規BOTが生成されます。
その後、エディタ左上の「終了」アイコンをクリックしてBOTエディタを閉じて下さい。

BOTを実行してみる

図11

BOTエディタを終了するとダッシュボード画面に戻りますが、既に天気予報のBOTが出来上がってます。
試しに実行してみましょう。

図12

今回は、入力データが無いBOTなので、何も入力せずそのまま「実行」ボタンをクリックします。

図13

先程と同じ結果が取れましたね。
ちなみに、翌日(5月31日)再度実行してみた所、次の日(6月1日)の天気予報が取得できました。

図30

API機能を有効化する

では、この今作ったBOTを早速API化してみましょう。

図14

ダッシュボードの左側メニューから「開発者向け」をクリックします。

図15

初めてAPI機能を使う場合、API機能の有効化をする必要があります。
その際に、APIを公開する為のパス入力を求められます。
他ユーザと重複しなければ良いので、好きなID名を入力して「APIを有効にする」ボタンをクリックします。
とりあえず、「murai-bot」という公開パスを入力してみました。

図16

確認画面で「OK」をクリックするとAPI機能が有効化されます。
有効化されたら、今後自分が作ったBOTを公開する時のベースパスが表示されます。

https://api.c-bot.pro/murai-bot/

これが私が作ったBOTを公開するパスであり、APIのエンドポイント(URL)のベースになります。

図17


アクセストークンを発行する

そして、APIを呼び出す時の認証用アクセストークンを発行します。
上記画面の「アクセストークンを発行する」ボタンをクリックすると下記画面が表示されます。

図18

アクセストークンは1ユーザあたり3つまで発行できます。
トークン毎に権限分けしたい場合に使い分ける事ができますね。
とりあえず、実行・参照・中断全ての権限を選択して「発行する」ボタンをクリックしました。

図19

アクセストークンが発行されました。
ここで表示されるシークレットキーは後から再確認する事ができません
サーバ内にも保存されない(非可逆暗号化される)ので、問い合わせても再入手できません。必ずこの画面でコピーして保管して下さい。
そして、このアクセストークン情報は、アカウント情報と同じように他人に見られないように大切に管理しましょう。
それでも、シークレットキーを紛失してしまった。他人に見せてしまったという方は、一度削除して再発行しましょう。

作成したBOTをAPI公開する

APIリスト画面の「非公開」タブには、まだ公開されていないBOTの一覧が表示されています。
このリスト内に先程作ったBOT「石川県の天気予報」が表示されているので、「公開する」ボタンをクリックします。

図20

BOTをAPIとして公開する為のIDを入力します。
今回は、「ishikawa-weather」と入力しました。
「APIを公開する」ボタンをクリックします。

図21

確認画面が表示されたら「OK」をクリックして確定します。
図22

これでBOTがAPIとして公開されました。

APIをテストツールから実行してみる

それでは、早速APIを実行してみたいと思います。
一般的にAPIはphp、ruby、Java等のプログラム言語でコーディングして呼び出すのですが、クラウドBOT®では簡易的に動作確認を行う為のAPIテストツールを提供しています。
BOTをAPI公開すると下記のようなAPI情報画面が表示されます。
画面を見て頂ければ分かりますが、もちろん開発者向けのAPIリファレンスも提供しています。

図23

では、このAPIテストツールの画面内を順番に確認してみましょう。

図24

まずは、エンドポイントです。
エンドポイントはAPIを実行する時に呼び出すURLですね。
先程入力した公開パスBOT IDから生成されたエンドポイントが表示されています。
1つのBOTに対して下記の3つのAPIが生成されます。

BOT実行:BOTを実行します。実行IDや実行結果を取得する事ができます。
ジョブ参照:実行IDからBOTの実行状態や実行結果を取得できます。
ジョブ中断:実行IDを指定してBOT実行を中断できます。

このAPIをテスト実行できるのが下記のテストツールです。

図25

テストツール画面では、テストする対象のAPI(実行、参照、中断)をタブで切り替えできます。
画面上部には、対象APIのエンドポイントも表示されていますね。
今回はBOT実行APIを呼び出してみたいと思います。

図26

Request Headersの「access-token」「secret-key」欄に先程発行したアクセストークンとシークレットキーを入力します。
この入力欄が英語表記になっているのは、実際にAPI実行時に送信するデータ(ヘッダ)の名称が英語表記なので、実データの表記に合わせてあります。

次にRequest Bodyを見てみるとAPIに引き渡す引数情報が表示されています。
"input":{}の中に入力データを記述すると任意の入力データを指定できるのですが、今回のBOTは入力データが無いので何も触らずそのまま「Send」ボタンをクリックすると画面上からAPIが実行されます。

図27

実行結果が表示されましたね。
僅か2秒でBOT実行が完了しました。

201 Created

と表示されていますが、正常終了を意味しています。
そして、Response Bodyには実行結果の値が返ってきています

"output": {
    "日付":"31火",
    "天気":"晴のち曇"
}

無事APIの実行結果を取得できました。
この値をプログラムで取り出して、他のシステムやソフトに入力したり表示する事で連携ができます。

図28

実行結果を確認する

図28

BOTの詳細画面を見てみると、先程手動で実行したログと並んで、APIで実行したログが表示されています。
実行結果も正常終了になっています。
ログの「詳細」ボタンを押してみましょう。

図29

実行時間や、実行結果(出力データ)、実行時のスクリーンショット等を見る事ができます。
API実行で何らか異常があった場合でも、どんな画面でエラーが発生したのか、ログ画面から確認できますね。

最後に

という事で今回は、BOTを作ってAPIとして実行してみる手順をご紹介しました。
作成から実行まで全てクラウドBOT®の画面上から行う事ができました。
通常、APIを使用する場合、外部のソフトウェアから呼び出します。
つまりソフトウェア開発の際にAPIを呼び出すように組み込むのです。
しかし、上記でも述べたように最近はノーコードで簡単にAPIを呼び出せるサービスも色々と増えてきています。
そして、クラウドBOT®もそういったサービスの一つになる予定です。
そうすれば、非エンジニアも気軽にAPIを活用できるようになります。
クラウドBOT®のAPI連携に対する考え方は下記の記事でも紹介しているので、よろしければ是非こちらも読んでみて下さい。

現在、4月の正式サービス公開に向けて最終準備段階ですが、正式公開以降も継続的に機能アップデートを行っていく予定です。
その都度、リリースされた機能についての解説や設計思想、クラウドBOT®の使い方等をご紹介していきたいと思います。

目指しているのは様々なWEBシステム/サービス/デバイスをクラウド上のBOTでつなぐ事です。

作ったBOTが自動的に動き出すのは単純に見ていて楽しいです。
触ってみて、体験してみた結果、新しいアイデアが浮かんでくるかも知れません。
本サービスに共感頂ける方は、是非一度クラウドBOT®を触ってみて下さい。

本記事を最後まで読んで頂いた皆様ありがとうございました。
是非、記事・サービスに対するご意見ご感想をお待ちしてます!


この記事が気に入ったらサポートをしてみませんか?