LoginSignup
6

More than 3 years have passed since last update.

posted at

LINE WORKS APIをPostmanから叩いてみる

はじめに

「LINE WORKSのAPIを使ってみたいんだけど、何から始めればいいですか?」という方に向けて、この記事を書いています。
プログラミングする前に、まずLINE WORKSのAPIの仕様を確認したい時や、ちょっとしたトラブルシューティングしたい時、API実行時のパラメーターの設定方法があっているか確認したい時、応答のJSONがどんな形式で返ってくるのか確認したい。そんな時にとってもPostmanが便利なんです!!!!

Windows版・Mac版それぞれアプリがあるので環境にも依存しません!まず、ここから始めてみませんか?

Postmanインストール

Postman
image.png

[Download the App]をクリックして、Windows版・Mac版のアプリをダウンロードし、インストールしてください。

LINE WORKSのDeveloper Console設定

APIを叩く前に、LINE WORKSのDeveloper Consoleでいくつか設定が必要です。

Developer Consoleへアクセス

①LINE WORKSのDeveloper Consoleへアクセスします。
②LINE WORKSのIDを入力してログインします。
image.png

下記画面が出力された場合は、Developer Consoleへのアクセス権限がありません。Developer Consoleへアクセスするためには、ライトプラン以上のテナントの「最高管理者」もしくは「副管理者」の権限が必要です。権限の付与手順は、こちらを参考にしてください。
image.png

③[LINE WORKS APIサービス利用規約]を確認し、[APIサービス利用規約の内容を理解し、これに同意します。]にチェックを入れ、[利用する]ボタンをクリックします。
image.png

API IDを発行する

LINE WORKS Bot APIを使うにあたり、ドメインごとに「API ID」が必要となります。「API ID」はDeveloper Consoleで発行します。

①[Developer Console]へアクセスします。
②[API]メニューの一番上にある[API ID]の[発行]ボタンをクリックします。
image.png

③API IDが発行されました!
image.png

サーバーAPIのコンシューマーキーを発行する

Botがユーザーにメッセージを送信する時には「サーバーAPI」を利用します。
また、サーバーAPIを利用する時には、「サーバーAPIコンシューマーキー」と「Server Token」をヘッダーに含める必要があります。まず、Developer Consoleで「サーバーAPIコンシューマーキー」を発行します。
①Developer Consoleへアクセスします。
②[API]メニューの真ん中にある[Server API Consumer Key]の[発行]ボタンをクリックします。
image.png

③サーバーAPIの利用範囲を聞かれるダイアログが表示されます。今回はBotのみ利用するため、[トークBotすべて]を選択し、[次へ]をクリックします。
image.png

④[Tokenの有効期間]は「短く設定することを推奨しています。」と注意書きも書いてあるので、一番短い7日間に設定しましょう。また、Tokenを利用した時に自動的にTokenの有効期限を延長する場合は、[Tokenの使用時に有効期間を自動延長しますか?]にて、[はい]を選択します。完了したら、[保存]をクリックします。
image.png

⑤サーバーAPIコンシューマーキーが発行されました!
image.png

Server Listを追加する

次に、サーバーAPIを利用する時にヘッダーに含める必要がある「Server Token」についてですが、「Server Token」を取得するためには「サーバーID」と「認証キー」が必要となります。Developer Consoleでこの2つを発行しましょう。
ちなみに、このServer Tokenも2種類「固定IPタイプ」と「ID登録タイプ」があります。今回は、ローカルのPCにインストールしたPostmanから実行するためIPアドレスが変わりません。そのため、今回は「固定IPタイプ」を使います。

【補足】
Botサーバーをクラウド上に構築する場合は、IPアドレスは変わると思いますので、「ID登録タイプ」を使いましょう。

①Developer Consoleへアクセスします。
②[API]メニューの[Server List(固定IPタイプ)]の[追加]ボタンをクリックします。
image.png

③表示されたダイアログの[サーバー名]欄には任意の値を入力します。ここでは、わかりやすいように「Postman」としました。[Keyの選択]で、先程発行したService API Consumer Keyを選択します。
[IP]には、パブリックIPアドレスを入力します。わからない場合は、ここなどで調べましょう。
全て設定できたら[発行]ボタンをクリックします。
image.png

④Tokenが発行されるので[コピー]ボタンをクリックし、Tokenを保存しておきましょう!
image.png

⑤[同意して利用する]ボタンをクリックして閉じます。
(何に同意・・・?)

PostmanだけでトークBotを作ってみましょう!

APIを叩く時の共通設定

API を呼び出す際には、必ずヘッダーに認証トークンとコンシューマーキー(サーバーAPIを叩くときは、サーバーAPIコンシューマーキーのこと)を含める必要があります。この設定は、以下の手順で全て共通です。

Postmanでは、[Headers]タブに、下記のように指定します。

KEY VALUE
consumerKey <サーバーAPIコンシューマーキー>
Authorization Bearer <Token>
(「Server Listを追加する」④で発行したToken。
'Bearer'と'Token'の間には空白(space)を必ず入れること。)

image.png

Bot登録

LINE WORKSへBotを登録します。
ドキュメント:トーク Bot のテナント登録

ドキュメントをみて、Request URLとHTTP Methodを確認します。

KEY VALUE
Request URL https://apis.worksmobile.com/r/{API ID}/message/v1/bot
HTTP Method POST

①Postmanで、HTTP Method(B欄)で「Post」を選択肢、Request URL(A欄)にドキュメント通りにRequest URLを入力します。
image.png

②次に、Bodyにパラメーターを指定していきます。トーク Bot のテナント登録の「Request Example」の「Simple」欄に記載があるものが、必須のパラメーターのみ指定した例になります。これをコピーして、PostmanのBody欄の[raw]を選んで、その下にペーストします。ペーストした値を自分の環境にあったものに変更します。
image.png

③Headersに「APIを叩く時の共通設定」の内容が設定されていることを確認し、[Send]をクリックします。

④正常に動作すると、画面下部にレスポンスが返っていきます。Status欄に「200 OK」と返ってきて、botNoがBody欄に表示されていたら、正常にBotが登録されています!
image.png

⑤Developer Consoleの[Bot]欄をみると、登録したBotが表示されていることを確認することができます。
image.png

登録されたBotの利用設定

Botを利用できるように、ドメインに登録します。
ドキュメント:トーク Bot のドメイン登録

①先ほどと同じように、ドキュメントを参照し、Request URLとHTTP Methodを設定します。

KEY VALUE
Request URL https://apis.worksmobile.com/r/{API ID}/message/v1/bot/{botNo}/domain/{domainId}
HTTP Method POST
  • {API ID}は、Developer ConsoleのAPIメニューのAPI ID欄を参照。
  • {botNo}は、Developer ConsoleのBotメニューの登録したBotを参照。
  • {domainId}は、Developer Consoleの左メニュー一番下の[Domain ID]を参照。

image.png

Postmanで指定した場合、下記のようになります。
image.png

②Botのドメイン登録は、Bodyに指定する必須パラメーターはありませんので、このまま[Send]をクリックします。
※Headersに「APIを叩く時の共通設定」の内容の設定することを忘れずに!

③Status欄に「200 OK」と返ってくれば正常です。
image.png

Admin Console上でBotが登録されていることを確認します。
※公開設定は、[非公開]になっています。
image.png

Botをテナント内で公開にする

Botを公開すると、LINE WORKSのテナントに登録されているユーザーはBotを見つけることができます。

ドキュメント:トーク Bot ドメイン設定の修正

①ドキュメントを参照し、Request URLとHTTP Methodを設定します。

KEY VALUE
Request URL https://apis.worksmobile.com/r/{API ID}/message/v1/bot/{botNo}/domain/{domainId}
HTTP Method PUT

②公開設定を「公開」に変更するので、Body欄に下記のように指定します。

{
  "usePublic": true
}

Postmanで指定すると、下記のようになります。

image.png

③設定が完了したら、[Send]をクリックします。
※Headersに「APIを叩く時の共通設定」の内容の設定することを忘れずに!

④Status欄に「200 OK」と返ってくれば正常です。
image.png

Botからメッセージを送信する

いよいよBotからメッセージを送ってみましょう!ここではまず簡単なテキスト文を送ります。

ドキュメント:メッセージ送信(text)

①ドキュメントを参照し、Request URLとHTTP Methodを設定します。

KEY VALUE
Request URL https://apis.worksmobile.com/r/{API ID}/message/v1/bot/{botNo}/message/push
HTTP Method POST

②Body欄に下記のように指定します。

{
  "accountId": "admin@example.com",
  "content": {
    "type": "text",
    "text": "こんにちは!よろしくお願いします!"
  }
}
  • accountIdは、メッセージを送信するユーザーのアカウントIDを指定します。
  • 送信するメッセージの内容をtextパラメーターで指定します。

Postmanで指定すると、下記のようになります。
image.png

③設定が完了したら、[Send]をクリックします。
※Headersに「APIを叩く時の共通設定」の内容の設定することを忘れずに!

④Status欄に「200 OK」と返ってくれば正常です。
image.png

⑤LINE WORKSのトーク画面で、Botからメッセージが送信されていることを確認します。
image.png

Botを作成して、メッセージを送信するところまでPostmanで出来ました!

Postmanを使ってサンプルコードを作成

PostmanはあくまでAPIをテスト実行するためのツールです。
実際にBotを開発しようと思うと、Bot用のサーバーを構築し、プログラミング言語で開発する必要があります。
プログラミングの過程でも、Postmanは役立ちます!

実は、この[Code]というところをクリックすると、様々なプログラミング言語でのサンプルコードが生成されるのです!!
image.png

image.png

LINE WORKSのDeveloperサイトにサンプルコードがなくても、Postmanさえあれば問題なしです!(笑

最後に

久々に、LINE WORKSのトークBot API叩いてみましたが、RESTful対応してめっちゃ使いやすくなってた・・・嬉しい!!:relaxed:
トークBotが送信できるメッセージの種類もTextタイプだけでなく画像付きのカルーセルやリストボタンなども対応していますし、リッチメニューなども設定可能です。
Postmanでぽちぽち叩いてみて、どんなことができるのかぜひ試してみてください!

image.png

image.png

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
What you can do with signing up
6