{
    "properties": {
        "bodyType": {
            "type": "string"
        },
        "description": {
            "type": "string"
        },
        "exclude": {
            "nullable": true,
            "type": "boolean"
        },
        "headerParameters": {
            "additionalProperties": {
                "properties": {
                    "description": {
                        "type": "string"
                    },
                    "minimum": {
                        "type": "number"
                    },
                    "required": {
                        "default": false,
                        "type": "boolean"
                    },
                    "type": {
                        "default": "string",
                        "enum": ["string", "integer"],
                        "type": "string"
                    }
                },
                "required": [],
                "type": "object"
            },
            "nullable": true,
            "required": [],
            "type": "object"
        },
        "queryStringParameters": {
            "additionalProperties": {
                "properties": {
                    "description": {
                        "type": "string"
                    },
                    "minimum": {
                        "type": "number"
                    },
                    "required": {
                        "default": false,
                        "type": "boolean"
                    },
                    "type": {
                        "default": "string",
                        "enum": ["string", "integer", "array", "boolean"],
                        "type": "string"
                    },
                    "arrayItemsType": {
                        "type": "string",
                        "enum": ["string", "integer"]
                    }
                },
                "required": [],
                "allOf": [
                    {
                        "if": {
                            "properties": {
                                "type": { "const": "array" }
                            },
                            "required": ["type"]
                        },
                        "then": {
                            "required": ["arrayItemsType"]
                        }
                    }
                ],
                "type": "object"
            },
            "nullable": true,
            "required": [],
            "type": "object"
        },
        "responseData": {
            "additionalProperties": {
                "anyOf": [
                    {
                        "type": "string"
                    },
                    {
                        "properties": {
                            "bodyType": {
                                "type": "string"
                            },
                            "description": {
                                "type": "string"
                            }
                        },
                        "required": [],
                        "type": "object",
                        "additionalProperties": false
                    }
                ]
            },
            "nullable": true,
            "type": "object"
        },
        "responses": {
            "additionalProperties": {
                "anyOf": [
                    {
                        "type": "string"
                    },
                    {
                        "properties": {
                            "bodyType": {
                                "type": "string"
                            },
                            "description": {
                                "type": "string"
                            }
                        },
                        "required": [],
                        "type": "object"
                    }
                ]
            },
            "nullable": true,
            "type": "object"
        },
        "swaggerTags": {
            "items": {
                "type": "string"
            },
            "nullable": true,
            "type": "array"
        },
        "consumes": {
            "default": ["application/json"],
            "items": {
                "type": "string"
            },
            "type": "array"
        },
        "produces": {
            "default": ["application/json"],
            "items": {
                "type": "string"
            },
            "type": "array"
        }
    },
    "required": []
}
