Postman で LINE WORKS API の公式コレクションを使い、Bot の作成・ドメインへの登録・メッセージの送信・削除までを、すべて API で行う手順を紹介します。コレクションの Fork とアクセストークンの取得は前回の記事で扱ったので、この記事はその続きです。
概要
Bot は Developer Console で作成し、管理者画面でドメインに追加して使うのが基本の流れですが、Bot の概要にあるとおり、Bot の追加作業は Bot API でも行えます。この記事では次の順に API を呼びます。
| 手順 | API |
|---|---|
| 1. 自分の userId と domainId を調べる | GET /users/me |
| 2. Bot をテナントに登録する | POST /bots |
| 3. Bot をドメインに登録する | POST /bots/{botId}/domains/{domainId} |
| 4. Bot からメッセージを送る | POST /bots/{botId}/users/{userId}/messages |
| 5. Bot を削除する | DELETE /bots/{botId} |
Bot API の概要に「User Account 認証または Service Account 認証 (JWT) で取得した Access Token で利用できます」とあり、前回の記事と同じ User Account 認証のトークンで進められます。
必要な準備
- 前回の記事の手順で、コレクションの Fork と OAuth 2.0 の設定ができていること
- この記事の手順は、テナントの管理者のアカウントで確認しました
手順
0. scope に bot を追加してトークンを取り直す
Bot API の概要の「Scope の使い分け」では、Bot の開発には bot.message が推奨され、Bot の作成などを API で行う場合は bot を使うとされています。この記事では Bot を API で作成するので bot を使います。
- Developer Console のアプリの OAuth Scopes に
botを追加して保存する - Postman のコレクションの Authorization で、Scope を
user.read botにして保存する (複数の scope は半角スペースで区切ります。User Account 認証) - Get new access token でトークンを取り直し、Use Token を押す
アクセストークンの有効期限は、Developer Console のアプリの設定 (1 hour / 24 hours) で決まります。途中で 401 Unauthorized (Authentication failed) が返るようになったら、トークンを取り直します。
1. 自分の userId と domainId を調べる
前回の記事と同じく「Directory > ユーザー (メンバー) > ユーザーの取得」で GET /users/me を送ります。応答の userId (自分のユーザー ID) と domainId (ドメイン ID) を、次の手順で使います。
コレクションの Variables に domainId を追加し、応答の domainId を入れておきます。
| Variable | Value |
|---|---|
domainId |
応答の domainId
|
2. Bot をテナントに登録する
「Bot > テナント上の Bot 管理 > Bot のテナント登録」を開きます。Body にはドキュメントのリクエスト例が入っているので、次のように書き換えます。Bot のテナント登録で必須になっているのは botName、photoUrl、description、administrators の 4 つです。
{
"botName": "Postman テスト Bot",
"photoUrl": "https://raw.githubusercontent.com/iwaohig/lineworks-postman/main/docs/bot-icon.png",
"description": "Postman から API で登録した試用の Bot です",
"administrators": ["<手順 1 で調べた自分の userId>"]
}
-
photoUrlは Bot のプロフィール画像の URL です。HTTPS の PNG で、640×640 が推奨されています。試すためのアイコンを GitHub に置いているので、上の URL をそのまま使えます -
administratorsは Bot の担当者のユーザー ID のリストです (1〜3 人)
Send を押すと 201 Created が返り、応答に botId が入っています。
コレクションの Variables の botId に、応答の botId を入れます。
| Variable | Value |
|---|---|
botId |
応答の botId
|
この時点では Bot はテナントに登録されただけで、メンバーはまだ使えません。
3. Bot をドメインに登録する
「Bot > ドメイン上の Bot 管理 > Bot のドメイン登録」を開きます。URL は POST /bots/{{botId}}/domains/{{domainId}} で、手順 1・2 で入れた変数がそのまま使われます。
Body は次のようにしました。
{"visible": false, "allowToSelectedMember": false}
Bot のドメイン登録の説明では、visible は組織図での Bot の公開可否、allowToSelectedMember はメンバーを指定して利用権限を与えるかどうかで、どちらも既定値は false です。この設定では、Bot は一覧に表示されず、利用者は限定されません。
Send を押すと 201 Created が返ります。
同じドキュメントに、管理者画面でドメインに Bot を登録した場合はユーザーにサービス通知が送信されるが、API で登録した場合は送信されない、と書かれています。
4. Bot からメッセージを送る
「Bot > メッセージの送信 > メッセージの送信 - ユーザー指定」を開きます。
Body は {"content": null} の雛形になっているので、送る内容に書き換えます。
{"content": {"type": "text", "text": "Postman からのテスト送信です"}}
宛先はパスの {userId} で指定します。me が使えるのは一部の API です (共通仕様の「me キーワード」)。メッセージの送信 - ユーザー指定では、userId に指定できる値は「ユーザー ID (userId)」と「ログイン ID (email)」です。前回の記事でコレクション変数 userId を me にしている場合、そのまま送ると次のエラーになります。
{
"code": "INVALID_PARAMETER",
"description": "userId (me) does not exist."
}
URL の {{userId}} の部分を宛先のログイン ID に書き換えて Send を押すと、201 Created が返ります (応答の本文は空です)。
この記事では、トークンの持ち主 (自分) 宛てと、同じテナントの別のメンバー宛ての 2 通を送り、どちらも 201 Created になって、相手のトークに Bot からメッセージが届くことを確認しました。
宛先のトークには、API で作成した Bot からメッセージが届きます。
5. Bot を削除する
試した Bot は削除しておきます。「Bot > テナント上の Bot 管理 > Bot の削除」で DELETE /bots/{{botId}} を送ると、204 No Content が返ります。
注意事項
- メッセージは実際に届きます。 別のメンバーに送るときは、事前に了承を得てから試します
- Bot はテナントあたり最大 300 個まで登録できます (Bot のテナント登録)。試した Bot は削除しておきます
- 同じ Bot に対して、登録・更新・削除などの API を同時に呼ばないでください。 Bot のテナント登録などのページに注意として書かれています
- この記事の手順はテナントの管理者のアカウントで確認しました
確認した環境
- Postman Web 版 (2026 年 9 月 26 日時点)
- LINE WORKS (User Account 認証、scope
user.read/bot、管理者のアカウント)




