{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "type": "object",
  "properties": {
    "state": {
      "type": "string",
      "enum": [
        "success",
        "valid-negative",
        "unknown",
        "failed"
      ],
      "description": "Saved lifecycle or evidence state, as enumerated for this record."
    },
    "reason": {
      "type": "string",
      "description": "Recorded explanation; null when no explanation applies."
    },
    "requested_url": {
      "anyOf": [
        {
          "type": "string",
          "description": "requested url recorded for this result."
        },
        {
          "type": "null"
        }
      ],
      "description": "requested url recorded for this result."
    },
    "inspected_url": {
      "anyOf": [
        {
          "type": "string",
          "description": "inspected url recorded for this result."
        },
        {
          "type": "null"
        }
      ],
      "description": "inspected url recorded for this result."
    },
    "target_url": {
      "anyOf": [
        {
          "type": "string",
          "description": "Destination URL recorded in this evidence."
        },
        {
          "type": "null"
        }
      ],
      "description": "Destination URL recorded in this evidence."
    },
    "scope": {
      "type": "string",
      "description": "scope recorded for this result."
    },
    "checked_at": {
      "type": "string",
      "description": "UTC timestamp of the saved check."
    },
    "complete": {
      "type": "boolean",
      "description": "complete recorded for this result."
    },
    "occurrences": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "targetUrl": {
            "type": "string",
            "description": "target Url recorded for this result."
          },
          "anchor": {
            "type": "string",
            "description": "anchor recorded for this result."
          },
          "rel": {
            "type": "array",
            "items": {
              "type": "string",
              "description": "rel recorded for this result."
            },
            "description": "rel recorded for this result."
          }
        },
        "required": [
          "targetUrl",
          "anchor",
          "rel"
        ],
        "additionalProperties": {},
        "description": "occurrences recorded for this result."
      },
      "description": "occurrences recorded for this result."
    },
    "checker_version": {
      "anyOf": [
        {
          "type": "string",
          "description": "checker version recorded for this result."
        },
        {
          "type": "null"
        }
      ],
      "description": "checker version recorded for this result."
    },
    "uncertainty": {
      "type": "array",
      "items": {
        "type": "string",
        "description": "uncertainty recorded for this result."
      },
      "description": "uncertainty recorded for this result."
    },
    "failure": {
      "description": "failure recorded for this result.",
      "type": "string",
      "enum": [
        "invalid_input",
        "budget",
        "cooling",
        "service"
      ]
    },
    "retry_at": {
      "description": "retry at recorded for this result.",
      "type": "string"
    },
    "retry_after_seconds": {
      "description": "retry after seconds recorded for this result.",
      "type": "number"
    },
    "result_id": {
      "description": "result id recorded for this result.",
      "type": "string"
    },
    "permalink": {
      "description": "permalink recorded for this result.",
      "anyOf": [
        {
          "type": "string",
          "description": "permalink recorded for this result."
        },
        {
          "type": "null"
        }
      ]
    },
    "cached": {
      "description": "cached recorded for this result.",
      "type": "boolean"
    }
  },
  "required": [
    "state",
    "reason",
    "requested_url",
    "inspected_url",
    "target_url",
    "scope",
    "checked_at",
    "complete",
    "occurrences",
    "checker_version",
    "uncertainty"
  ],
  "additionalProperties": {}
}
