LINE WORKS API 2.0 でスタンプメッセージを送ろう - 準備編

この記事は [LINE WORKS Tech Talk (LWTT) 名古屋](https://lwugdev.connpass.com/event/262194/) で活用したハンズオン資料に修正を加えたものです。

# 対象にしている人

* ボットを作ってみたい。
* nodejs を用いたサーバーサイドプログラムを体験したい。
* これから LINE WORKS の連携開発をしたい。
* API 1.0 は触ったけど API 2.0 はまだ。

# 必要な環境

* LINE WORKS の契約（フリープランでOKです）
* Node.js のインストール（バージョン 16 系）
* UTF-8 文字コードが扱えるエディタ（VS Code、メモ帳、サクラエディタなど）

それぞれ説明していきます。

## 1. LINE WORKS の契約

※既に契約があり Developer 権限を有するユーザーアカウントがあれば次項「2. Node.js のインストール」に進みます。

[LINE WORKS のトップページ](https://line.worksmobile.com/jp/) にアクセスして、「今すぐはじめる」ボタンをクリックします。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/62c14096-dbe3-a685-9e03-0ecf1aceeca5.png)

「無料ではじめる」をクリックします。
<img width="30%" alt="無料で始める" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/c8daa3ae-d68e-99b9-2e9a-8ce541939be6.png">

適宜、企業名などを記入していきます。

<img width="30%" alt="企業/団体について選択" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/51d856fb-00a8-91f9-900d-21725d2df6ec.png">
<img width="30%" alt="企業/団体名の入力" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/50b5b98b-fead-faab-14d5-b0679527ffd6.png">
<img width="30%" alt="自分の名前の入力" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/e64a453f-e0dd-a3f5-e1df-48c847ddcefe.png">

手順４で携帯番号の入力がありますが、ここでは下部の「別の方法で新規開設」リンクをクリックします。すると、管理者アカウントとドメインを指定できるようになります。適宜入力して「次へ」をクリックします。

<img width="30%" alt="別の方法で新規開設" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/e3466316-4d06-bb3f-39b3-61df74b64236.png">
<img width="30%" alt="別の方法で新規開設" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/dffda19d-4a85-193b-a1bd-646d1042516d.png">

自分のメールアドレスを入力して認証を完了します。

<img width="30%" alt="メールアドレスの登録と認証" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/e8f33ebe-2ac6-957b-4c9c-2d7ffc565520.png">
<img width="30%" alt="認証番号の入力" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/36a16469-37a9-3e94-e686-4de3cab25084.png">

認証が完了すると追加メンバーの登録画面になりますが、ひとまず下部の「サービスをはじめる」リンクをクリックして続けます。

<img width="30%" alt="サービスをはじめる" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/20fcc838-8fa3-4a9d-aa21-a01405dd31e7.png">

トーク画面はこんな感じです。

<img width="50%" alt="トーク" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/ead7ab28-0c05-9ffd-b635-fd638fd691db.png">

### 補足：Developers 権限

開発時および作成したボット等を運用には、次項の Developer Console サイトにアクセスできる「Developers」権限が必要になります。初期の権限セットにある「最高管理者」と「副管理者」に Developers 権限が含まれています。
※初期ユーザーは最高管理者の管理者に登録されているため、設定は不要です。

権限関係は管理者画面の「セキュリティ＞管理者権限」メニューで該当権限を選択して、「権限の設定」タブの最下部にある「Developers」の項目で確認できます。

<img width="50%" alt="管理者画面の開き方" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/bb1cbfd8-6e03-b9ed-b806-112aa119fb27.png">
<img width="50%" alt="Developers 権限" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/8e988dc2-cf05-01c6-d017-3e57fd3d8934.png">

（フリープランでは権限セットを編集・追加はできません。Developers だけの権限を用意するなど細かく制御したい場合は有料プランを検討します）

### Developer Console へのアクセス確認

開発の中心は「Developer Console」で行います。このコンソールへアクセスできることを確認しておきます。

[Developer Console サイト](https://developers.worksmobile.com/jp/) を開きます。LINE WORKS 管理者画面からは、上部にある「ショートカット＞Developers」からも開けます。

<img width="50%" alt="Developer Console" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/fc99accf-e0b5-2510-8717-fab64f94c00b.png">

初アクセス時は「LINE WORKS APIサービス利用規約」が表示されます。よく読み同意します。
<img width="50%" alt="LINE WORKS APIサービス利用規約への同意" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/249568f9-dfd4-5ce5-3fbe-4af8b0fa0943.png">

以下のように LINE WORKS Developer Console が表示されれば OK です。
<img width="50%" alt="LINE WORKS Developer Console" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/15847c2d-5dd4-fa7e-d1cd-12e8ea407886.png">

ここまでで、LINE WORKS 側の準備ができました。
続いて、開発環境を整えていきます。

## 2. Node.js のインストール

開発言語として Node.js LTS バージョンの 16 を利用します。
※最新版の 18 でも動くと思いますが、以降の説明や検証は 16 で行っています。

### macOS 編

以下に素敵な記事がありました。Homebrew 有無のパターンがありますので、環境に合わせてインストールします。

https://codelikes.com/mac-node-install/

### Windows 編

以下の公式ページにアクセスします。

https://nodejs.org/ja/download/

「Windows Installer」をクリックしてダウンロードします。

<img width="50%" alt="ダウンロード選択" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/285d3799-ac86-1555-050e-4bb0e368d701.png">

ダウンロードしたファイルを右クリック＞プロパティを開きます。
もし全般タブの下部にセキュリティ説明がある場合は「許可する」にチェックを付けて、「OK」をクリックします。
<img width="30%" alt="セキュリティ許可" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/9f2d1fb9-4fb7-b5df-d1a8-b4c66a11083a.png">

ダウンロードしたインストーラー「node-v16.18.0-x64.msi」を実行します。

<img width="30%" alt="" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/c9026697-168c-6551-4872-289235107b17.png">
<img width="30%" alt="" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/b33a6c1d-ebe7-f117-6d24-861d048b97fa.png">

インストール先パスや機能選択はそのまま変更しないで Next をクリックして進めます。

<img width="30%" alt="" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/6e576786-5b5a-e77c-0fee-c8866342cda1.png">
<img width="30%" alt="" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/bbf4f605-12af-b992-e985-92e8144c36f4.png">
<img width="30%" alt="" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/39b72de8-7e6c-13ac-d83f-c14f31f5ec4b.png">

「Install」をクリックし、アカウント制御の確認で「はい」を選択してから2分ほど待つとインストールが完了します。

<img width="30%" alt="" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/115f83a0-cd05-4c51-8a93-9f0168021360.png">
<img width="30%" alt="" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/ece2221a-83bb-fdbc-5e1e-ffe8eb96f3c8.png">
<img width="30%" alt="" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3934/f25c05a5-e1e4-1e8b-dcb7-8a1443a52c3f.png">

#### Node.js インストールの確認

PowerShell を開き `node -v` と打ち込んでバージョン番号が表示されれば OK です。

```powershell
PS C:\handson> node -v
v16.18.0
```

## 3. UTF-8 文字コードが扱えるエディタ

ファイル保存や編集時時に UTF-8 文字コードを指定できるエディタがあれば OK です。

# 準備完了！

LINE WORKS API の開発準備が整いました。

続きは以下の実装編の記事となります。

[LINE WORKS API 2.0 でスタンプメッセージを送ろう - 実装編](https://qiita.com/bugtrap/items/7157d6eb7afc58cd97cd)