{
  "$schema": "http://json-schema.org/draft-04/schema#",
  "title": "Connect To EPoS Error Message",
  "description": "Provides the EPoS with information about an error that has occurred.",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "jsonrpc",
    "error"
  ],
  "properties": {
    "jsonrpc": {
      "title": "JSON-RPC Version Number",
      "description": "Identifies the JSON Remote Protocol version that this message uses.",
      "type": "string",
      "enum": [
        "2.0"
      ],
      "default": "2.0"
    },
    "id": {
      "title": "JSON-RPC2 Message ID",
      "description": "The same message id as the request JSON message that this error has been raised against or raised in the act of processing. If the error was not raised from an EPoS to Connect request or no message id can be found in the request message, then this property will not exist in the error message.",
      "type": "integer",
      "maximum": 999999,
      "minimum": 0
    },
    "error": {
      "description": "Information about the error.",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "code",
        "message"
      ],
      "properties": {
        "code": {
          "title": "Error Code",
          "description": "The error code of the error. These categorize the type of error that has taken place. With standard JSON-RPC2 errors in the range [-32600, -32700] and Connect errors in the range [-32070, -32090]. Unused numbers are reserved for future use.",
          "type": "integer",
          "enum": [
            -32700,
            -32600,
            -32601,
            -32602,
            -32603,
            -32070,
            -32071,
            -32072,
            -32073,
            -32074,
            -32075,
            -32076
          ]
        },
        "message": {
          "title": "Error Message",
          "description": "A short description of the error to help troubleshoot the problem.",
          "type": "string"
        },
        "data": {
          "title": "Error Data",
          "description": "Data related to the error that could help troubleshoot the problem.",
          "type": "object",
          "additionalProperties": true
        }
      }
    }
  }
}