BENTEN REST APIでのエラー応答について

BENTEN REST APIでエラーが発生した際には、JSONでの返答応答にエラー情報を付加しています。

REST APIでのエラー応答の表現については、利用されるサービスに応じてさまざまな方法が実装されています。[^1] この中で、BENTEN REST APIでは Google方式を採用しています。

具体的にはエラー発生時に errorのキーを JSONの返答オブジェクトに以下のように追加しています。 errorの中には errosというリストデータも内包しています。これにより、REST APIで発生した複数エラーの情報も表現することができるようになります。

{
  "error": {
    "errors": [
          {
        "domain": "global",
        "reason": "appNotConfigured",
        "message": "The app with id {appId} does not exist or is not properly configured as a Google Drive app."
      }
    ],
    "code": 403,
    "message": "The app with id {appId} does not exist or is not properly configured as a Google Drive app."
  }
}

上記のJSON応答の error項目に含まれるkeyの役割を以下に示します。

key名 役割
domain どの領域のエラーかを特定
reason エラーコード
message エラーメッセージ
code HTTPステータスコード

Note

現在は本エラーフォーマットの中で domain , message のkeyのみ定義しています(reasonのkeyは利用していません) 。また、API中で発生した複数のエラーを把握するため、errorsフィールドも利用しています。