API エラーのトラブルシューティング

このページでは、Google 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 から返されるデータの量を制限します。
  • リクエストを再試行する際には、指数バックオフを使用する。

スプレッドシート

  • 頻繁に更新されるシートの場合は、定期的に新しいスプレッドシートにローテーションして、バージョンの蓄積を減らします。
  • IMPORTRANGEQUERY などの複雑な数式の使用を制限します。
  • 大きなスプレッドシートを複数のスプレッドシートに分割することを検討してください。
  • 1 つのスプレッドシートを多くの IMPORTRANGE 数式のソースとして使用することを制限します。
  • スプレッドシートへのアクセス権は、必要なユーザーにのみ付与します。