{
    "$schema": "http://json-schema.org/draft-04/schema#",
    "type": "object",
    "title": "Esquema de validaci\u00f3n para par\u00e1metros de getPackageList.",
    "description": "Este esquema contiene los datos que se reciben como par\u00e1metro de entrada para el m\u00e9todo getPackageList.",
    "properties": {
        "order_field": {
            "type": "string",
            "enum": [
                "PRICE",
                "DEPARTURE_DATE"
            ],
            "title": "Campo  que marcar\u00e1 orden de resultados.",
            "description": "Atributo de paquete por el cual se establecer\u00e1 el orden de los resultados."
        },
        "order_type": {
            "type": "string",
            "enum": [
                "ASC",
                "DESC"
            ],
            "title": "Criterio de orden de resultados",
            "description": "Criterio de orden de resultados ascendente o descendente."
        },
        "currency": {
            "type": "string",
            "enum": [
                "EUR",
                "USD",
                "ARS"
            ],
            "title": "Tipo de cambio de paquetes.",
            "description": "Especifica el tipo de cambio que tendr\u00e1n los paquetes retornadoss por el getPackageList."
        },
        "origin_place": {
            "type": "array",
            "title": "Lugares de salida de los paquetes.",
            "items": {
                "type": "string",
                "minLength": 2,
                "maxLength": 4,
                "title": "IATA de los lugares de salida de los paquetes."
            }
        },
        "destination_place": {
            "type": "array",
            "title": "Destinos de los paquetes.",
            "items": {
                "type": "string",
                "minLength": 2,
                "maxLength": 4,
                "title": "IATA de los destinos de los paquetes."
            }
        },
        "month_departure": {
            "type": "integer",
            "minimum": 0,
            "maximum": 12,
            "title": "Mes de salida.",
            "description": "Mes en el cual el pasajeros desean salir."
        },
        "year_departure": {
            "type": "integer",
            "title": "A\u00f1o de salida.",
            "description": "Junto con month_departure forman el mes en que el pasajeros desean salir."
        },
        "Room": {
            "type": "array",
            "title": "Habitaci\u00f3n.",
            "description": " .",
            "items": {
                "adult": {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 8,
                    "title": "Adultos de la habitaci\u00f3n.",
                    "description": "Cantidad de adultos que ocupan la habitaci\u00f3n."
                },
                "Children": {
                    "type": "array",
                    "title": "Ni\u00f1os de la habitaci\u00f3n.",
                    "description": " .",
                    "items": {
                        "type": "object",
                        "title": "Un ni\u00f1o de la habitaci\u00f3n.",
                        "description": " .",
                        "properties": {
                            "age": {
                                "type": "integer",
                                "minimum": 0,
                                "maximum": 18,
                                "title": "Edad del ni\u00f1o."
                            }
                        }
                    }
                }
            },
            "required": [
                "adult",
                "Children"
            ]
        }
    },
    "required": [
        "order_type",
        "order_field",
        "currency",
        "origin_place",
        "destination_place",
        "month_departure",
        "year_departure",
        "Room"
    ]
}