CData Software Blog

クラウド連携のCData Software の技術ブログです。

LINE WORKS API を使って組織情報を Excel から参照・編集する:CData Excel Add-in for REST

こんにちは。CData Software Japan リードエンジニアの杉本です。

この記事は CData Software Advent Calendar 2019 12月10日の記事になります。

qiita.com

今日は CData Excel Add-in for REST を使って、LINE WORKS APIを利用する方法を紹介したいと思います。

LINE WORKS とは?

LINE社が提供しているビジネスユーザー向けのグループウェア、チャットコミュニケーションクラウドサービスです。

f:id:sugimomoto:20191210230840p:plain

以下のようにチャットコミュニケーションや予定表管理などを使い慣れたLINEプラットフォームのように利用できるサービスです。

f:id:sugimomoto:20191210230852p:plain

LINE WORKS では 各種ユーザー・組織を管理するたのめの Server APIと予定・ファイル・メールなどの操作を行うClient APIが提供されています。

今回の記事ではServer APIに焦点を当てて、ユーザー情報や組織情報を CData Excel Add-in for REST を通じて、Excel 上から操作する方法を紹介します。

実現できること

LINE WORKSではBtoB向けのクラウドサービスのため、組織情報としてユーザー、役職といった組織情報を管理しています。

それらの情報をCData Excel Add-in for REST を介してAPIから取得し、Excel上から操作できるようにします。

f:id:sugimomoto:20191210230859p:plain

実施手順

それでは実際の手順を解説していきます。

LINE WORKS の組織用APIはServer APIと呼ばれており、実際に利用するためには有償契約が必要になるので注意してください。

LINE WORKS API の準備

まず、LINE WORKS APIを利用するための事前準備を行います。

今回は前述の通り Server APIを利用するので、予めLINE WORKS の Develiopers Console にアクセスして、アプリ登録を行います。

以下のURLにアクセスし、「すぐに開始」をクリックし

https://developers.worksmobile.com/kr/?lang=ja

f:id:sugimomoto:20191210230907p:plain

LINE WORKS API サービスに登録してください。

f:id:sugimomoto:20191210230914p:plain

登録後、以下のようなDeveloper Consoleにアクセスできるようになるので、各種情報を取得・設定します。

必要な情報は以下の3種類です。

まず、API IDの「発行」をクリックし、API IDを生成し控えておきます。

f:id:sugimomoto:20191210230920p:plain

次に Server API Consumer Keyを発行します。以下の「発行」をクリックし

f:id:sugimomoto:20191210230926p:plain

必要な組織連携の権限を付与した上で

f:id:sugimomoto:20191210230931p:plain

Tokenの有効期限を設定し保存します。保存後Consumer Keyが生成されるので控えておきましょう。

f:id:sugimomoto:20191210230936p:plain

次にTokenを取得するためにServer ListにIPアドレスを登録します。Server List(固定IPタイプ)の「追加」をクリックし

f:id:sugimomoto:20191210230942p:plain

サーバー名、先程生成したConsumer Key、IPアドレスを入力して、Tokenを生成します。

f:id:sugimomoto:20191210230947p:plain

以上で事前準備は完了です。

CData Excel Add-in for REST の準備

次に、このAPIを扱うためのクライアントアプリケーションとなるCData Excel Add-in for REST を準備します。

CData Excel Add-in for REST は以下のURLからトライアルが取得できるので、ダウンロードしておきます。

https://www.cdata.com/jp/drivers/rest/excel/

f:id:sugimomoto:20191210230954p:plain

ダウンロード後、セットアップを実施すると

f:id:sugimomoto:20191210231003p:plain

以下のようにExcel へ CDataタブが追加されます。

f:id:sugimomoto:20191210231019p:plain

CData Excel Add-in for REST を使って、LINE WORKS API にアクセスする

それでは、実際にCData Excel Add-in for REST を経由してLINE WORKS API にアクセスしてみましょう。

CData Excel Add-in for REST は様々なREST規格に対応するために、API Scriptという定義ファイルを構成します。今回のLINE WORKS Server API向けのAPI Scriptはすでに私が作成しているので、以下のURLからダウンロードして、任意のフォルダに配置してください。

https://github.com/sugimomoto/CData.REST.LINEWORKS.SERVERAPI

f:id:sugimomoto:20191210231025p:plain

それでは、ExcelのCDataタブから「取得元REST」を選択します。

f:id:sugimomoto:20191210231031p:plain

接続ウィザードが表示されるので、ここでAPIアクセスに必要となる情報を設定します。あらかじめ取得していた3種類の情報と対象となる環境のDomainIDを以下の項目に入力します。

Locationには、先程GithubからダウンロードしたAPI Scriptのファイルを保存したフォルダパスを指定します。

  • Location=C:\CData_REST\LineWorksServerAPI;
  • other="APPID=XXXXXX;DomainId=XXXX;consumerKey=XXXXXX;AccessToken=XXXXX;";

f:id:sugimomoto:20191210231036p:plain

OKをクリックすると、以下のようにテーブル選択画面へ移動します。

f:id:sugimomoto:20191210231041p:plain

例えばUsers テーブルを選択すると、LINE WORKS に登録されているユーザーの一覧が取得できます。

f:id:sugimomoto:20191210231046p:plain

f:id:sugimomoto:20191210231055p:plain

Positionsテーブルを選択すると、役職の一覧が取得できます。

f:id:sugimomoto:20191210231102p:plain

CData Excel Add-in for REST では、取得だけでなく、データの挿入や更新が可能です。例えば、以下のように最下部の行にデータを追加して、「アクション」→「行の挿入」をクリックすることで、データを追加できます。

f:id:sugimomoto:20191210231108p:plain

また、一覧の値を直接変更し、同じ用に「アクション」→「行の更新」をクリックすることで、LINE WORKS上の役職がそのまま更新されます。

f:id:sugimomoto:20191210231116p:plain

おわりに

今回は組織用APIを使って作ってみましたが、LINE WORKS APIでは組織以外にも、様々なAPIが提供されています。もし、このAPIExcelSQLベースで使えるようにしてみたい、といった要望があれば、是非CDataまでご連絡ください。

https://www.cdata.com/jp/support/submit.aspx