Classroom API のエラーを処理する

Classroom API は、デベロッパーが問題をデバッグし、エンドユーザーに役立つ実用的な情報を提供するために役立つエラー情報を返します。このガイドでは、API から返されたエラー情報を解析する方法について説明します。

Classroom API は、次の 2 つのレベルのエラー情報を返します。

  • ヘッダーの HTTP エラーコード。
  • レスポンス本文内のオブジェクト。詳細情報が含まれています。

エラー メッセージの構造

レスポンス本文で返されるエラーには、次のフィールドが含まれます。

  • code: 数値の HTTP エラーコード。例: 403
  • message: エラーの詳細。利用可能な場合は、エラー メッセージの前に @ と特定のエラータイプが追加されます。例: @ClassroomApiDisabled
  • status: HTTP リクエストのステータス。たとえば、PERMISSION_DENIEDNOT_FOUND です。

リクエストが失敗し、ClassroomApiDisabled エラーが発生した場合、レスポンスは次のようになります。

{
  "error": {
    "code": 403,
    "message": "@ClassroomApiDisabled The user is not permitted to access the Classroom API.",
    "status": "PERMISSION_DENIED"
  }
}

レスポンス本文を使用すると、エラーの原因をデバッグし、ユーザーに役立つ情報を提供できます。特定のエラー メッセージをチェックするときに末尾にスペースを含めると、同じ文字列で始まる他の値と一致するのを防ぐことができます。提供されているエラーの例では、メッセージ フィールドが "@ClassroomApiDisabled " で始まっているかどうかを確認して、ユーザーに適切な情報を表示できます。

Classroom API から返される可能性のあるエラーについては、アクセス エラーリクエスト エラーアドオン エラーのページをご覧ください。