{
  "definitions": {
    "specificationExtension": {
      "description": "Any property starting with x- is valid.",
      "oneOf": [
        {
          "type": "null"
        },
        {
          "type": "number"
        },
        {
          "type": "boolean"
        },
        {
          "type": "string"
        },
        {
          "type": "object"
        },
        {
          "type": "array"
        }
      ]
    },
    "securityScheme": {
      "anchor": "securityScheme",
      "type": "object",
      "description": "Defines a security scheme that can be used by the operations. Supported schemes are HTTP authentication, an API key (either as a header or as a query parameter) and OAuth2's common flows (implicit, password, application and access code).",
      "required": [
        "type"
      ],
      "additionalProperties": false,
      "patternProperties": {
        "^x-": {
          "$ref": "#/definitions/specificationExtension"
        }
      },
      "properties": {
        "type": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "name": {
          "type": "string"
        },
        "in": {
          "type": "string"
        },
        "scheme": {
          "type": "string"
        },
        "bearerFormat": {
          "type": "string"
        },
        "flows": {
          "type": "object",
          "comment": "#/definitions/oauthFlows"
        },
        "openIdConnectUrl": {
          "type": "string"
        }
      }
    }
  },
  "allOf": [
    {
      "$ref": "#/definitions/securityScheme"
    }
  ]
}