使用制限
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
Google Docs API は共有サービスであるため、すべてのユーザーが公平に使用できるようにし、Google Workspace システムの全体的な健全性を保護するために、割り当てと制限が適用されます。
割り当てを超えると、通常は 429: Too many requests
HTTP ステータス コード レスポンスが返されます。この場合は、指数バックオフ アルゴリズムを使用して、後でもう一度お試しください。
次の表に、リクエストの上限を示します。
割り当て |
読み取りリクエスト |
プロジェクトあたり毎分 |
3000 |
ユーザーごとに 1 分あたり(プロジェクトごと) |
300 |
|
書き込みリクエスト |
プロジェクトあたり毎分 |
600 |
ユーザーごとに 1 分あたり(プロジェクトごと) |
60 |
|
時間ベースの割り当てエラーを解決する
時間ベースのエラー(X 分あたり最大 N 件のリクエスト)の場合は、コードで例外をキャッチし、切り捨て指数バックオフを使用して、デバイスで過剰な負荷が発生しないようにすることをおすすめします。
指数バックオフは、ネットワーク アプリケーションの標準的なエラー処理方法です。指数バックオフのアルゴリズムは、リクエスト間の待ち時間の間隔を最大バックオフ時間まで増加させながら、指数関数的にリクエストを再試行します。リクエストがまだ失敗する場合は、リクエストが成功するまで、リクエスト間の遅延を時間の経過とともに増やすことが重要です。
アルゴリズムの例
指数バックオフのアルゴリズムは、再試行の待ち時間の間隔を最大バックオフ時間まで増加させながら、指数関数的にリクエストを再試行します。例:
- Google Docs API にリクエストを送信します。
- リクエストが失敗した場合は、1 +
random_number_milliseconds
秒待ってからリクエストを再試行します。
- リクエストが失敗した場合は、2 +
random_number_milliseconds
秒待ってからリクエストを再試行します。
- リクエストが失敗した場合、4 +
random_number_milliseconds
待ってからリクエストを再試行します。
- このようにして、最大
maximum_backoff
時間まで繰り返します。
- 再試行の最大回数まで待機と再試行を続行しますが、再試行の間の待ち時間は増加させません。
ここで
- 待機時間は
min(((2^n)+random_number_milliseconds), maximum_backoff)
で、n
は反復(リクエスト)のたびに 1 増加します。
random_number_milliseconds
は、1,000 ミリ秒以下の乱数です。これにより、なんらかの状況によって多数のクライアントが同期され、再試行が一度に実行されて、リクエストが同時に次々と送信されるような状況を避けることができます。random_number_milliseconds
の値は再試行リクエストの後に毎回再計算されます。
- 通常、
maximum_backoff
は 32 秒または 64 秒です。適切な値はユースケースによって異なります。
クライアントは、maximum_backoff
時間に達した後も再試行を続行できます。この時点より後の再試行では、バックオフ時間を増加させ続ける必要はありません。たとえば、クライアントで 64 秒の maximum_backoff
時間が使用されている場合、この値に達した後は、クライアントは 64 秒ごとに再試行を繰り返します。いずれかの時点で、クライアントが無限に再試行を行わないようにする必要があります。
適切な再試行間の待ち時間と再試行回数は、ユースケースとネットワークの状態により異なります。
料金
Google Docs API はすべて追加料金なしでご利用いただけます。割り当てリクエストの上限を超えても追加料金は発生せず、アカウントへの請求は行われません。
割り当ての増加をリクエストする
プロジェクトのリソース使用状況に応じて、割り当ての増加をリクエストできます。サービス アカウントによる API 呼び出しは、単一のアカウントを使用しているものと見なされます。追加割り当て申請が必ずしも認められるわけではありません。割り当て量が大きい場合は、承認に時間がかかることがあります。
割り当て量はすべてのプロジェクトで同じとは限りません。Google Cloud の使用量が多くなるに伴い、割り当てを増やす必要がある場合があります。使用量の大幅な増加が見込まれる場合は、事前に Google Cloud コンソールの [割り当て] ページから割り当ての調整をリクエストできます。
詳細については、次のリソースをご覧ください。
特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンスにより使用許諾されます。コードサンプルは Apache 2.0 ライセンスにより使用許諾されます。詳しくは、Google Developers サイトのポリシーをご覧ください。Java は Oracle および関連会社の登録商標です。
最終更新日 2025-03-22 UTC。
[null,null,["最終更新日 2025-03-22 UTC。"],[],[],null,["# Usage limits\n\nAs the Google Docs API is a shared service, we apply quotas and limitations\nto make sure it's used fairly by all users and to protect the overall\nhealth of the Google Workspace system.\n\n\nIf you exceed a quota, you'll generally receive a\n`429: Too many requests`\nHTTP status code response. If this happens, you should use an\n[exponential backoff algorithm](#exponential) and try again\nlater.\n\nThe following table details the request limits:\n\n| Quotas ||\n|----------------|----------------------------------------------------------------------------------------------------------------------------------|\n| Read requests | |---------------------------------|------| | Per minute per project | 3000 | | Per minute per user per project | 300 | |\n| Write requests | |---------------------------------|-----| | Per minute per project | 600 | | Per minute per user per project | 60 | |\n\nResolve time-based quota errors\n-------------------------------\n\n\nFor all time-based errors (maximum of N requests per X minutes), we recommend\nyour code catches the exception and uses a *truncated exponential backoff* to make sure your\ndevices don't generate excessive load.\n\n\nExponential backoff is a standard error handling strategy for network applications. An\nexponential backoff algorithm retries requests using exponentially increasing wait times\nbetween requests, up to a maximum backoff time. If requests are still unsuccessful, it's\nimportant that the delays between requests increase over time until the request is successful.\n\n### Example algorithm\n\n\nAn exponential backoff algorithm retries requests exponentially, increasing the wait time\nbetween retries up to a maximum backoff time. For example:\n\n1. Make a request to Google Docs API.\n2. If the request fails, wait 1 + `random_number_milliseconds` and retry the request.\n3. If the request fails, wait 2 + `random_number_milliseconds` and retry the request.\n4. If the request fails, wait 4 + `random_number_milliseconds` and retry the request.\n5. And so on, up to a `maximum_backoff` time.\n6. Continue waiting and retrying up to some maximum number of retries, but don't increase the wait period between retries.\n\n\nwhere:\n\n- The wait time is `min(((2^n)+random_number_milliseconds), maximum_backoff)`, with `n` incremented by 1 for each iteration (request).\n- `random_number_milliseconds` is a random number of milliseconds less than or equal to 1,000. This helps to avoid cases in which many clients are synchronized by some situation and all retry at once, sending requests in synchronized waves. The value of `random_number_milliseconds` is recalculated after each retry request.\n- `maximum_backoff` is typically 32 or 64 seconds. The appropriate value depends on the use case.\n\n\nThe client can continue retrying after it has reached the `maximum_backoff` time.\nRetries after this point don't need to continue increasing backoff time. For\nexample, if a client uses a `maximum_backoff` time of 64 seconds, then after reaching\nthis value, the client can retry every 64 seconds. At some point,\nclients should be prevented from retrying indefinitely.\n\n\nThe wait time between retries and the number of retries depend on your use case\nand network conditions.\n\nPricing\n-------\n\n\nAll use of the Google Docs API is available at no additional cost. Exceeding the quota\nrequest limits doesn't incur extra charges and your account is not billed.\n\nRequest a quota increase\n------------------------\n\n\nDepending on your project's resource usage, you might want to request a quota\nadjustment. API calls by a service account are considered to be using a\nsingle account. Applying for an adjusted quota doesn't guarantee approval. Quota adjustment\nrequests that would significantly increase the quota value can take longer to be approved.\n\n\nNot all projects have the same quotas. As you increasingly use Google Cloud over\ntime, your quota values might need to increase. If you expect a notable upcoming\nincrease in usage, you can proactively\n[request quota adjustments](https://cloud.google.com/docs/quota#requesting_higher_quota)\nfrom the [Quotas page](https://console.cloud.google.com/iam-admin/quotas)\nin the Google Cloud console.\n\nTo learn more, see the following resources:\n\n- [About quota adjustments](https://cloud.google.com/docs/quotas/overview#about_increase_requests)\n- [View your current quota usage and limits](https://cloud.google.com/docs/quota#viewing_your_quota_console)\n- [Request a higher quota limit](https://cloud.google.com/docs/quota#requesting_higher_quota)"]]