Rate Limits
Rate Limitとは一定時間内に実行可能なAPIの呼び出し回数です。
アプリによるAPIの呼び出し回数が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"
}
適用対象
現在、下記のScopeにRate Limitが適用されています。
注意
- Rate Limitは、製品プランによって異なり、アプリを登録したドメインに対して適用されます。
- Rate Limitは、ピーク時を想定したLimit値です。従って、30分以上連続してAPI Callを行う場合は、Limit値の半分以下を目安に使用してください。
フリープラン
Scopes | Rate Limit |
---|---|
bot bot.read user.email.read user.profile.read user.read group.read orgunit.read calendar calendar.read contact.read board board.read |
1 API 当たり 60 requests/min ※ 以下の API は、 1 API 当たり 10 requests/min ● トークルームの登録 |
ライトプラン
Scopes | Rate Limit |
---|---|
bot bot.read directory directory.read user user.email.read user.profile.read user.read group group.read orgunit orgunit.read calendar calendar.read contact contact.read security.external-browser security.external-browser.read |
1 API 当たり 240 requests/min ※ 以下の API は、 1 API 当たり 10 requests/min ● トークルームの登録 |
board board.read |
1 API 当たり 60 requests/min |
audit.read | 1 API 当たり 10 requests/min |
スタンダードプラン
Scopes | Rate Limit |
---|---|
bot bot.read directory directory.read user user.email.read user.profile.read user.read group group.read orgunit orgunit.read calendar calendar.read contact contact.read file file.read group.folder group.folder.read contact.read security.external-browser security.external-browser.read |
1 API 当たり 240 requests/min ※ 以下の API は、 1 API 当たり 10 requests/min ● トークルームの登録 |
board board.read |
1 API 当たり 60 requests/min |
audit.read | 1 API 当たり 10 requests/min |
ベーシック, プレミアム, アドバンストプラン
Scopes | Rate Limit |
---|---|
bot bot.read directory directory.read user user.email.read user.profile.read user.read group group.read orgunit orgunit.read calendar calendar.read contact contact.read mail.read file file.read group.folder group.folder.read contact.read security.external-browser security.external-browser.read |
1 API 当たり 240 requests/min ※ 以下の API は、 1 API 当たり 10 requests/min ● トークルームの登録 |
board board.read |
1 API 当たり 60 requests/min |
audit.read | 1 API 当たり 10 requests/min |
Rate Limitの確認
Rate Limitが適用されているAPIについては、Response Headerに以下の3種類のパラメータが追加され、状況を確認することが可能です。
ダウンロード URL を取得する API は http 302 が Response されるため Response Header に Rate Limit Parameter が含まれません。対象となる API についてはファイルアップロード / ダウンロードをご参考ください。
Response Header | 説明 |
---|---|
RateLimit-Limit | 基準時間からのAPI Call回数 |
RateLimit-Remaining | 基準時間がリセットされるまでにAPI Call可能な残りの回数 |
RateLimit-Reset | 基準時間がリセットされるまでの残り時間(単位:sec) |
Rate Limitを超過した場合の対応
Rate Limitを超過し、HTTP Status Code 429が返った場合には、直後に同じAPIを呼び出すことは避け、基準時間がリセットされた後で、失敗したAPIリクエストを再試行してください。Rate Limitsは、最長で1分経過すればリセットされます。
ユーザー情報などの頻繁に変更されないデータについては、キャッシュに保存して再利用することを検討します。 また、必要とするデータが、すでに呼び出した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"
}
同一リソースに対する同時書き込みリクエスト (POST/PUT/PATCH/DELETE) は行わないでください。