API の使用において、2種類の上限値があります。
Rate Limit とは 1 分間に実行可能な API の呼び出し回数です。
API の呼び出し回数が Rate Limit を超過すると、呼び出しは一時的に制限され、エラーを返します。
利用プランおよび Scope により、異なる Rate Limit が適用されます。
注意
- Rate Limit は、アプリを登録した LINE WORKS ドメイン に対して、API 単位で適用されます。
- Rate Limit は、ピーク時を想定した Limit 値です。30 分以上連続して API 呼び出しを行う場合は、Limit 値の半分以下を目安に使用してください。
- 復数のサービスをご利用の場合、API または Scope に対して提供される、最も高い制限値が適用されます。
| サービス | プラン | Rate Limit |
|---|---|---|
| LINE WORKSサービス | フリープラン | 1 API 当たり 60 requests/min |
| LINE WORKSサービス | スタンダードプラン アドバンストプラン | 1 API 当たり 240 requests/min |
| LINE WORKS AiNoteサービス | フリープラン | 1 API 当たり 60 requests/min |
| LINE WORKS AiNoteサービス | ソロプラン チームプラン ビジネスプラン エンタープライズプラン | 1 API 当たり 240 requests/min |
| LINE WORKSラジャーサービス | フリープラン | 1 API 当たり 60 requests/min |
| LINE WORKSラジャーサービス | スタンダードプラン アドバンストプラン | 1 API 当たり 240 requests/min |
| LINE WORKS PaperOnサービス | ライトプラン スタンダードプラン アドバンストプラン | 1 API 当たり 240 requests/min |
| LINE WORKS AiStudioサービス | スタンダードプラン | 1 API 当たり 240 requests/min |
利用可能な Scope は、ご利用のサービスとプランにより異なります。サービスとプランで利用可能な Scope は OAuth Scopes > Scope リスト から確認できます。
一部の API または Scope については、利用サービスにかかわらず、固有の RateLimit が適用されます。
| API または Scopes | Rate Limit |
|---|---|
| トークルームの登録 | 1 API 当たり 10 requests/min |
| board board.read group.note group.note.read task task.read | 1 API 当たり 60 requests/min |
| audit.read monitoring.read | 1 API 当たり 10 requests/min |
Rate Limit が適用される API への応答では、Response Header に以下のフィールドが追加され、状況を確認できます。
注意
- ダウンロード URL を取得する API が成功した場合には、リダイレクトを示す HTTP Status Code 302 が返され、Response Header には Rate Limit に関するフィールドは含まれません。対象となる API は ファイルアップロード / ダウンロード をご参考ください。
| Response Header Field | 説明 |
|---|---|
| RateLimit-Used | 基準時間からの API 呼び出し回数 |
| RateLimit-Limit | 適用されている Rate Limit の値 |
| RateLimit-Remaining | 基準時間がリセットされるまでに API 呼び出しが可能な残りの回数 |
| RateLimit-Reset | 基準時間がリセットされるまでの残り時間 (単位:sec) |
注意
- レスポンスヘッダーのフィールド名は大文字小文字を区別せずに扱ってください。表記が予告なく変更される可能性があります。
- 参考: https://www.rfc-editor.org/rfc/rfc9110#section-5.1
Rate Limit を超過した場合には、以下のエラーが返ります。
| HTTP Status Code | code | description | 説明 |
|---|---|---|---|
| 429 | TOO_MANY_REQUESTS | API rate limit exceeded | Rate Limit 超過 |
{ "code": "TOO_MANY_REQUESTS", "description": "API rate limit exceeded"}直後に API を呼び出すことは避け、基準時間がリセットされた後で失敗した API リクエストを再試行してください。Rate Limit は、最長で 1 分経過するとリセットされます。
ユーザー情報などの頻繁に変更されないデータは、キャッシュに保存して再利用することを検討します。 また、必要とするデータが、すでに呼び出した API のレスポンスに含まれていないか確認してください。不必要な API の呼び出しを回避し、API の呼び出し回数を減らせる可能性があります。
ドメインで利用するすべての API の合計で、最大で5スレッドまで並列して API を呼び出すことができます。それを超える場合には、API の呼び出しに失敗することがあります。
| HTTP Status Code | code | description | 説明 |
|---|---|---|---|
| 429 | TOO_MANY_REQUESTS | Concurrent access fail | 同時接続数の超過 |
{ "code": "TOO_MANY_REQUESTS", "description": "Concurrent access fail"}注意
一部の API では、同時呼び出し数に個別の制限がかけられている場合があります。
同一リソースに対する書き込みリクエスト (POST/PUT/PATCH/DELETE) は同時に行わないでください。