Schema discriminator property must match a property with the same name

Description

The discriminator of the schema in question must match a property with the same name.

For more details, see the OpenAPI Specification.

Example

The following is an example of how this issue could look in your API definition. Here, the discriminator value animalType is but the defined property is actually called petType:

{
  "definitions": {
    "Pet": {
      "type": "object",
      "discriminator": "animalType",
      "properties": {
        "name": {
          "type": "string"
        },
        "petType": {
          "type": "string"
        }
      },
      "required": [
        "name",
        "animalType"
      ]
    }
  }
}

Remediation

Make sure that all discriminator values match defined properties.

{
  "definitions": {
    "Pet": {
      "type": "object",
      "discriminator": "petType",
      "properties": {
        "name": {
          "type": "string"
        },
        "petType": {
          "type": "string"
        }
      },
      "required": [
        "name",
        "petType"
      ]
    }
  }
}

Get API Security news directly in your Inbox.

By clicking Subscribe you agree to our Data Policy