{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "title": "Customer Survey Response Input",
    "type": "object",
    "additionalProperties": false,
    "properties": {
        "customerId": {
            "type": "string",
            "description": "Unique identifier for the customer"
        },
        "survey": {
            "type": "object",
            "additionalProperties": false,
            "properties": {
                "serviceSatisfaction": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 5,
                    "description": "Service satisfaction rating (1-5)"
                },
                "easeOfResolution": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 5,
                    "description": "Ease of resolution rating (1-5)"
                },
                "likelihoodToRecommend": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 5,
                    "description": "Likelihood to recommend (1-5)"
                },
                "feedback": {
                    "type": "string",
                    "description": "Optional free-text feedback from the customer"
                }
            },
            "required": [
                "serviceSatisfaction",
                "easeOfResolution",
                "likelihoodToRecommend"
            ]
        }
    },
    "required": [
        "customerId",
        "survey"
    ]
}