{
  "$schema": "https://json-structure.org/meta/core/v0/#",
  "$id": "https://raw.githubusercontent.com/api-evangelist/akamai-api-security/refs/heads/main/json-structure/api-security-validations-structure.json",
  "name": "validations",
  "description": "Contains warnings, errors, or notices determined by validating the match target.",
  "type": "object",
  "properties": {
    "errors": {
      "description": "The list of errors.",
      "items": {
        "additionalProperties": false,
        "description": "Contains feedback on validation.",
        "properties": {
          "detail": {
            "description": "The explanation of the error message.",
            "type": "string"
          },
          "fieldName": {
            "description": "The name of the field causing the validation problem.",
            "type": "string"
          },
          "jsonReference": {
            "description": "The JSON reference to the field in the resource.",
            "type": "string"
          },
          "name": {
            "description": "The title for the error.",
            "example": "Not Found",
            "type": "string"
          },
          "type": {
            "description": "The URL for the error type.",
            "example": "/appsec/problem-types/INCOMPATIBLE-FIELD",
            "type": "string"
          }
        },
        "required": [
          "title",
          "type"
        ],
        "type": "object",
        "x-akamai": {
          "file-path": "schemas/validation.yaml"
        }
      },
      "type": "array"
    },
    "notices": {
      "description": "The list of notices.",
      "items": {
        "additionalProperties": false,
        "description": "Contains feedback on validation.",
        "properties": {
          "detail": {
            "description": "The explanation of the error message.",
            "type": "string"
          },
          "fieldName": {
            "description": "The name of the field causing the validation problem.",
            "type": "string"
          },
          "jsonReference": {
            "description": "The JSON reference to the field in the resource.",
            "type": "string"
          },
          "name": {
            "description": "The title for the error.",
            "example": "Not Found",
            "type": "string"
          },
          "type": {
            "description": "The URL for the error type.",
            "example": "/appsec/problem-types/INCOMPATIBLE-FIELD",
            "type": "string"
          }
        },
        "required": [
          "title",
          "type"
        ],
        "type": "object",
        "x-akamai": {
          "file-path": "schemas/validation.yaml"
        }
      },
      "type": "array"
    },
    "warnings": {
      "description": "The list of warnings.",
      "items": {
        "additionalProperties": false,
        "description": "Contains feedback on validation.",
        "properties": {
          "detail": {
            "description": "The explanation of the error message.",
            "type": "string"
          },
          "fieldName": {
            "description": "The name of the field causing the validation problem.",
            "type": "string"
          },
          "jsonReference": {
            "description": "The JSON reference to the field in the resource.",
            "type": "string"
          },
          "name": {
            "description": "The title for the error.",
            "example": "Not Found",
            "type": "string"
          },
          "type": {
            "description": "The URL for the error type.",
            "example": "/appsec/problem-types/INCOMPATIBLE-FIELD",
            "type": "string"
          }
        },
        "required": [
          "title",
          "type"
        ],
        "type": "object",
        "x-akamai": {
          "file-path": "schemas/validation.yaml"
        }
      },
      "type": "array"
    }
  },
  "required": [
    "notices",
    "errors",
    "warnings"
  ],
  "additionalProperties": false
}