{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "oneOf": [
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "none",
          "description": "Disable authentication for attribute provider calls."
        }
      },
      "required": [
        "type"
      ],
      "additionalProperties": false,
      "description": "No authentication variant."
    },
    {
      "type": "object",
      "properties": {
        "type": {
          "type": "string",
          "const": "apiKey",
          "description": "Use API key authentication."
        },
        "config": {
          "type": "object",
          "properties": {
            "headerName": {
              "type": "string",
              "minLength": 1,
              "description": "HTTP header name carrying the API key."
            },
            "value": {
              "type": "string",
              "minLength": 1,
              "description": "API key value."
            }
          },
          "required": [
            "headerName",
            "value"
          ],
          "additionalProperties": false,
          "description": "API key authentication settings."
        }
      },
      "required": [
        "type",
        "config"
      ],
      "additionalProperties": false,
      "description": "API key authentication variant."
    }
  ],
  "description": "Authentication method used to call the attribute provider.",
  "$id": "./AttributeProviderAuth.schema.json",
  "title": "AttributeProviderAuth"
}
