APIを使ってSmartHRとLINE WORKSを連携する ―第2回 認証キーの設定

こんにちは。

テクバン株式会社でSmartHRという
クラウド製品の連携開発を行っている担当者です。

前回の記事『APIを使ってSmartHRとLINE WORKSを連携する ―第1回 APIとは?』では、
クラウド人事労務ソフトSmartHRとビジネス用チャットツールLINE WORKSを連携する際に必要な

"API"という仕組みについてご紹介しました。

第2回からは、SmartHR上で手続きを行った際
それを連携してLINE WORKSチャットBot上に通知する方法について、
具体的にご紹介していきます。

はじめに

SmartHRLINE WORKSを通知連携するために、
今回はSmartHRの従業員情報が登録・更新・削除・インポートされたタイミングで
LINE WORKSのチャットBotに通知メッセージを送信するという仕組みをつくっていきます。

下図のような流れを作っていくイメージを持っていただけるといいと思います。

これらを、大きく4つの手順に分けて構築していきます。

SmartHR → LINE WORKS 構築手順

 ・LINE WORKSの認証キー・Bot情報の発行, 登録
 ・Botサーバーの用意(Node.js, Heroku, Gitのインストール)
 ・通知用のBotを作成し、公開する
 ・SmartHR Webhook URLを設定し、実際に動かしてみる

本日は、『LINE WORKSの認証キー・Bot情報の発行, 登録』 について
詳しくふれていきたいと思います。

この手順は、下図の赤枠部分に関わっています。

LINE WORKSのAPIに関する情報をサーバー(今回は「Heroku」という無料サーバを使用します)へ
渡すための準備として、まずはLINE WORKSの方で必要なAPI, Botの情報を設定していきましょう。

目次

LINE WORKSの認証キー・Bot情報の発行, 登録

 1. Developer Consoleへアクセス

 2. API IDを発行する

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

 4. Sever Listを追加する

 5. Private Keyを作成する

 6. Bot登録

1. LINE WORKS Developer Consoleへアクセス

 1.1. LINE WORKS Developer Console 画面 へアクセスする

 1.2. 「LINE WORKSのID」を入力して[はじめる]ボタンをクリックする

 1.3. 「パスワード」を入力して[ログイン]ボタンをクリックする

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

2. API IDを発行する

LINE WORKSには、LINE WORKS Bot Platform APIというWeb APIが公開されています。

>> LINE WORKS Bot Platform APIについて

このAPIを使用するには、ドメインごとに「API ID」というAPIを認証するためのIDが必要です。

API ID」はDeveloper Consoleで発行します。

※既にAPI IDが発行されている場合は、「 3. サーバーAPIのコンシューマーキーを発行する 」 へ
 お進みください。

 2.1. [API]メニューの一番上にある[API ID]の[発行]ボタンをクリックし、[API ID]を発行する

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

Botからユーザーへメッセージを送信する部分には、「サーバーAPI」というAPIが利用されています。

この「サーバーAPI」を利用する時には、「サーバーAPIコンシューマーキー」と「Server Token」を
ヘッダーに含める必要があるので、まず、Developer Consoleで「サーバーAPIコンシューマーキー」を発行します。

 3.1. [API]メニューの真ん中にある、[Server API Consumer Key]の[発行]ボタンをクリックする

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

 3.3. [Tokenの有効期間]を設定する画面が表示されるので、任意の値を選択し、
    [保存]ボタンをクリックすると、サーバーAPIコンシューマーキーが発行される

    ※特に決められていなければ、
     セキュリティ観点上、短い有効期間を設定することを推奨します

4. Sever Listを追加する

次に、サーバーAPIを利用する時にヘッダーに含める「Server Token」を取得するためには
サーバーID」と「認証キー」が必要となります。

Developer Consoleでこの2つを発行していきます。

※Server Tokenは「固定IPタイプ」と「ID登録タイプ」の2種類がありますが、
 今回はBotをホストするサーバーはクラウド上のサーバーを使うので、IPアドレスが変わります。
 そのため、今回は「ID登録タイプ」を使用します。

 4.1. [API]メニューの一番下にある[Server List(ID登録タイプ)]の[追加]ボタンをクリックする

 4.2. 表示されたダイアログの[サーバー名]欄に任意の値を入力する
    [Keyの選択]で、手順3.で発行した[Service API Consumer Key]を選択し、
    [保存]をクリックすると、サーバIDが発行され、認証キーがダウンロードできる

5. Private Keyを作成する

 5.1. [Server List(ID登録タイプ)]>[認証キー]欄の
    [ダウンロード(又は認証キー再発行)]ボタンをクリックする

 5.2. [OK] ボタンをクリックする

 5.3. 下記のようにテキストファイルが作成されるので、任意の場所に保存する

 5.4. 保存したファイルを開くと、下記のようにPrivate Keyが記載されているが、
    改行コードが含まれているため、適宜改行コードを無くすようにする

    【参考】インターネット上にある改行置換フォーム

6. Bot登録

 6.1. 左のメニューから[Bot]をクリックし、[登録]ボタンをクリックする

 6.2. Botの設定(下記の表を参照)をし、「保存」ボタンをクリックする

項目名設定値
Bot名任意の名前を設定する。
説明Botの説明文を設定する。
ユーザがBotを選ぶ際に、分かりやすい文章にすること。
Callback URL[Off]を選択する。
Botポリシー-トークルームへの招待グループトークでBotを使う場合は、[複数人のトークルームに招待可]にチェックを入れる。
管理者-主担当Botの管理者を設定する。

 6.3. 発行したAPI情報やBotNo.は後ほど使用するので、ノート等にメモしておく

回へ向けて

いかがでしたでしょうか。

今回は、通知連携へ向けて
主にLINE WORKSのAPIやBotを使用するための設定方法をご紹介しました。

次回は、LINE WORKSに登録したBotを動かすためのサーバー
用意する方法についてご紹介していきたいと思います。

>> SmartHR APIを使ってLINE WORKSと連携する ―第3回 Botサーバの用意

関連記事

>> APIを使ってSmartHRとLINE WORKSを連携する ―第1回 APIとは?
>> APIを使ってSmartHRとLINE WORKSを連携する―第3回 Botサーバの用意
>> APIを使ってSmartHRとLINE WORKSを連携する ―第4回 通知用のBotを作成し、公開する
>> APIを使ってSmartHRとLINE WORKSを連携する ―第5回 Webhookを設定し、動かしてみる