# 開発ガイドライン

Messaging APIを使ったLINEボットを開発する際は、以下の開発ガイドラインに従ってください。

注意

LINEボット開発における基本ルールは、規約とポリシーに記載される内容に基づきます。

# LINEプラットフォームへの大量リクエストの禁止

負荷テストを目的に、LINEプラットフォームへ、大量のリクエストを送信しないでください。

なお、いかなる目的でもレート制限を超えてリクエストを送信しないでください。

注意

レート制限を超えて送信を行った場合、429 Too Many Requestsが返却され、エラーとなります。

# LINEプラットフォームを経由した負荷テストの禁止

LINEプラットフォームから、ボットサーバーに負荷テストを行うサービスはありません。

負荷テストを目的に、大量のメッセージをLINEプラットフォームを経由して送信しないでください。ボットサーバーの負荷テストを行うための環境は、別途用意してください。

# 同一ユーザーへの大量送信の禁止

いかなる目的でも、同一ユーザーへメッセージを大量送信しないでください。

# 存在しないユーザーIDへのリクエストの禁止

リクエストを送信するときは、存在しないユーザーIDを指定しないでください。

# ログ保存の推奨

問題が発生した際に、開発者自身が原因や影響範囲の調査を円滑に行えるよう、Messaging APIに対するリクエストのログや、Webhook受信時のログを一定期間保存することを推奨します。

# Messaging APIに対するリクエストのログ

Messaging APIに対するリクエストを行った際は、以下の情報をログとして保存することを推奨します。

具体的には、以下のような形式でログファイルなどに保存します。

リクエストID(x-line-request-id APIリクエストを行った時間 リクエストメソッド APIエンドポイント ステータスコード
8e36bade-c5d6-4d00-9e69-72244675a9a1 Mon, 05 Jul 2021 08:14:35 GMT POST https://api.line.me/v2/bot/message/push 200

# Webhook受信時のログ

ボットサーバーでLINEプラットフォームからのWebhookを受信した際は、以下の情報をログとして保存することを推奨します。

  • Webhook送信元のIPアドレス
  • Webhookを受信した時間
  • リクエストメソッド
  • リクエストのパス
  • 受信したWebhookに対し、ボットサーバーがレスポンスしたステータスコード

具体的には、以下のような形式でログファイルなどに保存します。

送信元IPアドレス Webhookを受信した時間 リクエストメソッド リクエストのパス ステータスコード
xxx.xxx.xxx.xxx Mon, 05 Jul 2021 08:10:00 GMT POST /linebot/webhook 200
追加でログに保存しておくと有用な情報

運用するボットの要件等によっては、上記に加えて、たとえば以下のような情報を保存しておくことで、問題が発生した際の調査をより円滑に行うことができます。

  • Messaging APIに対するリクエストのボディ
  • APIリクエスト後にLINEプラットフォームから返却されたレスポンスのボディ
  • LINEプラットフォームからWebhookが送信された際のリクエストヘッダーの署名(x-line-signature
  • LINEプラットフォームから送信されたWebhookイベントオブジェクト
ログの提供は行っておりません

Messaging APIに対するリクエストのログや、LINEプラットフォームからボットサーバーへのWebhook送信時のログ等は、お問い合わせいただいても提供は行っておりません。ログの保存は、LINEボットを開発する開発者自身で行ってください。