payload_schema = {
    "discriminator": {
        "propertyName": "message_type",
        "mapping": {
            "alert": "#/components/schemas/alert",
            "mission_plan": "#/components/schemas/mission_plan",
            "mission_plan_encoded": "#/components/schemas/mission_plan_encoded",
            "observation": "#/components/schemas/observation",
            "observation_encoded": "#/components/schemas/observation_encoded",
            "planning_configuration": "#/components/schemas/"
            + "planning_configuration",
            "platform_instruction_set": "#/components/schemas/platform_instruction_set",
            "platform_status": "#/components/schemas/platform_status",
            "platform_status_encoded": "#/components/schemas/"
            + "platform_status_encoded",
            "acknowledgement": "#/components/schemas/acknowledgement",
            "survey": "#/components/schemas/survey",
            "survey_encoded": "#/components/schemas/survey_encoded",
            "waypoints": "#/components/schemas/waypoints",
        },
    },
    "oneOf": [
        {"$ref": "#/components/schemas/alert"},
        {"$ref": "#/components/schemas/acknowledgement"},
        {"$ref": "#/components/schemas/mission_plan"},
        {"$ref": "#/components/schemas/mission_plan_encoded"},
        {"$ref": "#/components/schemas/observation"},
        {"$ref": "#/components/schemas/observation_encoded"},
        {"$ref": "#/components/schemas/planning_configuration"},
        {"$ref": "#/components/schemas/platform_instruction_set"},
        {"$ref": "#/components/schemas/platform_status"},
        {"$ref": "#/components/schemas/platform_status_encoded"},
        {"$ref": "#/components/schemas/survey"},
        {"$ref": "#/components/schemas/survey_encoded"},
        {"$ref": "#/components/schemas/waypoints"},
    ],
}