このページでは、Sheets API で発生するエラーのトラブルシューティング方法について説明します。
400 Bad Request
このエラーは、リクエストの形式が正しくないことを示します。これらのリクエストのトラブルシューティングについては、リファレンス ドキュメントとサポートページをご覧ください。
500 Internal Server Error
通常、Sheets API の使用時に 500 エラーが発生した場合は、API 自体に問題があることを示します。エラーの原因となったリクエストを添えて、Sheets API の Issue Tracker にバグレポートを提出します。
503 Service Unavailable
Sheets API は、サービスが利用できないときや、リクエストまたはスプレッドシートの複雑度が高いときに 503 エラーを返します。以下に、API リクエストと基盤となるスプレッドシートを変更して 503 エラーの発生率を制限するためのヒントを示します。
リクエスト
batchUpdate
を使用して、関連する更新を 1 つのリクエストにまとめます。大きな更新をバッチ処理する場合は、タイムアウトが発生する可能性があるため注意が必要です。- スプレッドシートあたりの API への同時リクエスト数を 1 秒あたり 1 件に制限します。
- スプレッドシートが大きい場合は、A1 表記を使用して必要なスプレッドシート値のみを取得し、
includeGridData
の使用を制限します。 - フィールド マスクを使用して、API から返されるデータの量を制限します。
- リクエストを再試行する際には、指数バックオフを使用する。
スプレッドシート
- 頻繁に更新されるシートの場合は、定期的に新しいスプレッドシートにローテーションして、バージョンの蓄積を減らします。
IMPORTRANGE
、QUERY
などの複雑な数式の使用を制限します。- サイズの大きなスプレッドシートは、複数のスプレッドシートに分割することを検討してください。
- 多くの
IMPORTRANGE
数式のソースとして 1 つのスプレッドシートを使用することを制限します。 - スプレッドシートへのアクセスは、必要なユーザーにのみ制限します。