{
    "openapi": "3.0.0",
    "info": {
        "title": "Aula Virtual API",
        "description": "API REST para el sistema Aula Virtual. Todos los endpoints requieren el prefijo /api/{domain} donde {domain} es el nombre del tenant.",
        "contact": {
            "email": "admin@aulavirtual.com"
        },
        "version": "1.0.0"
    },
    "servers": [
        {
            "url": "http://localhost:8000/api/",
            "description": "Servidor local"
        }
    ],
    "paths": {
        "/academic-formations": {
            "get": {
                "tags": [
                    "AcademicFormation"
                ],
                "summary": "Listar formaciones académicas por dominio",
                "operationId": "9c8e3a6bfd8615b02285eec2757fcca4",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de formaciones académicas",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "AcademicFormation"
                ],
                "summary": "Crear una formación académica",
                "operationId": "d862672e8e84cbbe282cc6b8067cdf24",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Formación académica creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "academic": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/academic-formations/by-cv-bank/{cvBankId}": {
            "get": {
                "tags": [
                    "AcademicFormation"
                ],
                "summary": "Listar formaciones académicas por banco de CV",
                "operationId": "3fd982cba892f2f6947daea4d458ad53",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cvBankId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Formaciones del banco de CV",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/academic-formations/{id}": {
            "get": {
                "tags": [
                    "AcademicFormation"
                ],
                "summary": "Obtener formación académica por ID",
                "operationId": "57b0be989753a16bb68b75a215058884",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Formación académica encontrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "academic": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "AcademicFormation"
                ],
                "summary": "Actualizar una formación académica",
                "operationId": "6768c6bb16a141839f0126803a1f4b4d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Formación académica actualizada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "academic": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "AcademicFormation"
                ],
                "summary": "Eliminar una formación académica",
                "operationId": "2d5432c4fb458fa63ce7a6d0033dab17",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Formación académica eliminada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/academic-formations/{id}/validate": {
            "patch": {
                "tags": [
                    "AcademicFormation"
                ],
                "summary": "Validar una formación académica",
                "operationId": "a52cf268b50d5ce38b3e0f2edefc23e0",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "validated": {
                                        "description": "1 para validado, 0 para no validado",
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Formación académica validada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/academic-formations/data-create": {
            "get": {
                "tags": [
                    "AcademicFormation"
                ],
                "summary": "Obtener datos para formulario de creación de formación académica",
                "operationId": "fccbddc7a08c221aaddb794c84ae9bc9",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos para creación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/acciones": {
            "get": {
                "tags": [
                    "Acciones"
                ],
                "summary": "Listar acciones por dominio",
                "operationId": "d84f10ff6c20779a8e0086539e99cbb7",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de acciones"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Acciones"
                ],
                "summary": "Crear una nueva acción",
                "operationId": "91a3988446021ed701eff18390ef540a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Acción creada exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/acciones/{id}": {
            "get": {
                "tags": [
                    "Acciones"
                ],
                "summary": "Obtener una acción por ID",
                "operationId": "af60e7e917dc75185b2c9d992ed6518f",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos de la acción"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Acciones"
                ],
                "summary": "Actualizar una acción",
                "operationId": "c8daf5d88f8b7de69a66d73d15aa5099",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Acción actualizada exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Acciones"
                ],
                "summary": "Eliminar una acción",
                "operationId": "514588323e318e347be599955f226ed8",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Acción eliminada exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/alumnos": {
            "get": {
                "tags": [
                    "Alumnos"
                ],
                "summary": "Listar alumnos activos",
                "description": "Retorna la lista de alumnos. Acepta filtros opcionales por ciclo y carrera.",
                "operationId": "alumnoIndex",
                "parameters": [
                    {
                        "name": "ciclo_id",
                        "in": "query",
                        "description": "Filtrar por ID de ciclo",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    },
                    {
                        "name": "carrera_id",
                        "in": "query",
                        "description": "Filtrar por ID de carrera",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "example": 2
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de alumnos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Alumno"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error interno del servidor"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Alumnos"
                ],
                "summary": "Crear un alumno",
                "operationId": "alumnoStore",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombres",
                                    "apellidos",
                                    "dni",
                                    "email"
                                ],
                                "properties": {
                                    "nombres": {
                                        "type": "string",
                                        "example": "Ana"
                                    },
                                    "apellidos": {
                                        "type": "string",
                                        "example": "García"
                                    },
                                    "dni": {
                                        "type": "string",
                                        "example": "12345678"
                                    },
                                    "email": {
                                        "type": "string",
                                        "format": "email",
                                        "example": "ana@example.com"
                                    },
                                    "telefono": {
                                        "type": "string",
                                        "example": "999999999"
                                    },
                                    "carrera_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "ciclo_id": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Alumno creado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Alumno"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error de validación"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/alumnos/{id}": {
            "get": {
                "tags": [
                    "Alumnos"
                ],
                "summary": "Obtener un alumno por ID",
                "operationId": "alumnoShow",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ID del alumno",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos del alumno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Alumno"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Alumno no encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Alumno no encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Alumnos"
                ],
                "summary": "Actualizar un alumno",
                "operationId": "alumnoUpdate",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ID del alumno",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombres": {
                                        "type": "string",
                                        "example": "Ana"
                                    },
                                    "apellidos": {
                                        "type": "string",
                                        "example": "García"
                                    },
                                    "dni": {
                                        "type": "string",
                                        "example": "12345678"
                                    },
                                    "email": {
                                        "type": "string",
                                        "format": "email",
                                        "example": "ana@example.com"
                                    },
                                    "telefono": {
                                        "type": "string",
                                        "example": "999999999"
                                    },
                                    "carrera_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "ciclo_id": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Alumno actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Alumno"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Alumno no encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Alumno no encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error de validación"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Alumnos"
                ],
                "summary": "Eliminar un alumno",
                "operationId": "alumnoDestroy",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ID del alumno",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Alumno eliminado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Alumno eliminado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Alumno no encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Alumno no encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/alumnos/avanzar-ciclo": {
            "post": {
                "tags": [
                    "Alumnos"
                ],
                "summary": "Avanzar ciclo a todos los alumnos activos",
                "operationId": "alumnoAvanzarCiclo",
                "responses": {
                    "200": {
                        "description": "Ciclos avanzados",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Ciclos avanzados exitosamente"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "No se pudo avanzar el ciclo",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "No se pudo avanzar el ciclo"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error de validación"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/alumnos/retroceder-ciclo": {
            "post": {
                "tags": [
                    "Alumnos"
                ],
                "summary": "Retroceder ciclo a todos los alumnos activos",
                "operationId": "alumnoRetrocederCiclo",
                "responses": {
                    "200": {
                        "description": "Ciclos retrocedidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Ciclos retrocedidos exitosamente"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "No se pudo retroceder el ciclo",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "No se pudo retroceder el ciclo"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error de validación"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/alumnos/{id}/egreso": {
            "patch": {
                "tags": [
                    "Alumnos"
                ],
                "summary": "Marcar o desmarcar egreso de un alumno",
                "operationId": "alumnoEgreso",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ID del alumno",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "egresado": {
                                        "type": "boolean",
                                        "example": true
                                    },
                                    "fecha_egreso": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2025-12-31",
                                        "nullable": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Estado de egreso actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Alumno egresado exitosamente"
                                        },
                                        "alumno": {
                                            "$ref": "#/components/schemas/Alumno"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Alumno no encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Alumno no encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error de validación"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/alumnos/egresados": {
            "get": {
                "tags": [
                    "Alumnos"
                ],
                "summary": "Listar alumnos egresados",
                "operationId": "alumnoEgresados",
                "parameters": [
                    {
                        "name": "ciclo_id",
                        "in": "query",
                        "description": "Filtrar por ID de ciclo",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    },
                    {
                        "name": "carrera_id",
                        "in": "query",
                        "description": "Filtrar por ID de carrera",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "example": 2
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de alumnos egresados",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Alumno"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error interno del servidor"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/anos": {
            "get": {
                "tags": [
                    "Mantenimiento - Anos"
                ],
                "summary": "Listar años",
                "operationId": "f49b489d3e156680eb92c165abaa4aee",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de años"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/areas": {
            "get": {
                "tags": [
                    "Mantenimiento - Areas"
                ],
                "summary": "Listar áreas",
                "operationId": "4da50e6e023aff83f9203cada3d6dd39",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de áreas"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Mantenimiento - Areas"
                ],
                "summary": "Crear un área",
                "operationId": "ca81bdba1bbea56b7f5d594947624d8f",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Área de Ciencias"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Área creada"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/areas/{id}": {
            "get": {
                "tags": [
                    "Mantenimiento - Areas"
                ],
                "summary": "Obtener un área por ID",
                "operationId": "b837056148100a8fcb6c494fedd1d1d3",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Área encontrada"
                    },
                    "404": {
                        "description": "No encontrado"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Mantenimiento - Areas"
                ],
                "summary": "Actualizar un área",
                "operationId": "9f73437d114b6bc911ec0d868d62a92c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Área actualizada"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Área actualizada"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Mantenimiento - Areas"
                ],
                "summary": "Eliminar un área",
                "operationId": "9265ea1197daceffe01d9757dd925f60",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Área eliminada"
                    },
                    "404": {
                        "description": "No encontrado"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/areas-de-formacion": {
            "get": {
                "tags": [
                    "Mantenimiento - Areas de Formacion"
                ],
                "summary": "Listar áreas de formación",
                "operationId": "3efd796f8c041b18f418a23e7ad8c891",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de áreas de formación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Mantenimiento - Areas de Formacion"
                ],
                "summary": "Crear un área de formación",
                "operationId": "37b53a3dd8fcc1b9a3d541e02b87346e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Formación Tecnológica"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Área de formación creada"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/areas-de-formacion/{id}": {
            "get": {
                "tags": [
                    "Mantenimiento - Areas de Formacion"
                ],
                "summary": "Obtener un área de formación por ID",
                "operationId": "59d76d9b0b09de164c4607c19a69f000",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Área de formación encontrada"
                    },
                    "404": {
                        "description": "No encontrado"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Mantenimiento - Areas de Formacion"
                ],
                "summary": "Actualizar un área de formación",
                "operationId": "21fdd4a6d9e05eb50ec8e78e0dedd545",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Formación actualizada"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Área de formación actualizada"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Mantenimiento - Areas de Formacion"
                ],
                "summary": "Eliminar un área de formación",
                "operationId": "7773b8064619732f916f35a50a34fae4",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Área de formación eliminada"
                    },
                    "404": {
                        "description": "No encontrado"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/asistencia-curso/{cursoId}": {
            "get": {
                "tags": [
                    "AsistenciaCurso"
                ],
                "summary": "Obtener asistencia de alumnos de un curso en una fecha",
                "operationId": "e5eb0353b15477bad57a2f790d8788b8",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cursoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "fecha",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de asistencias del curso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/asistencia-curso": {
            "post": {
                "tags": [
                    "AsistenciaCurso"
                ],
                "summary": "Registrar o alternar asistencia de un alumno en un curso",
                "operationId": "ec06d3dc71425bcf9c4ed29057bddceb",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "alumno_id",
                                    "curso_id"
                                ],
                                "properties": {
                                    "alumno_id": {
                                        "type": "integer"
                                    },
                                    "curso_id": {
                                        "type": "integer"
                                    },
                                    "fecha": {
                                        "type": "string",
                                        "format": "date"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Estado de asistencia actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "presente": {
                                            "type": "boolean"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/asistencia-curso/{cursoId}/fechas": {
            "get": {
                "tags": [
                    "AsistenciaCurso"
                ],
                "summary": "Obtener fechas de clases de un curso según su horario",
                "operationId": "7b06976315c8084b399986cd26553f6c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cursoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de fechas de clases",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "string",
                                        "format": "date"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/asistencias/clases-del-dia": {
            "get": {
                "tags": [
                    "Asistencias"
                ],
                "summary": "Obtener clases programadas del día",
                "operationId": "6c9f88495857f15bd46b0a5be7789cd8",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "fecha",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de clases del día",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/asistencias/clase/{claseProgramadaId}/alumnos": {
            "get": {
                "tags": [
                    "Asistencias"
                ],
                "summary": "Obtener alumnos de una clase programada",
                "operationId": "2c7503c00c572271911faaa7e6211442",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "claseProgramadaId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de alumnos con estado de asistencia",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/asistencias/clase/{claseProgramadaId}/validar": {
            "get": {
                "tags": [
                    "Asistencias"
                ],
                "summary": "Validar asistencias antes de guardar",
                "operationId": "646f1edae96062255d04a8aa7396005f",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "claseProgramadaId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Resultado de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/asistencias/clase/{claseProgramadaId}/guardar": {
            "post": {
                "tags": [
                    "Asistencias"
                ],
                "summary": "Guardar asistencias de una clase",
                "operationId": "5f61b06095ac453d568870cfd824a34e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "claseProgramadaId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "asistencias": {
                                        "type": "array",
                                        "items": {
                                            "properties": {
                                                "alumno_id": {
                                                    "type": "integer"
                                                },
                                                "presente": {
                                                    "type": "boolean"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Asistencias guardadas",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Asistencias guardadas"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/asistencias/clase/{claseProgramadaId}/abrir": {
            "get": {
                "tags": [
                    "Asistencias"
                ],
                "summary": "Abrir asistencia desde una clase programada",
                "operationId": "d47d36e711ba3feea65dc8ceb8af4e74",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "claseProgramadaId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos de asistencia abierta",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/aulas": {
            "get": {
                "tags": [
                    "Mantenimiento - Aulas"
                ],
                "summary": "Listar aulas",
                "operationId": "961ffbe619868d1e7fa4b6133d108c8e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de aulas"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Mantenimiento - Aulas"
                ],
                "summary": "Crear o actualizar un aula",
                "operationId": "17dc80aa5df0e6434314a3b15f14a4b0",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "type": "integer",
                                        "example": null,
                                        "nullable": true
                                    },
                                    "nombre": {
                                        "type": "string",
                                        "example": "Aula 101"
                                    },
                                    "capacidad": {
                                        "type": "integer",
                                        "example": 30
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Aula actualizada"
                    },
                    "201": {
                        "description": "Aula creada"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/aulas/{id}": {
            "delete": {
                "tags": [
                    "Mantenimiento - Aulas"
                ],
                "summary": "Eliminar un aula",
                "operationId": "baf3a59f04d0d601e6c5d20c62bbb91a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Aula eliminada"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/aulas/disponibilidad": {
            "post": {
                "tags": [
                    "Mantenimiento - Aulas"
                ],
                "summary": "Guardar disponibilidad de un aula",
                "operationId": "a469357eecb424865ccd652b888fbe77",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "aulaId",
                                    "events"
                                ],
                                "properties": {
                                    "aulaId": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "events": {
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Disponibilidad guardada"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/aulas/{aulaId}/disponibilidad": {
            "get": {
                "tags": [
                    "Mantenimiento - Aulas"
                ],
                "summary": "Obtener disponibilidad de un aula",
                "operationId": "9e3b02964b8f2d1c914255f66f8157a1",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "aulaId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Disponibilidad del aula"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/aulas/disponibilidad/{id}": {
            "delete": {
                "tags": [
                    "Mantenimiento - Aulas"
                ],
                "summary": "Eliminar una disponibilidad de aula",
                "operationId": "98b81bafbefdd91aaa57f29504d307d5",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Disponibilidad eliminada"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/login": {
            "post": {
                "tags": [
                    "Auth"
                ],
                "summary": "Iniciar sesión",
                "description": "Autentica con email o DNI + contraseña. El sistema detecta automáticamente la institución del usuario. No se requiere dominio en la URL.",
                "operationId": "authLogin",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "password"
                                ],
                                "properties": {
                                    "email": {
                                        "description": "Email del usuario (usar email o dni, no ambos)",
                                        "type": "string",
                                        "format": "email",
                                        "example": "admin@example.com"
                                    },
                                    "dni": {
                                        "description": "DNI del usuario (alternativa al email)",
                                        "type": "string",
                                        "example": "12345678"
                                    },
                                    "password": {
                                        "description": "Contraseña del usuario",
                                        "type": "string",
                                        "format": "password",
                                        "example": "secret"
                                    }
                                },
                                "type": "object",
                                "oneOf": [
                                    {
                                        "required": [
                                            "email",
                                            "password"
                                        ],
                                        "properties": {
                                            "email": {
                                                "type": "string",
                                                "format": "email",
                                                "example": "admin@example.com"
                                            }
                                        },
                                        "type": "object"
                                    },
                                    {
                                        "required": [
                                            "dni",
                                            "password"
                                        ],
                                        "properties": {
                                            "dni": {
                                                "type": "string",
                                                "example": "12345678"
                                            }
                                        },
                                        "type": "object"
                                    }
                                ]
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Usuario autenticado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "mensaje": {
                                            "type": "string",
                                            "example": "Usuario autenticado"
                                        },
                                        "status": {
                                            "type": "integer",
                                            "example": 200
                                        },
                                        "user": {
                                            "properties": {
                                                "id": {
                                                    "type": "integer",
                                                    "example": 1
                                                },
                                                "name": {
                                                    "type": "string",
                                                    "example": "Juan Pérez"
                                                },
                                                "email": {
                                                    "type": "string",
                                                    "example": "admin@example.com"
                                                },
                                                "api_token": {
                                                    "type": "string",
                                                    "example": "eyJ0eXAi..."
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Contraseña incorrecta",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "mensaje": {
                                            "type": "string",
                                            "example": "Contraseña incorrecta"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Usuario no encontrado en este dominio",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "mensaje": {
                                            "type": "string",
                                            "example": "Usuario no encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Falta email o dni",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "mensaje": {
                                            "type": "string",
                                            "example": "Debe proporcionar email o DNI"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/logout": {
            "post": {
                "tags": [
                    "Auth"
                ],
                "summary": "Cerrar sesión",
                "description": "Invalida el token del usuario autenticado.",
                "operationId": "authLogout",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "api_token"
                                ],
                                "properties": {
                                    "api_token": {
                                        "type": "string",
                                        "example": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9..."
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Sesión cerrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "mensaje": {
                                            "type": "string",
                                            "example": "Usuario desconectado"
                                        },
                                        "status": {
                                            "type": "integer",
                                            "example": 200
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Usuario no encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "mensaje": {
                                            "type": "string",
                                            "example": "Usuario no encontrado"
                                        },
                                        "status": {
                                            "type": "integer",
                                            "example": 404
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Token faltante",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "El campo api_token es obligatorio."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/calendario/alumno": {
            "get": {
                "tags": [
                    "Calendario"
                ],
                "summary": "Obtener el calendario de eventos para un alumno",
                "operationId": "0d5cec19ae2a5699d1352e5cea589c7f",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "alumno_id",
                        "in": "query",
                        "description": "ID del alumno",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de eventos del calendario del alumno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/calendario/docente": {
            "get": {
                "tags": [
                    "Calendario"
                ],
                "summary": "Obtener el calendario de eventos para un docente",
                "operationId": "9737b3823915e3c844c22410eb41deed",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "docente_id",
                        "in": "query",
                        "description": "ID del docente",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de eventos del calendario del docente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/candidatos": {
            "get": {
                "tags": [
                    "Candidato"
                ],
                "summary": "Listar candidatos",
                "operationId": "d8cbfe87ad05e8ce4e7ac34ad84ef67f",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de candidatos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Candidato"
                ],
                "summary": "Crear un candidato",
                "operationId": "ba9d65332f741787adef0fa1992f86f5",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Candidato creado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "candidato": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/candidatos/{id}": {
            "get": {
                "tags": [
                    "Candidato"
                ],
                "summary": "Obtener candidato por ID",
                "operationId": "ed174def0c74f07b93facafe47e8c950",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Candidato encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "candidato": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Candidato"
                ],
                "summary": "Actualizar un candidato",
                "operationId": "ecec3efaaf71f2f285dda553cb686c5a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Candidato actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Candidato"
                ],
                "summary": "Eliminar un candidato",
                "operationId": "2395535da5594bfeb15cc091be7d687d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Candidato eliminado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/candidatos/by-user/{userId}": {
            "get": {
                "tags": [
                    "Candidato"
                ],
                "summary": "Obtener candidato por usuario",
                "operationId": "5570e91308ddad2b2aa5785af4090867",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "userId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Candidato del usuario",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "candidato": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/candidatos/by-ciudad/{ciudadId}": {
            "get": {
                "tags": [
                    "Candidato"
                ],
                "summary": "Obtener candidatos por ciudad",
                "operationId": "d4cdea847c0324bebfb0704d2f8170be",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "ciudadId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Candidatos de la ciudad",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/candidatos/count-by-ciudad/{ciudadId}": {
            "get": {
                "tags": [
                    "Candidato"
                ],
                "summary": "Contar candidatos por ciudad",
                "operationId": "139fffceb04b7c31943ae33508c0221a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "ciudadId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Conteo de candidatos por ciudad",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "ciudad_id": {
                                            "type": "integer"
                                        },
                                        "cantidadCandidatos": {
                                            "type": "integer"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/candidatos/filters-data": {
            "get": {
                "tags": [
                    "Candidato"
                ],
                "summary": "Obtener datos de filtros para candidatos",
                "operationId": "1fe0ef638ec635c05f3158113af50c2a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos de filtros",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/candidatos/data-create": {
            "get": {
                "tags": [
                    "Candidato"
                ],
                "summary": "Obtener datos para formulario de creación de candidato",
                "operationId": "5054ec7023a408fca9bc5dc7b6532879",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos para creación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/capacitaciones": {
            "get": {
                "tags": [
                    "Capacitaciones"
                ],
                "summary": "Listar todas las capacitaciones",
                "operationId": "a250c2d54c7fa69d51335629ad0166ac",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Capacitaciones obtenidas correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Capacitaciones"
                ],
                "summary": "Crear una nueva capacitación",
                "operationId": "561f1e0d8caa887b11d420cdb491922d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "required": [
                                    "codigo",
                                    "nombre",
                                    "horas",
                                    "estado_capacitacion",
                                    "fecha",
                                    "nombres_apellidos",
                                    "documento_identidad",
                                    "celular",
                                    "cv_file"
                                ],
                                "properties": {
                                    "codigo": {
                                        "type": "string",
                                        "maxLength": 25
                                    },
                                    "nombre": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "horas": {
                                        "type": "integer",
                                        "maximum": 500,
                                        "minimum": 1
                                    },
                                    "estado_capacitacion": {
                                        "type": "integer",
                                        "enum": [
                                            1,
                                            2,
                                            3
                                        ]
                                    },
                                    "fecha": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "nombres_apellidos": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "documento_identidad": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "celular": {
                                        "type": "string",
                                        "maxLength": 15
                                    },
                                    "sylabus": {
                                        "type": "string"
                                    },
                                    "temas": {
                                        "type": "string"
                                    },
                                    "cv_file": {
                                        "description": "PDF, DOC o DOCX, máx 5MB",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Capacitación creada correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "object"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        },
                                        "errors": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/capacitaciones/{id}": {
            "get": {
                "tags": [
                    "Capacitaciones"
                ],
                "summary": "Obtener una capacitación por ID",
                "operationId": "fe863a66ba4dad96464539a9ee9e002a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Capacitación obtenida correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "object"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Capacitaciones"
                ],
                "summary": "Actualizar una capacitación",
                "operationId": "c3562788f8bea8dec1f75cc0658f1cf5",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "required": [
                                    "codigo",
                                    "nombre",
                                    "horas",
                                    "estado_capacitacion",
                                    "fecha",
                                    "nombres_apellidos",
                                    "documento_identidad",
                                    "celular"
                                ],
                                "properties": {
                                    "codigo": {
                                        "type": "string",
                                        "maxLength": 25
                                    },
                                    "nombre": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "horas": {
                                        "type": "integer",
                                        "maximum": 500,
                                        "minimum": 1
                                    },
                                    "estado_capacitacion": {
                                        "type": "integer",
                                        "enum": [
                                            1,
                                            2,
                                            3
                                        ]
                                    },
                                    "fecha": {
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "nombres_apellidos": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "documento_identidad": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "celular": {
                                        "type": "string",
                                        "maxLength": 15
                                    },
                                    "sylabus": {
                                        "type": "string"
                                    },
                                    "temas": {
                                        "type": "string"
                                    },
                                    "cv_file": {
                                        "description": "PDF, DOC o DOCX, máx 5MB (opcional)",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Capacitación actualizada correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "object"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        },
                                        "errors": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Capacitaciones"
                ],
                "summary": "Eliminar una capacitación",
                "operationId": "642638e08df49c2c2342b8c6d8e37f7a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Capacitación eliminada correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/capacitaciones/generate-code": {
            "get": {
                "tags": [
                    "Capacitaciones"
                ],
                "summary": "Generar código único para capacitación",
                "operationId": "df8d70103cac31847b381d7946ee6a86",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Código generado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "code": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/capacitaciones/estados/{domainId}": {
            "get": {
                "tags": [
                    "Capacitaciones"
                ],
                "summary": "Listar estados de capacitaciones por dominio",
                "operationId": "b847572d83121f31ae9d64f4a2aec461",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domainId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Estados obtenidos correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/capacitaciones/docentes/{domainId}": {
            "get": {
                "tags": [
                    "Capacitaciones"
                ],
                "summary": "Listar docentes de capacitaciones por dominio",
                "operationId": "8253c275cdc55b4b16c1e1756a98c61a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domainId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Docentes obtenidos correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/capacitaciones/{id}/download-cv": {
            "get": {
                "tags": [
                    "Capacitaciones"
                ],
                "summary": "Descargar CV de una capacitación",
                "operationId": "98d21363adc887db2f2b1e2ee1506a27",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Archivo descargado correctamente",
                        "content": {
                            "application/octet-stream": {}
                        }
                    },
                    "404": {
                        "description": "Archivo no encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/capacitacion-postulante/{idPostulante}": {
            "get": {
                "tags": [
                    "CapacitacionPostulante"
                ],
                "summary": "Listar capacitaciones de un postulante",
                "operationId": "475ce0e9e4ff4dd5e51b26f81e8a97ca",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "idPostulante",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de capacitaciones",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/capacitacion-postulante/data-create/{domainId}": {
            "get": {
                "tags": [
                    "CapacitacionPostulante"
                ],
                "summary": "Obtener datos necesarios para crear una capacitación",
                "operationId": "d21b916fd1ad845f85377b8ef2af0ad6",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domainId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos para formulario de creación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "estados": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/capacitacion-postulante": {
            "post": {
                "tags": [
                    "CapacitacionPostulante"
                ],
                "summary": "Crear una capacitación del postulante",
                "operationId": "1c6a66df937c94e8792cf71d00293006",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre",
                                    "institucion",
                                    "fecha_inicio",
                                    "fecha_termino",
                                    "domain_id",
                                    "id_postulante"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Curso de PHP"
                                    },
                                    "institucion": {
                                        "type": "string",
                                        "example": "Instituto Tecnológico"
                                    },
                                    "fecha_inicio": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2023-01-01"
                                    },
                                    "fecha_termino": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2023-06-30"
                                    },
                                    "observaciones": {
                                        "type": "string",
                                        "example": "Sin observaciones",
                                        "nullable": true
                                    },
                                    "imagen_certificado": {
                                        "type": "string",
                                        "example": "certificado.jpg",
                                        "nullable": true
                                    },
                                    "domain_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "id_postulante": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "nro_pagina_cv": {
                                        "type": "integer",
                                        "example": 2,
                                        "nullable": true
                                    },
                                    "validado": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1
                                        ],
                                        "example": 1,
                                        "nullable": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Capacitación creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Capacitación creada correctamente"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/capacitacion-postulante/{id}": {
            "put": {
                "tags": [
                    "CapacitacionPostulante"
                ],
                "summary": "Actualizar una capacitación del postulante",
                "operationId": "cc23dd5c64fe1edc64399b63912cafbe",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre",
                                    "institucion",
                                    "fecha_inicio",
                                    "fecha_termino",
                                    "domain_id",
                                    "id_postulante"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Curso de PHP Avanzado"
                                    },
                                    "institucion": {
                                        "type": "string",
                                        "example": "Instituto Tecnológico"
                                    },
                                    "fecha_inicio": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2023-01-01"
                                    },
                                    "fecha_termino": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2023-06-30"
                                    },
                                    "observaciones": {
                                        "type": "string",
                                        "example": "Actualizado",
                                        "nullable": true
                                    },
                                    "imagen_certificado": {
                                        "type": "string",
                                        "example": "certificado_nuevo.jpg",
                                        "nullable": true
                                    },
                                    "domain_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "id_postulante": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "nro_pagina_cv": {
                                        "type": "integer",
                                        "example": 3,
                                        "nullable": true
                                    },
                                    "validado": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1
                                        ],
                                        "example": 1,
                                        "nullable": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Capacitación actualizada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Capacitación actualizada correctamente"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "CapacitacionPostulante"
                ],
                "summary": "Eliminar una capacitación del postulante",
                "operationId": "a4cc2894c6249e761ac26b8f44a4014b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Capacitación eliminada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Capacitación eliminada correctamente"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/capacitacion-postulante/{id}/validado": {
            "patch": {
                "tags": [
                    "CapacitacionPostulante"
                ],
                "summary": "Actualizar el estado de validación de una capacitación",
                "operationId": "e3b9ed25f186ec96434b2cc98258b4e2",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "validado"
                                ],
                                "properties": {
                                    "validado": {
                                        "type": "integer",
                                        "enum": [
                                            0,
                                            1
                                        ],
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Estado de validación actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Estado de validación actualizado correctamente"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/carreras": {
            "get": {
                "tags": [
                    "Carreras"
                ],
                "summary": "Listar todas las carreras",
                "operationId": "969a0cc3ed418450ca46af05cc15ad94",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de carreras",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Carreras"
                ],
                "summary": "Crear una nueva carrera",
                "operationId": "922ffd8bd3006b544cb8c904f0cfa694",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string"
                                    },
                                    "descripcion": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Carrera creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/carreras/{id}": {
            "get": {
                "tags": [
                    "Carreras"
                ],
                "summary": "Obtener una carrera por ID",
                "operationId": "a2ee1fed3e058205626d7bbe6ef6a40b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Carrera encontrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No encontrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Carreras"
                ],
                "summary": "Actualizar una carrera",
                "operationId": "d0954130babfe54323a65291b269e0b3",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string"
                                    },
                                    "descripcion": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Carrera actualizada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No encontrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Carreras"
                ],
                "summary": "Eliminar una carrera",
                "operationId": "7e7abd327eb76b9fa3dafb8b53292286",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Carrera eliminada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Carrera eliminada"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No encontrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/ciclos": {
            "get": {
                "tags": [
                    "Ciclos"
                ],
                "summary": "Listar todos los ciclos",
                "operationId": "438f3dab0aba7320039fafafa3f61e3e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de ciclos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Ciclos"
                ],
                "summary": "Crear un nuevo ciclo",
                "operationId": "e8f69a836ea2aa29c34f21a095f2a600",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string"
                                    },
                                    "anio": {
                                        "type": "integer"
                                    },
                                    "numero": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Ciclo creado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/ciclos/{id}": {
            "get": {
                "tags": [
                    "Ciclos"
                ],
                "summary": "Obtener un ciclo por ID",
                "operationId": "41682233375a7eebe2aaef2107fadb5b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Ciclo encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Ciclos"
                ],
                "summary": "Actualizar un ciclo",
                "operationId": "2dacbf7b1dad7f447e3712e8fcb7f8e1",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string"
                                    },
                                    "anio": {
                                        "type": "integer"
                                    },
                                    "numero": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Ciclo actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Ciclos"
                ],
                "summary": "Eliminar un ciclo",
                "operationId": "110b7b92388aa3a226e6119d45843633",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Ciclo eliminado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Ciclo eliminado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/ciclos/dropdown": {
            "get": {
                "tags": [
                    "Ciclos"
                ],
                "summary": "Obtener ciclos para dropdown",
                "operationId": "1d39e00910a7229c504e73d9dd976064",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de ciclos para dropdown",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/ciudades": {
            "get": {
                "tags": [
                    "Ciudades"
                ],
                "summary": "Listar ciudades por dominio",
                "operationId": "593aeb42301ec9f93844b3655e39850c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de ciudades"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Ciudades"
                ],
                "summary": "Crear una nueva ciudad",
                "operationId": "e2a2077a97aa57816a11331339ecb131",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Ciudad creada exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/ciudades/by-estado/{estado}": {
            "get": {
                "tags": [
                    "Ciudades"
                ],
                "summary": "Listar ciudades por estado",
                "operationId": "098d38f0ce545514ea1ecbc9d1caac8b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "estado",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de ciudades por estado"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/ciudades/{id}": {
            "get": {
                "tags": [
                    "Ciudades"
                ],
                "summary": "Obtener una ciudad por ID",
                "operationId": "868af301d7281d70d60d9881501c7198",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos de la ciudad"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Ciudades"
                ],
                "summary": "Actualizar una ciudad",
                "operationId": "47f80af9d0b982ce652413d2e62903ad",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Ciudad actualizada exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Ciudades"
                ],
                "summary": "Eliminar una ciudad",
                "operationId": "eb25bc974289e3272dbb56a553d22718",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Ciudad eliminada exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/company": {
            "get": {
                "tags": [
                    "Company"
                ],
                "summary": "Obtener datos de la empresa",
                "operationId": "3db3d3c029d690354b8d2864da325452",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos de la empresa",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Company"
                ],
                "summary": "Guardar datos de la empresa",
                "operationId": "f25c9dcea8b15cb448a7450f5be3e4f5",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "nombreInstitucion": {
                                        "type": "string",
                                        "example": "Mi Empresa S.A."
                                    },
                                    "logo": {
                                        "description": "Archivo de imagen para el logo",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Empresa guardada correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/config-general": {
            "get": {
                "tags": [
                    "ConfigGeneral"
                ],
                "summary": "Obtener configuración general",
                "operationId": "6d49fe126045ac6c54f31f29672582de",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Configuración general",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "ConfigGeneral"
                ],
                "summary": "Guardar configuración general",
                "operationId": "cd6f2d2f1427377a2b180ccaa38e89bd",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "properties": {
                                    "logo": {
                                        "description": "Archivo de imagen para el logo",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object",
                                "additionalProperties": {
                                    "type": "string"
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Configuración guardada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/cursos": {
            "get": {
                "tags": [
                    "Cursos"
                ],
                "summary": "Listar cursos",
                "description": "Retorna la lista de cursos. Acepta filtros opcionales.",
                "operationId": "cursoIndex",
                "parameters": [
                    {
                        "name": "ciclo_id",
                        "in": "query",
                        "description": "Filtrar por ID de ciclo",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    },
                    {
                        "name": "carrera_id",
                        "in": "query",
                        "description": "Filtrar por ID de carrera",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "example": 2
                        }
                    },
                    {
                        "name": "docente_id",
                        "in": "query",
                        "description": "Filtrar por ID de docente",
                        "required": false,
                        "schema": {
                            "type": "integer",
                            "example": 3
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de cursos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Curso"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error interno del servidor"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Cursos"
                ],
                "summary": "Crear un curso",
                "operationId": "cursoStore",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre",
                                    "codigo",
                                    "carrera_id",
                                    "ciclo_id"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Matemáticas I"
                                    },
                                    "codigo": {
                                        "type": "string",
                                        "example": "MAT001"
                                    },
                                    "carrera_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "ciclo_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "docente_id": {
                                        "type": "integer",
                                        "example": 2,
                                        "nullable": true
                                    },
                                    "estado_id": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Curso creado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Curso"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error de validación"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/cursos/{id}": {
            "get": {
                "tags": [
                    "Cursos"
                ],
                "summary": "Obtener un curso por ID",
                "operationId": "cursoShow",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ID del curso",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos del curso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Curso"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Curso no encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Curso no encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Cursos"
                ],
                "summary": "Actualizar un curso",
                "operationId": "cursoUpdate",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ID del curso",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Matemáticas I"
                                    },
                                    "codigo": {
                                        "type": "string",
                                        "example": "MAT001"
                                    },
                                    "carrera_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "ciclo_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "docente_id": {
                                        "type": "integer",
                                        "example": 2,
                                        "nullable": true
                                    },
                                    "estado_id": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Curso actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Curso"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Curso no encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Curso no encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error de validación"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Cursos"
                ],
                "summary": "Eliminar un curso",
                "operationId": "cursoDestroy",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ID del curso",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Curso eliminado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Curso eliminado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Curso no encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Curso no encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/curso-alumno/by-alumno/{alumnoId}": {
            "get": {
                "tags": [
                    "CursoAlumno"
                ],
                "summary": "Listar cursos de un alumno",
                "operationId": "cursoAlumnoByAlumno",
                "parameters": [
                    {
                        "name": "alumnoId",
                        "in": "path",
                        "description": "ID del alumno",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Cursos en los que está inscrito el alumno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "curso_id": {
                                                "type": "integer",
                                                "example": 1
                                            },
                                            "alumno_id": {
                                                "type": "integer",
                                                "example": 1
                                            },
                                            "estado_id": {
                                                "type": "integer",
                                                "example": 1
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error interno del servidor"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/curso-alumno/by-curso/{cursoId}": {
            "get": {
                "tags": [
                    "CursoAlumno"
                ],
                "summary": "Listar alumnos de un curso",
                "operationId": "cursoAlumnoByCurso",
                "parameters": [
                    {
                        "name": "cursoId",
                        "in": "path",
                        "description": "ID del curso",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Alumnos inscritos en el curso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "curso_id": {
                                                "type": "integer",
                                                "example": 1
                                            },
                                            "alumno_id": {
                                                "type": "integer",
                                                "example": 1
                                            },
                                            "estado_id": {
                                                "type": "integer",
                                                "example": 1
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error interno del servidor"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/curso-alumno/enroll": {
            "post": {
                "tags": [
                    "CursoAlumno"
                ],
                "summary": "Inscribir alumno en un curso",
                "operationId": "cursoAlumnoEnroll",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "curso_id",
                                    "alumno_id"
                                ],
                                "properties": {
                                    "curso_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "alumno_id": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Inscripción creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "curso_id": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "alumno_id": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "estado_id": {
                                            "type": "integer",
                                            "example": 1
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación o alumno ya inscrito",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "El alumno ya está inscrito en este curso"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/curso-alumno/unenroll": {
            "post": {
                "tags": [
                    "CursoAlumno"
                ],
                "summary": "Desvincular alumno de un curso",
                "operationId": "cursoAlumnoUnenroll",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "curso_id",
                                    "alumno_id"
                                ],
                                "properties": {
                                    "curso_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "alumno_id": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Alumno desvinculado del curso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Alumno desvinculado del curso"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error de validación"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/curso-alumno/estado": {
            "patch": {
                "tags": [
                    "CursoAlumno"
                ],
                "summary": "Actualizar el estado de un alumno en un curso",
                "operationId": "cursoAlumnoUpdateEstado",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "curso_id",
                                    "alumno_id",
                                    "estado_id"
                                ],
                                "properties": {
                                    "curso_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "alumno_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "estado_id": {
                                        "type": "integer",
                                        "example": 2
                                    },
                                    "estado_curso_id": {
                                        "type": "integer",
                                        "example": 3,
                                        "nullable": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Estado actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Estado actualizado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error de validación"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/curso-docente/{docenteId}": {
            "get": {
                "tags": [
                    "CursoDocente"
                ],
                "summary": "Listar cursos asignados a un docente",
                "operationId": "cursoDocenteIndex",
                "parameters": [
                    {
                        "name": "docenteId",
                        "in": "path",
                        "description": "ID del docente",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Cursos asignados al docente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Curso"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error interno del servidor"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/curso-docente/assign": {
            "post": {
                "tags": [
                    "CursoDocente"
                ],
                "summary": "Asignar docente a un curso",
                "operationId": "cursoDocenteAssign",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "curso_id",
                                    "docente_id"
                                ],
                                "properties": {
                                    "curso_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "docente_id": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Docente asignado al curso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Curso"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación o asignación no permitida",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "El curso o docente no existe"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/descarga-masiva/notas": {
            "post": {
                "tags": [
                    "DescargaMasiva"
                ],
                "summary": "Descarga masiva de notas en formato Excel",
                "operationId": "70492605344e29fc36ebb14dc0d3d002",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "docente_id",
                                    "domain_id",
                                    "curso_ids"
                                ],
                                "properties": {
                                    "docente_id": {
                                        "type": "integer",
                                        "example": 5
                                    },
                                    "domain_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "curso_ids": {
                                        "type": "array",
                                        "items": {
                                            "type": "integer",
                                            "example": 10
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Archivo Excel generado y descargado"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/doc-identidad": {
            "get": {
                "tags": [
                    "DocIdentidad"
                ],
                "summary": "Listar tipos de documento de identidad",
                "operationId": "695d8586f14cf9f957de043252d5b454",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de documentos de identidad"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "DocIdentidad"
                ],
                "summary": "Crear un nuevo tipo de documento de identidad",
                "operationId": "7f8360e129de8415b972e96da6613324",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Documento de identidad creado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/doc-identidad/{id}": {
            "get": {
                "tags": [
                    "DocIdentidad"
                ],
                "summary": "Obtener un tipo de documento de identidad por ID",
                "operationId": "664da0ac0201eae1babff2f4a999e270",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos del documento de identidad"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "DocIdentidad"
                ],
                "summary": "Actualizar un tipo de documento de identidad",
                "operationId": "0278a0cb600dd75d22f53ea589499279",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Documento de identidad actualizado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "DocIdentidad"
                ],
                "summary": "Eliminar un tipo de documento de identidad",
                "operationId": "178479cc6ab5551eae4397c5ba9d7bbb",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Documento de identidad eliminado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/docentes": {
            "get": {
                "tags": [
                    "Docentes"
                ],
                "summary": "Listar docentes",
                "operationId": "docenteIndex",
                "responses": {
                    "200": {
                        "description": "Lista de docentes",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Docente"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error interno del servidor"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Docentes"
                ],
                "summary": "Crear un docente",
                "operationId": "docenteStore",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombres",
                                    "apellidos",
                                    "dni",
                                    "email"
                                ],
                                "properties": {
                                    "nombres": {
                                        "type": "string",
                                        "example": "Carlos"
                                    },
                                    "apellidos": {
                                        "type": "string",
                                        "example": "Pérez"
                                    },
                                    "dni": {
                                        "type": "string",
                                        "example": "87654321"
                                    },
                                    "email": {
                                        "type": "string",
                                        "format": "email",
                                        "example": "carlos@example.com"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Docente creado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Docente"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error de validación"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/docentes/{id}": {
            "get": {
                "tags": [
                    "Docentes"
                ],
                "summary": "Obtener un docente por ID",
                "operationId": "docenteShow",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ID del docente",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos del docente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Docente"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Docente no encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Docente no encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Docentes"
                ],
                "summary": "Actualizar un docente",
                "operationId": "docenteUpdate",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ID del docente",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombres": {
                                        "type": "string",
                                        "example": "Carlos"
                                    },
                                    "apellidos": {
                                        "type": "string",
                                        "example": "Pérez"
                                    },
                                    "dni": {
                                        "type": "string",
                                        "example": "87654321"
                                    },
                                    "email": {
                                        "type": "string",
                                        "format": "email",
                                        "example": "carlos@example.com"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Docente actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Docente"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Docente no encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Docente no encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error de validación"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Docentes"
                ],
                "summary": "Eliminar un docente",
                "operationId": "docenteDestroy",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ID del docente",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Docente eliminado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Docente eliminado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Docente no encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Docente no encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/docentes/dropdown": {
            "get": {
                "tags": [
                    "Docentes"
                ],
                "summary": "Obtener docentes para dropdown",
                "description": "Retorna lista reducida de docentes (id + nombre) para uso en selectores.",
                "operationId": "docenteDropdown",
                "responses": {
                    "200": {
                        "description": "Lista de docentes para dropdown",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "id": {
                                                "type": "integer",
                                                "example": 1
                                            },
                                            "nombre_completo": {
                                                "type": "string",
                                                "example": "Carlos Pérez"
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Error interno del servidor"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/documento-gestion/{domainId}": {
            "get": {
                "tags": [
                    "DocumentoGestion"
                ],
                "summary": "Listar documentos de gestión por dominio",
                "operationId": "116db239fed51001c05e156a4d4913d6",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domainId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Documentos obtenidos correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/documento-gestion": {
            "post": {
                "tags": [
                    "DocumentoGestion"
                ],
                "summary": "Crear un documento de gestión",
                "operationId": "8c50266f4341f4268f1c23cfb2e5c1a1",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "codigo",
                                    "nombre",
                                    "descripcion",
                                    "costo",
                                    "recursos",
                                    "domain_id",
                                    "user_id"
                                ],
                                "properties": {
                                    "codigo": {
                                        "type": "string",
                                        "maxLength": 25
                                    },
                                    "nombre": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "descripcion": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "costo": {
                                        "type": "integer"
                                    },
                                    "recursos": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "domain_id": {
                                        "type": "integer"
                                    },
                                    "user_id": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Documento creado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        },
                                        "errors": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/documento-gestion/{domainId}/{id}": {
            "get": {
                "tags": [
                    "DocumentoGestion"
                ],
                "summary": "Obtener un documento de gestión por ID",
                "operationId": "1473fea81aa5982b5eade6b82b333392",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domainId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Documento obtenido correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/documento-gestion/{id}": {
            "put": {
                "tags": [
                    "DocumentoGestion"
                ],
                "summary": "Actualizar un documento de gestión",
                "operationId": "27709a92ef975a1cd01815c666100953",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "codigo",
                                    "nombre",
                                    "descripcion",
                                    "costo",
                                    "recursos"
                                ],
                                "properties": {
                                    "codigo": {
                                        "type": "string",
                                        "maxLength": 25
                                    },
                                    "nombre": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "descripcion": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "costo": {
                                        "type": "integer"
                                    },
                                    "recursos": {
                                        "type": "string",
                                        "maxLength": 255
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Documento actualizado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        },
                                        "errors": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "DocumentoGestion"
                ],
                "summary": "Eliminar un documento de gestión",
                "operationId": "963cb59245518c258dc0c9407969a8b1",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Documento eliminado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/documento-gestion/generate-code": {
            "get": {
                "tags": [
                    "DocumentoGestion"
                ],
                "summary": "Generar código único para documento de gestión",
                "operationId": "b6bd82a43c27e45eff983b3672e36746",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Código generado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "code": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/documento-gestion/{domainId}/alumno/{userId}": {
            "get": {
                "tags": [
                    "DocumentoGestion"
                ],
                "summary": "Obtener documentos de gestión de un alumno",
                "operationId": "fe6bba20c890970d163ff67081affbbf",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domainId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "userId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Documentos del alumno obtenidos correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/empleadores": {
            "post": {
                "tags": [
                    "Empleador"
                ],
                "summary": "Crear un empleador",
                "operationId": "53ca37e27033d22091638e6b2ee6d851",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Empleador creado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/empleadores/by-user/{userId}": {
            "get": {
                "tags": [
                    "Empleador"
                ],
                "summary": "Obtener empleador por usuario",
                "operationId": "1108d49cb2940940f014e3e827b97c1e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "userId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Empleador del usuario",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/empresas": {
            "get": {
                "tags": [
                    "Empresa"
                ],
                "summary": "Listar empresas",
                "operationId": "6936ff1e41b7667a78ff604be15fd24d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de empresas",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Empresa"
                ],
                "summary": "Crear una empresa",
                "operationId": "ca2f1da2fbdf0effa275767d66fdce57",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Empresa creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/empresas/{id}": {
            "get": {
                "tags": [
                    "Empresa"
                ],
                "summary": "Obtener empresa por ID",
                "operationId": "1b7c5328314473c19d3de5d1373998df",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Empresa encontrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Empresa"
                ],
                "summary": "Actualizar una empresa",
                "operationId": "08a55ba9d545234d8730438b91ab00c2",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Empresa actualizada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Empresa"
                ],
                "summary": "Eliminar una empresa",
                "operationId": "de43285d66a6155cdbef6fe5ec99b49c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Empresa eliminada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/empresas/dropdown": {
            "get": {
                "tags": [
                    "Empresa"
                ],
                "summary": "Obtener empresas para dropdown",
                "operationId": "2c42bc6d0417fab871478fa1f7479106",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Empresas para dropdown",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean"
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/escalas": {
            "get": {
                "tags": [
                    "Mantenimiento - Escalas"
                ],
                "summary": "Listar escalas",
                "operationId": "c7911f567c1839db5a77b34087dd62dc",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de escalas"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Mantenimiento - Escalas"
                ],
                "summary": "Crear una escala",
                "operationId": "e9ad4a70aaa226c08bdb8dc99f3a0c66",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Escala 1-10"
                                    },
                                    "minimo": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 0
                                    },
                                    "maximo": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 10
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Escala creada"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/escalas/{id}": {
            "get": {
                "tags": [
                    "Mantenimiento - Escalas"
                ],
                "summary": "Obtener una escala por ID",
                "operationId": "8aa1c4b38e9c92b995ba53f949d7f207",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Escala encontrada"
                    },
                    "404": {
                        "description": "No encontrado"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Mantenimiento - Escalas"
                ],
                "summary": "Actualizar una escala",
                "operationId": "900847e95757b18cce832c251ca06e66",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Escala actualizada"
                                    },
                                    "minimo": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 0
                                    },
                                    "maximo": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 20
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Escala actualizada"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Mantenimiento - Escalas"
                ],
                "summary": "Eliminar una escala",
                "operationId": "5f66e99a8ed69c4aff38d3734f780083",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Escala eliminada"
                    },
                    "404": {
                        "description": "No encontrado"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/estados": {
            "get": {
                "tags": [
                    "Mantenimiento - Estados"
                ],
                "summary": "Listar estados",
                "operationId": "91760910e130de712e844f81981cf822",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de estados"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Mantenimiento - Estados"
                ],
                "summary": "Crear un estado",
                "operationId": "aadd48c917659e950e6e026ffcd8e856",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Activo"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Estado creado"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/estados/{id}": {
            "get": {
                "tags": [
                    "Mantenimiento - Estados"
                ],
                "summary": "Obtener un estado por ID",
                "operationId": "d4cfa80a773ce9c1b626178266db24dd",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Estado encontrado"
                    },
                    "404": {
                        "description": "No encontrado"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Mantenimiento - Estados"
                ],
                "summary": "Actualizar un estado",
                "operationId": "ba19e3faa1cc3669a70a96d3e7faf846",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Inactivo"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Estado actualizado"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Mantenimiento - Estados"
                ],
                "summary": "Eliminar un estado",
                "operationId": "737fb0577b78f3587a6623b97d5d62a8",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Estado eliminado"
                    },
                    "404": {
                        "description": "No encontrado"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/estado-actual/dropdown": {
            "get": {
                "tags": [
                    "Mantenimiento - Estado Actual"
                ],
                "summary": "Obtener opciones de estado actual para dropdown",
                "operationId": "de1a17b8447b662bf1d06b700d988c75",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Opciones de estado actual"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/estado-avance": {
            "get": {
                "tags": [
                    "Mantenimiento - Estado Avance"
                ],
                "summary": "Listar estados de avance",
                "operationId": "f3c4c9ee1c66d88219ea22b6b198f761",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de estados de avance"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Mantenimiento - Estado Avance"
                ],
                "summary": "Crear un estado de avance",
                "operationId": "78cef177490cdf73dc5f7e3c83f2dad3",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "En progreso"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Estado de avance creado"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/estado-avance/{id}": {
            "get": {
                "tags": [
                    "Mantenimiento - Estado Avance"
                ],
                "summary": "Obtener un estado de avance por ID",
                "operationId": "4b87b480248ca5af76a9da28fb61f24b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Estado de avance encontrado"
                    },
                    "404": {
                        "description": "No encontrado"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Mantenimiento - Estado Avance"
                ],
                "summary": "Actualizar un estado de avance",
                "operationId": "41dc7d62bf7690899eacfc4d7c75175a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Completado"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Estado de avance actualizado"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Mantenimiento - Estado Avance"
                ],
                "summary": "Eliminar un estado de avance",
                "operationId": "fb2b83ea9c30c166301911887e04e0f8",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Estado de avance eliminado"
                    },
                    "404": {
                        "description": "No encontrado"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/estado-curso": {
            "get": {
                "tags": [
                    "Mantenimiento - Estado Curso"
                ],
                "summary": "Listar estados de curso",
                "operationId": "a964fcb44038f2233c11f37a85042bfc",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de estados de curso"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Mantenimiento - Estado Curso"
                ],
                "summary": "Crear un estado de curso",
                "operationId": "cba7fbbc0b0a5636278b3c5b83fbcf14",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "En curso"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Estado de curso creado"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/estado-curso/{id}": {
            "get": {
                "tags": [
                    "Mantenimiento - Estado Curso"
                ],
                "summary": "Obtener un estado de curso por ID",
                "operationId": "43953bf9e0d1566fa5671540eee9ddb5",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Estado de curso encontrado"
                    },
                    "404": {
                        "description": "No encontrado"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Mantenimiento - Estado Curso"
                ],
                "summary": "Actualizar un estado de curso",
                "operationId": "970bfd82cff153325ad6acb2f9327fba",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Finalizado"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Estado de curso actualizado"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Mantenimiento - Estado Curso"
                ],
                "summary": "Eliminar un estado de curso",
                "operationId": "2d6f69a54141f613c9e934e47d9802da",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Estado de curso eliminado"
                    },
                    "404": {
                        "description": "No encontrado"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/evaluaciones/grupo/{grupoId}": {
            "get": {
                "tags": [
                    "Evaluaciones"
                ],
                "summary": "Listar evaluaciones de un grupo",
                "operationId": "ef184df8a5161c9272d3b4512f0e0237",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "grupoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de evaluaciones",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/evaluaciones/{id}": {
            "get": {
                "tags": [
                    "Evaluaciones"
                ],
                "summary": "Obtener una evaluación por ID",
                "operationId": "f9b5fe4f1dd2933b00d6e01399934841",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Evaluación encontrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No encontrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/evaluaciones": {
            "put": {
                "tags": [
                    "Evaluaciones"
                ],
                "summary": "Actualizar una evaluación",
                "operationId": "87ee16ffd4cd1f2f0ee57a9f5eace5b4",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "id"
                                ],
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    },
                                    "nombre": {
                                        "type": "string"
                                    },
                                    "porcentaje": {
                                        "type": "number"
                                    },
                                    "fecha": {
                                        "type": "string",
                                        "format": "date"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Evaluación actualizada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Evaluaciones"
                ],
                "summary": "Crear una nueva evaluación",
                "operationId": "4996f94bcd5e932e6eb6556bc2d125ee",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre",
                                    "grupo_de_evaluacion_id"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string"
                                    },
                                    "grupo_de_evaluacion_id": {
                                        "type": "integer"
                                    },
                                    "porcentaje": {
                                        "type": "number"
                                    },
                                    "fecha": {
                                        "type": "string",
                                        "format": "date"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Evaluación creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Evaluaciones"
                ],
                "summary": "Eliminar una evaluación",
                "operationId": "b3ebc16e1c8aad329d1742cb0c381fbc",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "id"
                                ],
                                "properties": {
                                    "id": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Evaluación eliminada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Evaluación eliminada"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No encontrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/evaluaciones/grupo/{grupoId}/porcentaje": {
            "get": {
                "tags": [
                    "Evaluaciones"
                ],
                "summary": "Obtener porcentaje total de un grupo de evaluaciones",
                "operationId": "da5a72dd9ec6bbec8cb28cb898520618",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "grupoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Porcentaje total del grupo",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "porcentaje_total": {
                                            "type": "number"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/evaluaciones/grupo/{grupoId}/alumno/{alumnoId}/notas": {
            "get": {
                "tags": [
                    "Evaluaciones"
                ],
                "summary": "Obtener notas de un alumno en un grupo de evaluaciones",
                "operationId": "ccca3fcf1abd54cbe58b64efadf6b989",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "grupoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "alumnoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Notas del alumno en el grupo",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/evaluaciones/grupo/{grupoId}/alumno/{alumnoId}/promedio": {
            "get": {
                "tags": [
                    "Evaluaciones"
                ],
                "summary": "Obtener promedio de un alumno en un grupo de evaluaciones",
                "operationId": "86877b193850893f9a65a18ce854436c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "grupoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "alumnoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Promedio del alumno en el grupo",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "promedio": {
                                            "type": "number"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/evaluaciones/{id}/asistencias": {
            "get": {
                "tags": [
                    "Evaluaciones"
                ],
                "summary": "Obtener asistencias de una evaluación",
                "operationId": "3fbb604a804f59a883f523efa2d3ca9e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Asistencias de la evaluación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/evaluaciones/{id}/aplicar-calculo": {
            "patch": {
                "tags": [
                    "Evaluaciones"
                ],
                "summary": "Activar o desactivar una evaluación en el cálculo de promedio",
                "operationId": "b624d51ed0e9d99ced7192baaeca9854",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "aplicar_en_calculo": {
                                        "type": "boolean",
                                        "example": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Estado actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/evaluaciones/curso/{cursoId}/exportar-notas": {
            "get": {
                "tags": [
                    "Evaluaciones"
                ],
                "summary": "Exportar notas de un curso",
                "operationId": "5c66c4b7ac4587f129a89567faf61e59",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cursoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Notas exportadas del curso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/evaluaciones/{id}/recursos": {
            "patch": {
                "tags": [
                    "Evaluaciones"
                ],
                "summary": "Subir recursos a una evaluación",
                "operationId": "7e7f52d966f481bec6efdcf1ee5ba448",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "recursos": {
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Recursos actualizados",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No encontrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/evaluaciones-by-modalidad/{id}/alumnos": {
            "get": {
                "tags": [
                    "EvaluacionesByModalidad"
                ],
                "summary": "Obtener los alumnos de una evaluación por ID",
                "operationId": "31b60be862072104b22c1b3be6b5a5ab",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ID de la evaluación",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de alumnos de la evaluación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/evaluaciones-by-modalidad/guardar-notas": {
            "post": {
                "tags": [
                    "EvaluacionesByModalidad"
                ],
                "summary": "Guardar notas y asistencia de los alumnos en una evaluación",
                "operationId": "d36aa6b96c139799ce35786c135a7d9c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "evaluacion_id",
                                    "notas"
                                ],
                                "properties": {
                                    "evaluacion_id": {
                                        "type": "integer",
                                        "example": 7
                                    },
                                    "notas": {
                                        "type": "array",
                                        "items": {
                                            "required": [
                                                "alumno_id",
                                                "nota",
                                                "asistencia"
                                            ],
                                            "properties": {
                                                "alumno_id": {
                                                    "type": "integer",
                                                    "example": 5
                                                },
                                                "nota": {
                                                    "type": "number",
                                                    "format": "float",
                                                    "maximum": 20,
                                                    "minimum": 0,
                                                    "example": 15
                                                },
                                                "asistencia": {
                                                    "type": "number",
                                                    "format": "float",
                                                    "example": 1
                                                }
                                            },
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Notas guardadas correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Notas guardadas correctamente."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/experiencia-especifica/{idPostulante}": {
            "get": {
                "tags": [
                    "ExperienciaEspecifica"
                ],
                "summary": "Listar experiencias específicas de un postulante",
                "operationId": "aad7c7a71260d77690bd19718d2065ad",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "idPostulante",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de experiencias específicas",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/experiencia-especifica/data-create": {
            "get": {
                "tags": [
                    "ExperienciaEspecifica"
                ],
                "summary": "Obtener datos necesarios para crear una experiencia específica",
                "operationId": "b1b24155814550bd100a621df20eb444",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos para formulario de creación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/experiencia-especifica": {
            "post": {
                "tags": [
                    "ExperienciaEspecifica"
                ],
                "summary": "Crear una experiencia específica",
                "operationId": "74632d0029e6ae449e75934d98f288a0",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "descripcion": {
                                        "type": "string",
                                        "example": "Manejo de sistemas ERP"
                                    },
                                    "anios_experiencia": {
                                        "type": "integer",
                                        "example": 3
                                    },
                                    "id_postulante": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Experiencia específica creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Experiencia específica creada"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/experiencia-especifica/{id}": {
            "put": {
                "tags": [
                    "ExperienciaEspecifica"
                ],
                "summary": "Actualizar una experiencia específica",
                "operationId": "3b23f79a00662deac5a52b050ce44c1f",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "descripcion": {
                                        "type": "string",
                                        "example": "Manejo avanzado de sistemas ERP"
                                    },
                                    "anios_experiencia": {
                                        "type": "integer",
                                        "example": 5
                                    },
                                    "id_postulante": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Experiencia específica actualizada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Actualizada"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "ExperienciaEspecifica"
                ],
                "summary": "Eliminar una experiencia específica",
                "operationId": "8695cbb9d2321c48c3ccc18336d2845d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Experiencia específica eliminada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Eliminada"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/experiencia-especifica/{id}/validado": {
            "patch": {
                "tags": [
                    "ExperienciaEspecifica"
                ],
                "summary": "Actualizar el estado de validación de una experiencia específica",
                "operationId": "2cf7428f14ee5ed9b0f13facaa4b947d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "validado"
                                ],
                                "properties": {
                                    "validado": {
                                        "type": "boolean",
                                        "example": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Estado de validación actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/experiencia-laboral/{idPostulante}": {
            "get": {
                "tags": [
                    "ExperienciaLaboral"
                ],
                "summary": "Listar experiencias laborales de un postulante",
                "operationId": "25360a7f979d938969eb66b4edba966a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "idPostulante",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de experiencias laborales",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/experiencia-laboral/data-create": {
            "get": {
                "tags": [
                    "ExperienciaLaboral"
                ],
                "summary": "Obtener datos necesarios para crear una experiencia laboral",
                "operationId": "6886e4a1fe34ad1f6346e465c7040d00",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos para formulario de creación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/experiencia-laboral": {
            "post": {
                "tags": [
                    "ExperienciaLaboral"
                ],
                "summary": "Crear una experiencia laboral",
                "operationId": "3e7c8bc6ebe251ce99669323b1fa5624",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "empresa": {
                                        "type": "string",
                                        "example": "Empresa S.A."
                                    },
                                    "cargo": {
                                        "type": "string",
                                        "example": "Desarrollador"
                                    },
                                    "fecha_inicio": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2020-01-01"
                                    },
                                    "fecha_termino": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2023-12-31"
                                    },
                                    "id_postulante": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Experiencia laboral creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Experiencia laboral creada"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/experiencia-laboral/{id}": {
            "put": {
                "tags": [
                    "ExperienciaLaboral"
                ],
                "summary": "Actualizar una experiencia laboral",
                "operationId": "a4ede265a5ea95d49fd078485c6f4a3b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "empresa": {
                                        "type": "string",
                                        "example": "Empresa S.A."
                                    },
                                    "cargo": {
                                        "type": "string",
                                        "example": "Desarrollador Senior"
                                    },
                                    "fecha_inicio": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2020-01-01"
                                    },
                                    "fecha_termino": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2023-12-31"
                                    },
                                    "id_postulante": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Experiencia laboral actualizada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Actualizada"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "ExperienciaLaboral"
                ],
                "summary": "Eliminar una experiencia laboral",
                "operationId": "cace207c6ea91bc646c659bb3021210a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Experiencia laboral eliminada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Eliminada"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/experiencia-laboral/{id}/validado": {
            "patch": {
                "tags": [
                    "ExperienciaLaboral"
                ],
                "summary": "Actualizar el estado de validación de una experiencia laboral",
                "operationId": "fbcc7c77fa7b8f16a703f8a4dd19804a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "validado"
                                ],
                                "properties": {
                                    "validado": {
                                        "type": "boolean",
                                        "example": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Estado de validación actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/feriados/{domainId}/{year}": {
            "get": {
                "tags": [
                    "Feriados"
                ],
                "summary": "Listar feriados de un dominio para un año específico",
                "operationId": "45c2a28e449d49c80e1125f17d9adf05",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domainId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "year",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 2024
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de feriados",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/feriados": {
            "post": {
                "tags": [
                    "Feriados"
                ],
                "summary": "Crear un nuevo feriado",
                "operationId": "6b87e82ea34ac8c1b5a669cc492a1fc1",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "domain_id",
                                    "fecha",
                                    "nombre"
                                ],
                                "properties": {
                                    "domain_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "fecha": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2024-07-28"
                                    },
                                    "nombre": {
                                        "type": "string",
                                        "example": "Fiestas Patrias"
                                    },
                                    "descripcion": {
                                        "type": "string",
                                        "example": "Día de la Independencia",
                                        "nullable": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Feriado creado exitosamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/feriados/{id}": {
            "put": {
                "tags": [
                    "Feriados"
                ],
                "summary": "Actualizar un feriado existente",
                "operationId": "61826975018a2ba0b5497de91f9935e9",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "fecha": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2024-07-29"
                                    },
                                    "nombre": {
                                        "type": "string",
                                        "example": "Fiestas Patrias actualizado"
                                    },
                                    "descripcion": {
                                        "type": "string",
                                        "nullable": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Feriado actualizado exitosamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Feriados"
                ],
                "summary": "Eliminar un feriado",
                "operationId": "4503dcebdb16f1259d7f46980bae1d58",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Feriado eliminado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Feriado eliminado correctamente."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/feriados/{id}/toggle-activo": {
            "patch": {
                "tags": [
                    "Feriados"
                ],
                "summary": "Activar o desactivar un feriado",
                "operationId": "d8960b13255de75f9308b12cb3d5c83b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Estado del feriado actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/feriados/{domainId}/verificar/{fecha}": {
            "get": {
                "tags": [
                    "Feriados"
                ],
                "summary": "Verificar si una fecha es feriado en el dominio",
                "operationId": "3ffeb4bfece92ddcff552b48695d40c9",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domainId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "fecha",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "date",
                            "example": "2024-07-28"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Resultado de la verificación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "es_feriado": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "fecha": {
                                            "type": "string",
                                            "example": "2024-07-28"
                                        },
                                        "domain_id": {
                                            "type": "integer",
                                            "example": 1
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/formulario-final-postulante": {
            "get": {
                "tags": [
                    "FormularioFinalPostulante"
                ],
                "summary": "Listar todos los formularios finales",
                "operationId": "349a722749fd6065809761a0bb3658aa",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de formularios finales",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "FormularioFinalPostulante"
                ],
                "summary": "Crear un formulario final",
                "operationId": "8682816566f92c8e93cc1ee91e889018",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "estado_actual_id",
                                    "aceptacion_id",
                                    "nivel_cargo_final_id",
                                    "puntaje_id",
                                    "tabla_referencia",
                                    "postulante_id"
                                ],
                                "properties": {
                                    "observaciones": {
                                        "type": "string",
                                        "example": "Sin observaciones",
                                        "nullable": true
                                    },
                                    "estado_actual_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "aceptacion_id": {
                                        "type": "integer",
                                        "example": 2
                                    },
                                    "nivel_cargo_final_id": {
                                        "type": "integer",
                                        "example": 3
                                    },
                                    "puntaje_id": {
                                        "type": "integer",
                                        "example": 4
                                    },
                                    "institucion": {
                                        "type": "string",
                                        "example": "Universidad Nacional",
                                        "nullable": true
                                    },
                                    "tabla_referencia": {
                                        "type": "string",
                                        "example": "tabla_ejemplo"
                                    },
                                    "postulante_id": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Formulario final creado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Formulario final creado correctamente"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/formulario-final-postulante/data-create": {
            "get": {
                "tags": [
                    "FormularioFinalPostulante"
                ],
                "summary": "Obtener datos necesarios para crear un formulario final",
                "operationId": "6190b42c862dbd6e35416c30b1afe911",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos para formulario de creación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/formulario-final-postulante/{id}": {
            "get": {
                "tags": [
                    "FormularioFinalPostulante"
                ],
                "summary": "Obtener un formulario final por ID",
                "operationId": "98e7bd1f03fe3b96e70d089664c3239d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Formulario final encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "FormularioFinalPostulante"
                ],
                "summary": "Actualizar un formulario final",
                "operationId": "4f16ff39e27b1d69736b1c3185bdfe98",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "estado_actual_id",
                                    "aceptacion_id",
                                    "nivel_cargo_final_id",
                                    "puntaje_id",
                                    "tabla_referencia",
                                    "postulante_id"
                                ],
                                "properties": {
                                    "observaciones": {
                                        "type": "string",
                                        "example": "Actualizado",
                                        "nullable": true
                                    },
                                    "estado_actual_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "aceptacion_id": {
                                        "type": "integer",
                                        "example": 2
                                    },
                                    "nivel_cargo_final_id": {
                                        "type": "integer",
                                        "example": 3
                                    },
                                    "puntaje_id": {
                                        "type": "integer",
                                        "example": 4
                                    },
                                    "institucion": {
                                        "type": "string",
                                        "example": "Universidad Nacional",
                                        "nullable": true
                                    },
                                    "tabla_referencia": {
                                        "type": "string",
                                        "example": "tabla_ejemplo"
                                    },
                                    "postulante_id": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Formulario final actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Formulario final actualizado correctamente"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "FormularioFinalPostulante"
                ],
                "summary": "Eliminar un formulario final",
                "operationId": "16a54285ebf95c0a78b9bf2143e739ad",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Formulario final eliminado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Formulario final eliminado correctamente"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/foros": {
            "post": {
                "tags": [
                    "Foro"
                ],
                "summary": "Crea un nuevo foro",
                "operationId": "211a55153407e33d48ab171b5e5fe625",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre",
                                    "descripcion",
                                    "id_curso"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Foro de dudas"
                                    },
                                    "descripcion": {
                                        "type": "string",
                                        "example": "Espacio para resolver dudas"
                                    },
                                    "id_curso": {
                                        "type": "integer",
                                        "example": 5
                                    },
                                    "fecha_inicio": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2024-01-01"
                                    },
                                    "fecha_fin": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2024-12-31"
                                    },
                                    "domain_id": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Foro creado exitosamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/foros/{domainId}": {
            "get": {
                "tags": [
                    "Foro"
                ],
                "summary": "Obtiene los foros de un dominio",
                "operationId": "491e0df68abde130616c9f567c5ed163",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domainId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "alumno_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "docente_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de foros retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/foros/mensajes": {
            "post": {
                "tags": [
                    "Foro"
                ],
                "summary": "Almacena un mensaje en un foro",
                "operationId": "3afbe052bb3cbb2c6d55e35b607d4ac6",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "id_foro",
                                    "alumno_id",
                                    "respuesta"
                                ],
                                "properties": {
                                    "id_foro": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "alumno_id": {
                                        "type": "integer",
                                        "example": 20
                                    },
                                    "respuesta": {
                                        "type": "string",
                                        "example": "Mi respuesta al foro"
                                    },
                                    "domain_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "id_respuesta": {
                                        "type": "integer",
                                        "example": null,
                                        "nullable": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Mensaje guardado exitosamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/frontend-password/request-reset": {
            "post": {
                "tags": [
                    "FrontendPassword"
                ],
                "summary": "Solicita un restablecimiento de contraseña por email",
                "operationId": "2e3924cd5987906bb3d461c201bbf672",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "email"
                                ],
                                "properties": {
                                    "email": {
                                        "type": "string",
                                        "format": "email",
                                        "example": "usuario@ejemplo.com"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Solicitud de restablecimiento enviada"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                }
            }
        },
        "/frontend-password/verify-token": {
            "post": {
                "tags": [
                    "FrontendPassword"
                ],
                "summary": "Verifica la validez de un token de restablecimiento de contraseña",
                "operationId": "436ff3550bcbb7cbf1dac611d8857c36",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "token"
                                ],
                                "properties": {
                                    "token": {
                                        "type": "string",
                                        "example": "abc123resettoken"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Token válido"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                }
            }
        },
        "/frontend-password/reset": {
            "post": {
                "tags": [
                    "FrontendPassword"
                ],
                "summary": "Restablece la contraseña usando un token válido",
                "operationId": "76130b5e10ca0264c00695ad37196e3d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "token",
                                    "password",
                                    "password_confirmation"
                                ],
                                "properties": {
                                    "token": {
                                        "type": "string",
                                        "example": "abc123resettoken"
                                    },
                                    "password": {
                                        "type": "string",
                                        "format": "password",
                                        "example": "NewPass123"
                                    },
                                    "password_confirmation": {
                                        "type": "string",
                                        "format": "password",
                                        "example": "NewPass123"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Contraseña restablecida exitosamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                }
            }
        },
        "/grado-instruccion": {
            "get": {
                "tags": [
                    "GradoInstruccion"
                ],
                "summary": "Listar grados de instrucción",
                "operationId": "8b01b9b0cc36a7f15ab181d4629aca84",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de grados de instrucción"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "GradoInstruccion"
                ],
                "summary": "Crear un nuevo grado de instrucción",
                "operationId": "b4934fc4f9a6ca99d46639029dc488e7",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Grado de instrucción creado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/grado-instruccion/{id}": {
            "get": {
                "tags": [
                    "GradoInstruccion"
                ],
                "summary": "Obtener un grado de instrucción por ID",
                "operationId": "24c2d76177ded1d3b32360db593df33c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos del grado de instrucción"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "GradoInstruccion"
                ],
                "summary": "Actualizar un grado de instrucción",
                "operationId": "3eab3fa0715f9ddb7743d49611c723e7",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Grado de instrucción actualizado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "GradoInstruccion"
                ],
                "summary": "Eliminar un grado de instrucción",
                "operationId": "c78871517becf8eaa66420920a89276e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Grado de instrucción eliminado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/grupos-de-evaluaciones/curso/{cursoId}": {
            "get": {
                "tags": [
                    "GruposDeEvaluaciones"
                ],
                "summary": "Listar grupos de evaluaciones de un curso",
                "operationId": "8504acebb071d7ebf2502089cde0eb03",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cursoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de grupos de evaluaciones",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/grupos-de-evaluaciones": {
            "post": {
                "tags": [
                    "GruposDeEvaluaciones"
                ],
                "summary": "Crear un nuevo grupo de evaluaciones",
                "operationId": "c56c70dc887349bd3966c6625835c9d1",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre",
                                    "curso_id"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string"
                                    },
                                    "curso_id": {
                                        "type": "integer"
                                    },
                                    "porcentaje": {
                                        "type": "number"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Grupo creado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/grupos-de-evaluaciones/{id}": {
            "put": {
                "tags": [
                    "GruposDeEvaluaciones"
                ],
                "summary": "Actualizar un grupo de evaluaciones",
                "operationId": "ac4eb25d2f02902ebc892e4a4c6a9d4a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string"
                                    },
                                    "porcentaje": {
                                        "type": "number"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Grupo actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "GruposDeEvaluaciones"
                ],
                "summary": "Eliminar un grupo de evaluaciones",
                "operationId": "9c6eea7a31eac49666e9a74ee8ddffa0",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Grupo eliminado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Grupo eliminado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/horario-simple": {
            "post": {
                "tags": [
                    "HorarioSimple"
                ],
                "summary": "Guardar un horario simple con sus bloques de disponibilidad",
                "operationId": "2414e78e9b3693d64f4033c63e791e61",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "curso_id",
                                    "aula_id",
                                    "horarios"
                                ],
                                "properties": {
                                    "curso_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "aula_id": {
                                        "type": "integer",
                                        "example": 3
                                    },
                                    "horarios": {
                                        "type": "array",
                                        "items": {
                                            "required": [
                                                "hora_inicio",
                                                "hora_fin",
                                                "day_id",
                                                "domain_id",
                                                "docente_id",
                                                "fecha_inicio",
                                                "fecha_fin",
                                                "availability_id"
                                            ],
                                            "properties": {
                                                "hora_inicio": {
                                                    "type": "string",
                                                    "example": "08:00"
                                                },
                                                "hora_fin": {
                                                    "type": "string",
                                                    "example": "10:00"
                                                },
                                                "day_id": {
                                                    "type": "integer",
                                                    "example": 1
                                                },
                                                "domain_id": {
                                                    "type": "integer",
                                                    "example": 1
                                                },
                                                "docente_id": {
                                                    "type": "integer",
                                                    "example": 2
                                                },
                                                "fecha_inicio": {
                                                    "type": "string",
                                                    "format": "date",
                                                    "example": "2024-03-01"
                                                },
                                                "fecha_fin": {
                                                    "type": "string",
                                                    "format": "date",
                                                    "example": "2024-06-30"
                                                },
                                                "availability_id": {
                                                    "type": "integer",
                                                    "example": 1
                                                }
                                            },
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Horario guardado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Horario guardado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/horario-simple/{id}": {
            "get": {
                "tags": [
                    "HorarioSimple"
                ],
                "summary": "Obtener un horario simple por ID",
                "operationId": "274c0e092c3b55acdf4b3688ec685399",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos del horario simple",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/horarios": {
            "post": {
                "tags": [
                    "Horarios"
                ],
                "summary": "Crear un horario y generar sus clases automáticamente",
                "description": "POST /api/horarios\nCrear horario y generar clases automáticamente.",
                "operationId": "0c4657ea5be50148fa3259354841a9e0",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "curso_id",
                                    "docente_id",
                                    "fecha_inicio",
                                    "fecha_fin",
                                    "dias_semana",
                                    "hora_inicio",
                                    "hora_fin",
                                    "domain_id"
                                ],
                                "properties": {
                                    "curso_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "docente_id": {
                                        "type": "integer",
                                        "example": 2
                                    },
                                    "fecha_inicio": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2024-03-01"
                                    },
                                    "fecha_fin": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2024-06-30"
                                    },
                                    "dias_semana": {
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        },
                                        "example": [
                                            1,
                                            3,
                                            5
                                        ]
                                    },
                                    "hora_inicio": {
                                        "type": "string",
                                        "example": "08:00"
                                    },
                                    "hora_fin": {
                                        "type": "string",
                                        "example": "10:00"
                                    },
                                    "domain_id": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Horario creado exitosamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "Horario creado exitosamente"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/horarios/{cursoId}": {
            "get": {
                "tags": [
                    "Horarios"
                ],
                "summary": "Listar horarios con conteo de clases para un curso",
                "description": "GET /api/horarios/{cursoId}\nListar horarios con conteo de clases para un curso.",
                "operationId": "11d606e5cc3ec0811aafe0b4f6203159",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cursoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de horarios",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/horarios/{horarioId}/clases": {
            "get": {
                "tags": [
                    "Horarios"
                ],
                "summary": "Listar clases programadas de un horario",
                "description": "GET /api/horarios/{horarioId}/clases\nListar clases programadas de un horario.",
                "operationId": "9203e284843948528744a21fa33e946e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "horarioId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de clases programadas",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/horarios/alumno/curso/{cursoId}": {
            "get": {
                "tags": [
                    "Horarios"
                ],
                "summary": "Listar horarios con estadísticas para la vista del alumno",
                "description": "GET /api/horarios/alumno/curso/{cursoId}\nListar horarios con estadísticas para vista alumno.",
                "operationId": "0d463871d65720c97a9550a97fb3dbf0",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cursoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de horarios para el alumno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/horarios/alumno/{horarioId}/clases": {
            "get": {
                "tags": [
                    "Horarios"
                ],
                "summary": "Listar clases programadas para la vista del alumno",
                "description": "GET /api/horarios/alumno/{horarioId}/clases\nListar clases programadas para vista alumno.",
                "operationId": "2c8e7451861dad2dcf3383347b7c66aa",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "horarioId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de clases programadas para el alumno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/horarios/{horarioId}/exportar-asistencia": {
            "get": {
                "tags": [
                    "Horarios"
                ],
                "summary": "Descargar control de asistencia en formato XLSX",
                "description": "GET /api/horarios/{horarioId}/exportarAsistencia\nDescargar control de asistencia en formato XLSX.",
                "operationId": "091e73ac7d27e36df9fd9abb9be670dd",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "horarioId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Archivo XLSX de control de asistencia",
                        "content": {
                            "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet": {}
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/horarios/{id}": {
            "delete": {
                "tags": [
                    "Horarios"
                ],
                "summary": "Eliminar un horario (soft delete) y sus clases (hard delete)",
                "description": "DELETE /api/horarios/{id}\nSoft delete del horario y hard delete de sus clases.",
                "operationId": "3e713264f10760e2338238f4500b3db9",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Horario eliminado exitosamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "Horario eliminado exitosamente"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/informacion-academica/{idPostulante}": {
            "get": {
                "tags": [
                    "InformacionAcademica"
                ],
                "summary": "Listar información académica por postulante",
                "operationId": "2012607474fc357f612e9d59226be4a9",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "idPostulante",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Información académica del postulante",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/informacion-academica/by-domain": {
            "get": {
                "tags": [
                    "InformacionAcademica"
                ],
                "summary": "Listar información académica por dominio",
                "operationId": "f655fba67e5b1ba245ed4bc018e95001",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Información académica del dominio",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/informacion-academica": {
            "post": {
                "tags": [
                    "InformacionAcademica"
                ],
                "summary": "Crear información académica",
                "operationId": "d4a2212ee3257e075cf1c9b8d200bcc0",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Información académica creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/informacion-academica/{id}": {
            "put": {
                "tags": [
                    "InformacionAcademica"
                ],
                "summary": "Actualizar información académica",
                "operationId": "ea377a4c179360f3d95a4ed82711908b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Información académica actualizada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "InformacionAcademica"
                ],
                "summary": "Eliminar información académica",
                "operationId": "624b6203649c72d3411fab1d22650bfb",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Información académica eliminada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/informacion-academica/{id}/validado": {
            "patch": {
                "tags": [
                    "InformacionAcademica"
                ],
                "summary": "Actualizar estado de validación de información académica",
                "operationId": "b41310888543285db865bf789652f410",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "validado": {
                                        "description": "true para validado, false para no validado",
                                        "type": "boolean",
                                        "example": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Estado de validación actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/informacion-academica/data-create": {
            "get": {
                "tags": [
                    "InformacionAcademica"
                ],
                "summary": "Obtener datos para formulario de creación de información académica",
                "operationId": "865a8ad8bc53e50e8249434b67064ad6",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos para creación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/informacion-academica-candidato/{candidatoId}": {
            "get": {
                "tags": [
                    "InformacionAcademicaCandidato"
                ],
                "summary": "Listar información académica por candidato",
                "operationId": "f0ce03da873f31d131ee215533c4e9fd",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "candidatoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Información académica del candidato",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/informacion-academica-candidato/by-domain": {
            "get": {
                "tags": [
                    "InformacionAcademicaCandidato"
                ],
                "summary": "Listar información académica de candidatos por dominio",
                "operationId": "12a53299b65242e8c40981107b8272ce",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Información académica del dominio",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/informacion-academica-candidato": {
            "post": {
                "tags": [
                    "InformacionAcademicaCandidato"
                ],
                "summary": "Crear información académica de candidato",
                "operationId": "a3f73aee58d2213a482131cf96f296c0",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Información académica creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/informacion-academica-candidato/{id}": {
            "put": {
                "tags": [
                    "InformacionAcademicaCandidato"
                ],
                "summary": "Actualizar información académica de candidato",
                "operationId": "73a2cdf17c153c608f86fda2eaad945e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Información académica actualizada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "InformacionAcademicaCandidato"
                ],
                "summary": "Eliminar información académica de candidato",
                "operationId": "741138ab74ece5e3b9747ed0239bde8d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Información académica eliminada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/informacion-academica-candidato/data-create": {
            "get": {
                "tags": [
                    "InformacionAcademicaCandidato"
                ],
                "summary": "Obtener datos para formulario de creación de información académica de candidato",
                "operationId": "4f401e5af6a909dae1ffb3e5de854d8a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos para creación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/institucion-area/all": {
            "get": {
                "tags": [
                    "InstitucionArea"
                ],
                "summary": "Obtener todas las áreas de institución",
                "operationId": "366ae6b4cf333acda4a7bfdec20d838b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista completa de áreas",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/institucion-area": {
            "get": {
                "tags": [
                    "InstitucionArea"
                ],
                "summary": "Listar áreas de institución con filtros",
                "operationId": "76ded9df11eec0d2e0d72e0f7b7dadb8",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "institucion_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "domain_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "area_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de áreas filtradas",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "InstitucionArea"
                ],
                "summary": "Crear un área de institución",
                "operationId": "e31afe7d7360463176389b0e102bc4d7",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Área creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/institucion-area/{id}": {
            "delete": {
                "tags": [
                    "InstitucionArea"
                ],
                "summary": "Eliminar un área de institución",
                "operationId": "3f02957530d38e4a770a9b81abfbdadb",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Área eliminada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/institucion-area/by-area/{areaId}": {
            "get": {
                "tags": [
                    "InstitucionArea"
                ],
                "summary": "Obtener áreas de institución por área padre",
                "operationId": "1d60f9979723be1369a0f913daefdd06",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "areaId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Áreas del área padre",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones": {
            "get": {
                "tags": [
                    "Instituciones"
                ],
                "summary": "Listar instituciones",
                "operationId": "c5e0bc9d595fde1dcd40a23d77459c9b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domain_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "institucion_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "user_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de instituciones",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Instituciones"
                ],
                "summary": "Crear una institución",
                "operationId": "f3829d86a8474c8c158f3c881ddf7fb1",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Institución creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones/find": {
            "get": {
                "tags": [
                    "Instituciones"
                ],
                "summary": "Obtener una institución por ID",
                "operationId": "7036fe5551da96c804eb3b2ea0031d94",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos de la institución",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones/{id}": {
            "put": {
                "tags": [
                    "Instituciones"
                ],
                "summary": "Actualizar una institución",
                "operationId": "ff7f33f6cc5227404ab24b6d5ddd6472",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Institución actualizada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Instituciones"
                ],
                "summary": "Eliminar una institución",
                "operationId": "d2b7eaa40554a18243e1291944587b50",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Institución eliminada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones/cv": {
            "get": {
                "tags": [
                    "Instituciones"
                ],
                "summary": "Obtener CV de institución",
                "operationId": "87407932c460a8faf59dca97a39a41ca",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "document_number",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domain_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "CV de la institución",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones/dropdown": {
            "get": {
                "tags": [
                    "Instituciones"
                ],
                "summary": "Obtener instituciones para dropdown",
                "operationId": "d06362fc3319033b75184aa03911a5b6",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domain_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista para dropdown",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones/permanencia-dropdown": {
            "get": {
                "tags": [
                    "Instituciones"
                ],
                "summary": "Obtener opciones de permanencia para dropdown",
                "operationId": "03758745d0a827e6b32a808ae4e63b3c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de permanencia para dropdown",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones/continuidad-dropdown": {
            "get": {
                "tags": [
                    "Instituciones"
                ],
                "summary": "Obtener opciones de continuidad para dropdown",
                "operationId": "dadc73d3fbf71c324ab366260c6ec245",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de continuidad para dropdown",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones/by-domain": {
            "get": {
                "tags": [
                    "Instituciones"
                ],
                "summary": "Obtener instituciones por dominio",
                "operationId": "573c379f2dc0a3418996a5a7f9c32e38",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domain_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Instituciones del dominio",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones/massive-upload": {
            "post": {
                "tags": [
                    "Instituciones"
                ],
                "summary": "Carga masiva de instituciones",
                "operationId": "5bd0fb507410818a0838be4a0e5cc1d2",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "domain_id",
                                    "instituciones"
                                ],
                                "properties": {
                                    "domain_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "instituciones": {
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Resultado de la carga masiva",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones-perfil": {
            "get": {
                "tags": [
                    "InstitucionesPerfil"
                ],
                "summary": "Listar perfiles de instituciones",
                "operationId": "3845865118ce622ee891fa596acb6516",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "puesto_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de perfiles",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "InstitucionesPerfil"
                ],
                "summary": "Crear o actualizar un perfil de institución",
                "operationId": "863df3dc3eda2a0d713d5b07a379d44f",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "puesto_id",
                                    "codigo",
                                    "nombre",
                                    "nivel",
                                    "dependencia",
                                    "nivel_perfil",
                                    "sueldo_promedio",
                                    "formacion",
                                    "capacitacion",
                                    "experiencia_especifica",
                                    "experiencia_general",
                                    "modalidad_posicion",
                                    "estado",
                                    "fecha_nombramiento",
                                    "nombre_nombrado"
                                ],
                                "properties": {
                                    "puesto_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "perfil_id": {
                                        "type": "integer",
                                        "example": null,
                                        "nullable": true
                                    },
                                    "codigo": {
                                        "type": "string",
                                        "example": "COD-001"
                                    },
                                    "nombre": {
                                        "type": "string",
                                        "example": "Perfil Administrativo"
                                    },
                                    "nivel": {
                                        "type": "string",
                                        "example": "Alto"
                                    },
                                    "dependencia": {
                                        "type": "string",
                                        "example": "Gerencia"
                                    },
                                    "nivel_perfil": {
                                        "type": "string",
                                        "example": "Profesional"
                                    },
                                    "sueldo_promedio": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 2500
                                    },
                                    "formacion": {
                                        "type": "string",
                                        "example": "Universitaria"
                                    },
                                    "capacitacion": {
                                        "type": "string",
                                        "example": "Cursos de gestión"
                                    },
                                    "experiencia_especifica": {
                                        "type": "string",
                                        "example": "3 años"
                                    },
                                    "experiencia_general": {
                                        "type": "string",
                                        "example": "5 años"
                                    },
                                    "modalidad_posicion": {
                                        "type": "string",
                                        "example": "Nombrado"
                                    },
                                    "estado": {
                                        "type": "string",
                                        "example": "Activo"
                                    },
                                    "fecha_nombramiento": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2023-01-01"
                                    },
                                    "nombre_nombrado": {
                                        "type": "string",
                                        "example": "Juan Pérez"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Perfil actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "201": {
                        "description": "Perfil creado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones-perfil/{id}": {
            "delete": {
                "tags": [
                    "InstitucionesPerfil"
                ],
                "summary": "Eliminar un perfil de institución",
                "operationId": "41531171e31963055c8130ea1df0893b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Perfil eliminado"
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones-puesto": {
            "get": {
                "tags": [
                    "InstitucionesPuesto"
                ],
                "summary": "Listar puestos de institución por área",
                "operationId": "97fef212fea37dfb19ec77565ce73a11",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "area_id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de puestos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "InstitucionesPuesto"
                ],
                "summary": "Crear o actualizar un puesto de institución",
                "operationId": "75f38261f09e5956c56a1719490464ac",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "codigo",
                                    "nombre"
                                ],
                                "properties": {
                                    "puesto_id": {
                                        "type": "integer",
                                        "example": null,
                                        "nullable": true
                                    },
                                    "codigo": {
                                        "type": "string",
                                        "example": "P-001"
                                    },
                                    "nombre": {
                                        "type": "string",
                                        "example": "Analista de sistemas"
                                    },
                                    "telefono": {
                                        "type": "string",
                                        "example": "999888777"
                                    },
                                    "email": {
                                        "type": "string",
                                        "format": "email",
                                        "example": "analista@example.com"
                                    },
                                    "salario_minimo": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 1500
                                    },
                                    "salario_maximo": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 3000
                                    },
                                    "diferencia": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 1500
                                    },
                                    "nivel": {
                                        "type": "string",
                                        "example": "Profesional"
                                    },
                                    "dependencia": {
                                        "type": "string",
                                        "example": "Tecnología"
                                    },
                                    "nivel_perfil": {
                                        "type": "string",
                                        "example": "Senior"
                                    },
                                    "sueldo_promedio": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 2500
                                    },
                                    "formacion": {
                                        "type": "string",
                                        "example": "Ingeniería de sistemas"
                                    },
                                    "capacitacion": {
                                        "type": "string",
                                        "example": "Cursos certificados"
                                    },
                                    "experiencia_especifica": {
                                        "type": "string",
                                        "example": "3 años"
                                    },
                                    "experiencia_general": {
                                        "type": "string",
                                        "example": "5 años"
                                    },
                                    "estado": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "nombre_nombrado": {
                                        "type": "string",
                                        "example": "Juan Pérez"
                                    },
                                    "descripcion_servicio": {
                                        "type": "string",
                                        "example": "Soporte técnico"
                                    },
                                    "orden": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "institucion_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "cv_id": {
                                        "type": "integer",
                                        "example": null,
                                        "nullable": true
                                    },
                                    "modalidad_posicion": {
                                        "type": "integer",
                                        "example": 1,
                                        "nullable": true
                                    },
                                    "continuidad_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "permanencia_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "fecha_nombramiento": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2023-01-01",
                                        "nullable": true
                                    },
                                    "fecha_limite": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2024-12-31",
                                        "nullable": true
                                    },
                                    "dias_restantes": {
                                        "type": "integer",
                                        "example": 365
                                    },
                                    "perfil": {
                                        "type": "string",
                                        "example": "Perfil técnico"
                                    },
                                    "observaciones": {
                                        "type": "string",
                                        "example": "Sin observaciones"
                                    },
                                    "dni": {
                                        "type": "string",
                                        "example": "12345678"
                                    },
                                    "plazo_os": {
                                        "type": "integer",
                                        "example": 6,
                                        "nullable": true
                                    },
                                    "vinculo": {
                                        "type": "string",
                                        "enum": [
                                            "Nombrado",
                                            "Cas",
                                            "Orden de Servicio",
                                            "Reposicion Judicial"
                                        ],
                                        "example": "Nombrado"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Puesto actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "201": {
                        "description": "Puesto creado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones-puesto/by-domain": {
            "get": {
                "tags": [
                    "InstitucionesPuesto"
                ],
                "summary": "Obtener puestos por dominio",
                "operationId": "0708e18a85c92b204ea8a78af984f67c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domain_id",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de puestos del dominio",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones-puesto/{id}": {
            "delete": {
                "tags": [
                    "InstitucionesPuesto"
                ],
                "summary": "Eliminar un puesto de institución",
                "operationId": "146fe451d0236c83178e3a012bbb6248",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Puesto eliminado"
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones-puesto/last-id": {
            "get": {
                "tags": [
                    "InstitucionesPuesto"
                ],
                "summary": "Obtener el último código de puesto",
                "operationId": "4d24fe02f2bcef9e8fb2407f4ab171a4",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Último código de puesto",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones-puesto/control/{postulante_id}": {
            "get": {
                "tags": [
                    "InstitucionesPuesto"
                ],
                "summary": "Obtener puestos de control por postulante",
                "operationId": "e6feaf92cca5c140f6b96bba9f0f072f",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "postulante_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Puestos de control del postulante",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones-puesto/control": {
            "post": {
                "tags": [
                    "InstitucionesPuesto"
                ],
                "summary": "Actualizar estado de postulante en control de puestos",
                "operationId": "b50c055637e31fcaa41acd90a08d0d9d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "id_postulante",
                                    "estado_actual_postulante_id",
                                    "color_id"
                                ],
                                "properties": {
                                    "id_postulante": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "estado_actual_postulante_id": {
                                        "type": "integer",
                                        "example": 2
                                    },
                                    "color_id": {
                                        "type": "integer",
                                        "example": 3
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Postulante actualizado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Postulante actualizado correctamente"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/instituciones-puesto/massive-upload": {
            "post": {
                "tags": [
                    "InstitucionesPuesto"
                ],
                "summary": "Carga masiva de puestos de institución",
                "operationId": "290488b63d95e2936e963fdd59dc53df",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "puestos",
                                    "domain_id"
                                ],
                                "properties": {
                                    "puestos": {
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "domain_id": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Resultado de la carga masiva",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/capacitaciones/{capacitacionId}/integrantes": {
            "get": {
                "tags": [
                    "Integrantes"
                ],
                "summary": "Listar integrantes de una capacitación",
                "operationId": "52e38547e59417c56e4047b58fb1187b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "capacitacionId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Integrantes obtenidos correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Integrantes"
                ],
                "summary": "Crear un integrante en una capacitación",
                "operationId": "e03d1d3a601aaee9a8eb3b96b8b0ca42",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "capacitacionId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre_completo",
                                    "email",
                                    "telefono",
                                    "documento_identidad",
                                    "fecha_inscripcion"
                                ],
                                "properties": {
                                    "nombre_completo": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "email": {
                                        "type": "string",
                                        "format": "email",
                                        "maxLength": 191
                                    },
                                    "telefono": {
                                        "type": "string",
                                        "maxLength": 15
                                    },
                                    "documento_identidad": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "fecha_inscripcion": {
                                        "type": "string",
                                        "format": "date"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Integrante creado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "object"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        },
                                        "errors": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/capacitaciones/{capacitacionId}/integrantes/{id}": {
            "get": {
                "tags": [
                    "Integrantes"
                ],
                "summary": "Obtener un integrante por ID",
                "operationId": "35eb86ef1bee6f4fa9403cea50f59c39",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "capacitacionId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Integrante obtenido correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "object"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Integrantes"
                ],
                "summary": "Actualizar un integrante",
                "operationId": "3b7086dd48dfdf7a7787a4acdae6021f",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "capacitacionId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre_completo",
                                    "email",
                                    "telefono",
                                    "documento_identidad",
                                    "fecha_inscripcion"
                                ],
                                "properties": {
                                    "nombre_completo": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "email": {
                                        "type": "string",
                                        "format": "email",
                                        "maxLength": 191
                                    },
                                    "telefono": {
                                        "type": "string",
                                        "maxLength": 15
                                    },
                                    "documento_identidad": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "fecha_inscripcion": {
                                        "type": "string",
                                        "format": "date"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Integrante actualizado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "object"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        },
                                        "errors": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Integrantes"
                ],
                "summary": "Eliminar un integrante",
                "operationId": "093d90aec934dbe1ee3ea647fe458a25",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "capacitacionId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Integrante eliminado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 0
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "responseCode": {
                                            "type": "integer",
                                            "example": 1
                                        },
                                        "response": {
                                            "type": "null"
                                        },
                                        "msgResultado": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/maestros": {
            "get": {
                "tags": [
                    "Maestros"
                ],
                "summary": "Listar maestros por dominio",
                "operationId": "2494084f75453ea3469355706780ed32",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de maestros"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Maestros"
                ],
                "summary": "Crear un nuevo maestro",
                "operationId": "7eb3cd6bc1fad6bfd9d0e0044e63afbb",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Maestro creado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/maestros/{id}": {
            "get": {
                "tags": [
                    "Maestros"
                ],
                "summary": "Obtener un maestro por ID",
                "operationId": "9bc2d74606631ef2e2abfeea9ffd80b0",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos del maestro"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Maestros"
                ],
                "summary": "Actualizar un maestro",
                "operationId": "5d1b680e741b5ba968ba6bff846e1f0a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Maestro actualizado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Maestros"
                ],
                "summary": "Eliminar un maestro",
                "operationId": "fce6d438e90d29af4280a22fdcb872c8",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Maestro eliminado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/modalidad-puesto": {
            "get": {
                "tags": [
                    "ModalidadPuesto"
                ],
                "summary": "Lista todas las modalidades de puesto",
                "operationId": "facc6c8a8458771334366d147792caf4",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de modalidades retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "ModalidadPuesto"
                ],
                "summary": "Crea una nueva modalidad de puesto",
                "operationId": "5a0ddebb4b31b70d8027d326c1dc7f84",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Datos de la nueva modalidad de puesto",
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Modalidad de puesto creada exitosamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/modalidad-puesto/{id}": {
            "get": {
                "tags": [
                    "ModalidadPuesto"
                ],
                "summary": "Obtiene el detalle de una modalidad de puesto",
                "operationId": "5cd7006693da8d879178ab9735221452",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Modalidad de puesto retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "ModalidadPuesto"
                ],
                "summary": "Actualiza una modalidad de puesto",
                "operationId": "e7824e817cd4427d48425be901f20d93",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Datos actualizados de la modalidad de puesto",
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Modalidad de puesto actualizada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "ModalidadPuesto"
                ],
                "summary": "Elimina una modalidad de puesto",
                "operationId": "6f10de3151d72bc9073049f428de3310",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Modalidad de puesto eliminada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/modalidad-puesto/dropdown": {
            "get": {
                "tags": [
                    "ModalidadPuesto"
                ],
                "summary": "Obtiene las modalidades de puesto en formato dropdown",
                "operationId": "984cee3fc822ddbf243cf66be68f6035",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Opciones de dropdown retornadas correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/modulos-formativos": {
            "get": {
                "tags": [
                    "Mantenimiento - Modulos Formativos"
                ],
                "summary": "Listar módulos formativos",
                "operationId": "6f480c6d0bae23c73266347a1eee62f6",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de módulos formativos"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Mantenimiento - Modulos Formativos"
                ],
                "summary": "Crear un módulo formativo",
                "operationId": "87036945ad61d0c828466947754caa97",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Módulo de Programación"
                                    },
                                    "descripcion": {
                                        "type": "string",
                                        "example": "Introducción a la programación"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Módulo formativo creado"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/modulos-formativos/{id}": {
            "get": {
                "tags": [
                    "Mantenimiento - Modulos Formativos"
                ],
                "summary": "Obtener un módulo formativo por ID",
                "operationId": "c58c8341d09350cee93572b2ff4abe42",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Módulo formativo encontrado"
                    },
                    "404": {
                        "description": "No encontrado"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Mantenimiento - Modulos Formativos"
                ],
                "summary": "Actualizar un módulo formativo",
                "operationId": "80339728325c3acfebe3d86273e9904c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Módulo actualizado"
                                    },
                                    "descripcion": {
                                        "type": "string",
                                        "example": "Descripción actualizada"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Módulo formativo actualizado"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Mantenimiento - Modulos Formativos"
                ],
                "summary": "Eliminar un módulo formativo",
                "operationId": "da75b1374d83eb7cbcdfd16431b6cb03",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Módulo formativo eliminado"
                    },
                    "404": {
                        "description": "No encontrado"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/nivel-cargo": {
            "get": {
                "tags": [
                    "NivelCargo"
                ],
                "summary": "Lista todos los niveles de cargo",
                "operationId": "5e1a6f2dc3a26011fc301cf3067c3632",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de niveles de cargo retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "NivelCargo"
                ],
                "summary": "Crea un nuevo nivel de cargo",
                "operationId": "641ab02bd1fc5b59bde09f43cc07eec1",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Datos del nuevo nivel de cargo",
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Nivel de cargo creado exitosamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/nivel-cargo/{id}": {
            "get": {
                "tags": [
                    "NivelCargo"
                ],
                "summary": "Obtiene el detalle de un nivel de cargo",
                "operationId": "1c492ab042fdfd0192073feaff649ca2",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Nivel de cargo retornado correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "NivelCargo"
                ],
                "summary": "Actualiza un nivel de cargo",
                "operationId": "eeb84e18cd5b1b07f8183fea9dab47a7",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Datos actualizados del nivel de cargo",
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Nivel de cargo actualizado correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "NivelCargo"
                ],
                "summary": "Elimina un nivel de cargo",
                "operationId": "f00effb6777ce9ad5c1b565d50f5e323",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Nivel de cargo eliminado correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/ocupacion-actual": {
            "get": {
                "tags": [
                    "OcupacionActual"
                ],
                "summary": "Lista todas las ocupaciones actuales",
                "operationId": "a2aed07321b6a28fd381b015f1b3346b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de ocupaciones retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "OcupacionActual"
                ],
                "summary": "Crea una nueva ocupación actual",
                "operationId": "b5df3889547e6f9259920a86b51b0504",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Datos de la nueva ocupación actual",
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Ocupación creada exitosamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/ocupacion-actual/{id}": {
            "get": {
                "tags": [
                    "OcupacionActual"
                ],
                "summary": "Obtiene el detalle de una ocupación actual",
                "operationId": "ccf3017386137fef2b454575b3e751a0",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Ocupación retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "OcupacionActual"
                ],
                "summary": "Actualiza una ocupación actual",
                "operationId": "08efe0cd043ba79d7abf5e7f4d97033d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Datos actualizados de la ocupación actual",
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Ocupación actualizada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "OcupacionActual"
                ],
                "summary": "Elimina una ocupación actual",
                "operationId": "a9817352b11e366dbfff9391573db61f",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Ocupación eliminada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/ofertas-empleo": {
            "get": {
                "tags": [
                    "OfertasEmpleo"
                ],
                "summary": "Listar ofertas de empleo",
                "operationId": "a5d6e5c422221520f8a681a34f36e42a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de ofertas",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "OfertasEmpleo"
                ],
                "summary": "Crear una oferta de empleo",
                "operationId": "414ee00b13d0ead82a8180957d815534",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Oferta creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/ofertas-empleo/{id}": {
            "get": {
                "tags": [
                    "OfertasEmpleo"
                ],
                "summary": "Obtener oferta de empleo por ID",
                "operationId": "cfb53b81a23a9ebfc0dea96ee31fed55",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Oferta encontrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "OfertasEmpleo"
                ],
                "summary": "Actualizar una oferta de empleo",
                "operationId": "5816c03c6af76c886a0b2e5c803d89b8",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Oferta actualizada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "OfertasEmpleo"
                ],
                "summary": "Eliminar una oferta de empleo",
                "operationId": "daaf4a344d23c3f7528aa0b9085be812",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Oferta eliminada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Datos inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/pagos": {
            "get": {
                "tags": [
                    "Pagos"
                ],
                "summary": "Listar todos los pagos",
                "operationId": "9366f5b9fcc6e7d4e8b6ae5e851f2fc8",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de pagos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Pagos"
                ],
                "summary": "Crear un nuevo pago",
                "operationId": "916e2a3bd1f85c6800f4b7ca7dd94d8d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string"
                                    },
                                    "monto": {
                                        "type": "number"
                                    },
                                    "fecha_limite": {
                                        "type": "string",
                                        "format": "date"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Pago creado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/pagos/{id}": {
            "put": {
                "tags": [
                    "Pagos"
                ],
                "summary": "Actualizar un pago",
                "operationId": "69d887be223ef282d50bcdbb7d406f2d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string"
                                    },
                                    "monto": {
                                        "type": "number"
                                    },
                                    "fecha_limite": {
                                        "type": "string",
                                        "format": "date"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Pago actualizado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Pagos"
                ],
                "summary": "Eliminar un pago",
                "operationId": "94fdcd8244ad2dee5db7849843bf2376",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Pago eliminado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Pago eliminado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "No encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/pagos/{pagoId}/alumnos": {
            "get": {
                "tags": [
                    "Pagos"
                ],
                "summary": "Obtener alumnos vinculados a un pago",
                "operationId": "3934739dd9b4b312453bb8740a023fc0",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "pagoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de alumnos del pago",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/pagos/alumno/{alumnoId}": {
            "get": {
                "tags": [
                    "Pagos"
                ],
                "summary": "Obtener pagos de un alumno",
                "operationId": "d58cadc51b971f6fefeccb946dfd7a7a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "alumnoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de pagos del alumno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/pagos/assign-alumnos": {
            "post": {
                "tags": [
                    "Pagos"
                ],
                "summary": "Asignar o desvincular alumnos a un pago",
                "operationId": "0849fa1e0982895208d4ca519805bdca",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "pago_id",
                                    "estado",
                                    "alumnos"
                                ],
                                "properties": {
                                    "pago_id": {
                                        "type": "integer"
                                    },
                                    "estado": {
                                        "type": "integer"
                                    },
                                    "alumnos": {
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Vinculaciones actualizadas",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Vinculaciones actualizadas"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/pagos/validar": {
            "post": {
                "tags": [
                    "Pagos"
                ],
                "summary": "Validar el pago de un alumno",
                "operationId": "a0a0b962deee06e9c0f1d7e247547fc3",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "pago_id",
                                    "alumno_id"
                                ],
                                "properties": {
                                    "pago_id": {
                                        "type": "integer"
                                    },
                                    "alumno_id": {
                                        "type": "integer"
                                    },
                                    "estado_id": {
                                        "type": "integer",
                                        "example": 3
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Pago validado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Pago validado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/pagos/{pagoId}/upload-voucher": {
            "post": {
                "tags": [
                    "Pagos"
                ],
                "summary": "Subir voucher de pago de un alumno",
                "operationId": "039ad69c2ef516876cf7901ecfa60d03",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "pagoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "required": [
                                    "voucher_pago",
                                    "alumno_id"
                                ],
                                "properties": {
                                    "voucher_pago": {
                                        "type": "string",
                                        "format": "binary"
                                    },
                                    "alumno_id": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Voucher subido",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Voucher subido"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/pagos/eliminar-voucher": {
            "post": {
                "tags": [
                    "Pagos"
                ],
                "summary": "Eliminar voucher de pago de un alumno",
                "operationId": "6b09c5238d1c7c8de85982f034c1cced",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "pago_id",
                                    "alumno_id"
                                ],
                                "properties": {
                                    "pago_id": {
                                        "type": "integer"
                                    },
                                    "alumno_id": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Voucher eliminado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Voucher eliminado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/parametros": {
            "get": {
                "tags": [
                    "Parametros"
                ],
                "summary": "Listar parámetros por nombre",
                "operationId": "13f6a0bd38610b3893c3aec4c19ba1b1",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "tx_nombre",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de parámetros"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Parametros"
                ],
                "summary": "Crear un nuevo parámetro",
                "operationId": "ddd43ca00945bbf8e29d346e7ac515a1",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "tx_nombre",
                                    "tx_abreviatura",
                                    "tx_item_description",
                                    "domain_id"
                                ],
                                "properties": {
                                    "tx_nombre": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "tx_abreviatura": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "tx_item_description": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "domain_id": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Parámetro creado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/parametros/{id}": {
            "get": {
                "tags": [
                    "Parametros"
                ],
                "summary": "Obtener un parámetro por ID",
                "operationId": "39dc83f941f63b8412cd46074e2e41a8",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos del parámetro"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Parametros"
                ],
                "summary": "Actualizar un parámetro",
                "operationId": "9719d1c64250198ed33d4371077be225",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "tx_nombre",
                                    "tx_abreviatura",
                                    "tx_item_description",
                                    "domain_id"
                                ],
                                "properties": {
                                    "tx_nombre": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "tx_abreviatura": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "tx_item_description": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "domain_id": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Parámetro actualizado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Parametros"
                ],
                "summary": "Eliminar un parámetro",
                "operationId": "bc64408a0a97ce33c52a021e6f64d4cc",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Parámetro eliminado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/parametros/all": {
            "get": {
                "tags": [
                    "Parametros"
                ],
                "summary": "Listar todos los parámetros del dominio",
                "operationId": "c03aeb527b335d5d66a5fc6ad3ec1fb2",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista completa de parámetros"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/parametros/recursive": {
            "get": {
                "tags": [
                    "Parametros"
                ],
                "summary": "Listar parámetros de forma recursiva",
                "operationId": "343d74675bdd53796ad83e53b24eded8",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista recursiva de parámetros"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/parametros/dropdown": {
            "get": {
                "tags": [
                    "Parametros"
                ],
                "summary": "Obtener parámetros en formato dropdown",
                "operationId": "6bdbd80ad7005096dbd97ea6870bc4d6",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de parámetros para dropdown"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/participantes/{domainId}/{cursoId}": {
            "get": {
                "tags": [
                    "Participantes"
                ],
                "summary": "Obtener la lista de participantes de un curso en un dominio",
                "operationId": "fd1086d3e404d974f370d94194b91b24",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domainId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "cursoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de participantes",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/participantes": {
            "post": {
                "tags": [
                    "Participantes"
                ],
                "summary": "Agregar o quitar un participante de un curso (toggle)",
                "operationId": "c4764499e9b1cfae1a3eca5ad0689844",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "domain_id",
                                    "curso_id",
                                    "alumno_id"
                                ],
                                "properties": {
                                    "domain_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "curso_id": {
                                        "type": "integer",
                                        "example": 10
                                    },
                                    "alumno_id": {
                                        "type": "integer",
                                        "example": 5
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Operación realizada exitosamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/participantes/promedio/{cursoId}/{alumnoId}": {
            "get": {
                "tags": [
                    "Participantes"
                ],
                "summary": "Obtener el promedio general de evaluaciones de un alumno en un curso",
                "operationId": "70f6c58ad45d52398845423595c8faca",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cursoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "alumnoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Promedio calculado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "curso_id": {
                                            "type": "integer",
                                            "example": 10
                                        },
                                        "alumno_id": {
                                            "type": "integer",
                                            "example": 5
                                        },
                                        "promedio_general": {
                                            "type": "number",
                                            "format": "float",
                                            "example": 14.5
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/participantes/promedio-curso/{cursoId}": {
            "get": {
                "tags": [
                    "Participantes"
                ],
                "summary": "Obtener el promedio general del curso para todos los alumnos",
                "operationId": "bbac3af14fb571cac8fdad677adb7933",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cursoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Promedio del curso calculado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "promedio_general": {
                                            "type": "number",
                                            "format": "float",
                                            "example": 13.8
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/participantes/update-estado": {
            "post": {
                "tags": [
                    "Participantes"
                ],
                "summary": "Actualizar el estado de un alumno en un curso",
                "operationId": "b1eff6bb4d34ee98ad27ea525aab782e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "domain_id",
                                    "id_alumno",
                                    "curso_id",
                                    "id_estado"
                                ],
                                "properties": {
                                    "domain_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "id_alumno": {
                                        "type": "integer",
                                        "example": 5
                                    },
                                    "curso_id": {
                                        "type": "integer",
                                        "example": 10
                                    },
                                    "id_estado": {
                                        "type": "integer",
                                        "example": 2
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Estado actualizado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/participantes/guardar-recuperacion": {
            "post": {
                "tags": [
                    "Participantes"
                ],
                "summary": "Guardar la nota de recuperación de un alumno",
                "operationId": "053c4ef75680b076c8d520f3258cf0f6",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "curso_alumno_id",
                                    "nota_recuperacion",
                                    "criterio_nota_final",
                                    "sistema_recuperacion",
                                    "promedio_general"
                                ],
                                "properties": {
                                    "curso_alumno_id": {
                                        "type": "integer",
                                        "example": 42
                                    },
                                    "nota_recuperacion": {
                                        "type": "number",
                                        "format": "float",
                                        "maximum": 20,
                                        "minimum": 0,
                                        "example": 12.5
                                    },
                                    "criterio_nota_final": {
                                        "type": "string",
                                        "enum": [
                                            "nota_mas_alta",
                                            "nota_recuperacion"
                                        ],
                                        "example": "nota_mas_alta"
                                    },
                                    "sistema_recuperacion": {
                                        "type": "string",
                                        "enum": [
                                            "10_11_12",
                                            "menor_12"
                                        ],
                                        "example": "10_11_12"
                                    },
                                    "promedio_general": {
                                        "type": "number",
                                        "format": "float",
                                        "maximum": 20,
                                        "minimum": 0,
                                        "example": 10.5
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Nota de recuperación guardada correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "Nota de recuperación guardada correctamente"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/participantes/aplicar-sistema-recuperacion": {
            "post": {
                "tags": [
                    "Participantes"
                ],
                "summary": "Aplicar el sistema de recuperación a todos los alumnos de un curso",
                "operationId": "cab64e47ca9c986adf56088b76fd1fca",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "curso_id",
                                    "domain_id",
                                    "sistema_recuperacion"
                                ],
                                "properties": {
                                    "curso_id": {
                                        "type": "integer",
                                        "example": 10
                                    },
                                    "domain_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "sistema_recuperacion": {
                                        "type": "string",
                                        "enum": [
                                            "10_11_12",
                                            "menor_12"
                                        ],
                                        "example": "menor_12"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Sistema aplicado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": true
                                        },
                                        "message": {
                                            "type": "string",
                                            "example": "Sistema aplicado correctamente"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean",
                                            "example": false
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/password-change": {
            "post": {
                "tags": [
                    "PasswordChange"
                ],
                "summary": "Cambia la contraseña inicial del usuario autenticado",
                "operationId": "6934a9659145f77dab12b79c53eb164d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "current_password",
                                    "new_password",
                                    "new_password_confirmation"
                                ],
                                "properties": {
                                    "current_password": {
                                        "type": "string",
                                        "format": "password",
                                        "example": "OldPass123"
                                    },
                                    "new_password": {
                                        "type": "string",
                                        "format": "password",
                                        "example": "NewPass123"
                                    },
                                    "new_password_confirmation": {
                                        "type": "string",
                                        "format": "password",
                                        "example": "NewPass123"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Contraseña cambiada exitosamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/password-change/status": {
            "get": {
                "tags": [
                    "PasswordChange"
                ],
                "summary": "Verifica el estado del cambio de contraseña del usuario autenticado",
                "operationId": "3bba1d3cbb89b2077ab899695fca1caa",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Estado de contraseña retornado correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/password-reset/verify-token": {
            "post": {
                "tags": [
                    "PasswordReset"
                ],
                "summary": "Verifica la validez de un token de restablecimiento de contraseña",
                "operationId": "2fe3628b894b16d99f438fe2d231f441",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "token"
                                ],
                                "properties": {
                                    "token": {
                                        "type": "string",
                                        "example": "abc123resettoken"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Token válido"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                }
            }
        },
        "/password-reset": {
            "post": {
                "tags": [
                    "PasswordReset"
                ],
                "summary": "Restablece la contraseña usando un token válido",
                "operationId": "83650007053587ffa04aad5d776be8e8",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "token",
                                    "password"
                                ],
                                "properties": {
                                    "token": {
                                        "type": "string",
                                        "example": "abc123resettoken"
                                    },
                                    "password": {
                                        "type": "string",
                                        "format": "password",
                                        "example": "NewPass123"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Contraseña restablecida exitosamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                }
            }
        },
        "/permisos": {
            "get": {
                "tags": [
                    "Permisos"
                ],
                "summary": "Listar permisos por dominio",
                "operationId": "d72a431ca3f8857be4d8588a4efd6e01",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de permisos"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Permisos"
                ],
                "summary": "Crear un nuevo permiso",
                "operationId": "cb5dc081cddc9d62b0a737f78489018b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Permiso creado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/permisos/{id}": {
            "get": {
                "tags": [
                    "Permisos"
                ],
                "summary": "Obtener un permiso por ID",
                "operationId": "4e448e13142db3b104653a6f9996305b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos del permiso"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Permisos"
                ],
                "summary": "Actualizar un permiso",
                "operationId": "ee1ffe0f6b478ebe31061c9c9c0448dc",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Permiso actualizado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Permisos"
                ],
                "summary": "Eliminar un permiso",
                "operationId": "d820e1b0972c2bd46253d9374728e52f",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Permiso eliminado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/preguntas/evaluacion/{evaluacionId}": {
            "get": {
                "tags": [
                    "Pregunta"
                ],
                "summary": "Lista las preguntas de una evaluación",
                "operationId": "d3f3fd6320c0ff7e581819e329c1f32b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "evaluacionId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de preguntas retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/preguntas/{id}": {
            "get": {
                "tags": [
                    "Pregunta"
                ],
                "summary": "Obtiene el detalle de una pregunta",
                "operationId": "2bda9b0d59abbbcd4fef54fd30bba734",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Pregunta retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Pregunta"
                ],
                "summary": "Actualiza una pregunta existente",
                "operationId": "43a5c4c403cb1eea118e482b0adc0510",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Datos actualizados de la pregunta",
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Pregunta actualizada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Pregunta"
                ],
                "summary": "Elimina una pregunta",
                "operationId": "06c488a41a5dc377428f9b83fc3477ff",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Pregunta eliminada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/preguntas": {
            "post": {
                "tags": [
                    "Pregunta"
                ],
                "summary": "Crea una nueva pregunta",
                "operationId": "9504098c08323f1bd14867cacd66aa05",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Datos de la nueva pregunta",
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Pregunta creada exitosamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/pregunta-alumno": {
            "get": {
                "tags": [
                    "PreguntaAlumno"
                ],
                "summary": "Obtiene las preguntas de un alumno en una evaluación",
                "operationId": "989f7643ecd5be58da1914df25127fa0",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "evaluacion_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "alumno_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Preguntas del alumno retornadas correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "PreguntaAlumno"
                ],
                "summary": "Guarda la respuesta de un alumno a una pregunta",
                "operationId": "4f89c5c783c08b7cc0dd0f0997e37d9e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Datos de la respuesta del alumno",
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Respuesta guardada exitosamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/pregunta-alumno/{preguntaId}/alumnos": {
            "get": {
                "tags": [
                    "PreguntaAlumno"
                ],
                "summary": "Obtiene los alumnos que respondieron una pregunta específica",
                "operationId": "0325f83b29ed840317e7990788d9d29d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "preguntaId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de alumnos retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/pregunta-alumno/{id}/estado": {
            "patch": {
                "tags": [
                    "PreguntaAlumno"
                ],
                "summary": "Actualiza el estado de una pregunta de alumno",
                "operationId": "b2a15d47dcf72bcff0462a4728569b21",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "estado_id"
                                ],
                                "properties": {
                                    "estado_id": {
                                        "type": "integer",
                                        "example": 2
                                    },
                                    "calificacion": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 15.5,
                                        "nullable": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Estado actualizado correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/pregunta-alumno/cursos-con-evaluaciones": {
            "get": {
                "tags": [
                    "PreguntaAlumno"
                ],
                "summary": "Obtiene los cursos que tienen evaluaciones con preguntas",
                "operationId": "9228d927db3cc0e027cbb13adbcd4548",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de cursos retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/pregunta-alumno/suma-calificaciones": {
            "get": {
                "tags": [
                    "PreguntaAlumno"
                ],
                "summary": "Obtiene la suma de calificaciones de un alumno en una evaluación",
                "operationId": "624857181179557940367b397671d758",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "evaluacion_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "alumno_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Suma de calificaciones retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/pregunta-alumno/no-corregidas": {
            "get": {
                "tags": [
                    "PreguntaAlumno"
                ],
                "summary": "Obtiene las preguntas de alumnos que aún no han sido corregidas",
                "operationId": "6b19700dc77fae0bd80e518a2990b75c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de preguntas no corregidas retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/profesiones": {
            "get": {
                "tags": [
                    "Profesiones"
                ],
                "summary": "Listar profesiones",
                "operationId": "5c41bbb14f397d5b67f6ab5b05838733",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de profesiones"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Profesiones"
                ],
                "summary": "Crear una nueva profesión",
                "operationId": "30984b08e9f447e528284432d23bdd1b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Profesión creada exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/profesiones/{id}": {
            "get": {
                "tags": [
                    "Profesiones"
                ],
                "summary": "Obtener una profesión por ID",
                "operationId": "8b7a3aadfa0ea5d3717532714f32aeae",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos de la profesión"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Profesiones"
                ],
                "summary": "Actualizar una profesión",
                "operationId": "bf1470e5320571365e4154b9d8b7d14e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Profesión actualizada exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Profesiones"
                ],
                "summary": "Eliminar una profesión",
                "operationId": "ce7d0074c1d48e50bbb5c43274b45c1f",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Profesión eliminada exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/promociones": {
            "get": {
                "tags": [
                    "Promociones"
                ],
                "summary": "Listar promociones",
                "operationId": "5cbf46a9e3bd7874588dcf52f0227a3e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de promociones"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Promociones"
                ],
                "summary": "Crear una nueva promoción",
                "operationId": "a33e620126c779aa1d352f05b0d2a276",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Promoción creada exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/promociones/{id}": {
            "get": {
                "tags": [
                    "Promociones"
                ],
                "summary": "Obtener una promoción por ID",
                "operationId": "c7b251d7f289ac1e2ffa6c804763e5b8",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos de la promoción"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Promociones"
                ],
                "summary": "Actualizar una promoción",
                "operationId": "e6211ca24079edd7f11e8ad95abb59f2",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Promoción actualizada exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Promociones"
                ],
                "summary": "Eliminar una promoción",
                "operationId": "7e5fe5eaaf4f93fa0d2cefd1014a304d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Promoción eliminada exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/proyectos": {
            "get": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Listar todos los proyectos",
                "operationId": "3c10920d74c75c107f6842ca903d2ac3",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Proyectos obtenidos correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Crear un nuevo proyecto",
                "operationId": "4bdde3b09992dfa25a4627b06aefa32a",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "estado",
                                    "nombre",
                                    "domain_id"
                                ],
                                "properties": {
                                    "estado": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "nombre": {
                                        "type": "string",
                                        "maxLength": 191
                                    },
                                    "domain_id": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Proyecto creado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/proyectos/{id}": {
            "get": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Obtener un proyecto por ID",
                "operationId": "2a9ce101f61627660da959af1109972d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Proyecto obtenido correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Actualizar un proyecto",
                "operationId": "d5450e4caf572a023ac431e4fcc42064",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "estado",
                                    "nombre",
                                    "domain_id"
                                ],
                                "properties": {
                                    "estado": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "nombre": {
                                        "type": "string",
                                        "maxLength": 191
                                    },
                                    "domain_id": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Proyecto actualizado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Eliminar un proyecto",
                "operationId": "ce7928a9a2eaf4ddac38e7af50215650",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Proyecto eliminado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/proyectos/{proyectoId}/modulos": {
            "get": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Listar módulos de un proyecto",
                "operationId": "332209b79783506486fc7fb8c52a071c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "proyectoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Módulos obtenidos correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Añadir un módulo a un proyecto",
                "operationId": "d3ff702a54257b02c1180f4c415fc1f8",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "proyectoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "prioridad",
                                    "estado"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "maxLength": 191
                                    },
                                    "prioridad": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "estado": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "grupo": {
                                        "type": "string",
                                        "maxLength": 50,
                                        "nullable": true
                                    },
                                    "responsable": {
                                        "type": "string",
                                        "maxLength": 50,
                                        "nullable": true
                                    },
                                    "descripcion": {
                                        "type": "string",
                                        "nullable": true
                                    },
                                    "tarea_id": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Módulo añadido correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        },
                                        "proyecto": {
                                            "type": "integer"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/proyectos/{proyectoId}/modulos/{moduloId}": {
            "get": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Obtener un módulo de un proyecto",
                "operationId": "d93968254737dbc8ed7a5976980d761e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "proyectoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "moduloId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Módulo obtenido correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Actualizar un módulo de un proyecto",
                "operationId": "af93ae9d621963cb7e17b835e6a535bd",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "proyectoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "moduloId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "maxLength": 191
                                    },
                                    "prioridad": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "estado": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "grupo": {
                                        "type": "string",
                                        "maxLength": 50,
                                        "nullable": true
                                    },
                                    "responsable": {
                                        "type": "string",
                                        "maxLength": 50,
                                        "nullable": true
                                    },
                                    "descripcion": {
                                        "type": "string",
                                        "nullable": true
                                    },
                                    "tarea_id": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Módulo actualizado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Eliminar un módulo de un proyecto",
                "operationId": "aabbaa4205d48255ae0ad3accafd75d7",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "proyectoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "moduloId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Módulo eliminado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/proyectos/{proyectoId}/modulos/{moduloId}/tareas": {
            "get": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Listar tareas de un módulo de proyecto",
                "operationId": "b4413ab74ec79799c2975d0584b0a8fb",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "proyectoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "moduloId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Tareas obtenidas correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Añadir una tarea a un módulo de proyecto",
                "operationId": "3b7938f06929507982fc96ffc007b23f",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "proyectoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "moduloId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "prioridad",
                                    "estado",
                                    "tarea_id"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "maxLength": 191
                                    },
                                    "prioridad": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "estado": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "grupo": {
                                        "type": "string",
                                        "maxLength": 50,
                                        "nullable": true
                                    },
                                    "responsable": {
                                        "type": "string",
                                        "maxLength": 50,
                                        "nullable": true
                                    },
                                    "descripcion": {
                                        "type": "string",
                                        "nullable": true
                                    },
                                    "archivos": {
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    },
                                    "tarea_id": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Tarea añadida correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        },
                                        "modulo": {
                                            "type": "integer"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/proyectos/{proyectoId}/modulos/{moduloId}/tareas/{tareaId}": {
            "get": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Obtener una tarea de un módulo de proyecto",
                "operationId": "f9667dce63e7995f8963c79d5b550f79",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "proyectoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "moduloId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "tareaId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Tarea obtenida correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Actualizar una tarea de un módulo de proyecto",
                "operationId": "843343c3d23d79bc4ccfd1b6264748a7",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "proyectoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "moduloId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "tareaId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "tarea_id"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "maxLength": 191
                                    },
                                    "prioridad": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "estado": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "grupo": {
                                        "type": "string",
                                        "maxLength": 50,
                                        "nullable": true
                                    },
                                    "responsable": {
                                        "type": "string",
                                        "maxLength": 50,
                                        "nullable": true
                                    },
                                    "descripcion": {
                                        "type": "string",
                                        "nullable": true
                                    },
                                    "archivos": {
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    },
                                    "tarea_id": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Tarea actualizada correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Eliminar una tarea de un módulo de proyecto",
                "operationId": "f7c083690a5ebab72c91b841bbb5dadb",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "proyectoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "moduloId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "tareaId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Tarea eliminada correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/proyectos/{proyectoId}/modulos/{moduloId}/tareas/{tareaId}/estado": {
            "patch": {
                "tags": [
                    "Proyectos"
                ],
                "summary": "Actualizar el estado de una tarea de proyecto",
                "operationId": "2c5714beebe23cf1480c6737ee373ef6",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "proyectoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "moduloId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "tareaId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "estado"
                                ],
                                "properties": {
                                    "estado": {
                                        "type": "string",
                                        "enum": [
                                            "PENDIENTE",
                                            "EN PROCESO",
                                            "OBSERVADO",
                                            "REVISIÓN",
                                            "RETRASADO",
                                            "APROBADO"
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Estado actualizado correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "success": {
                                            "type": "boolean"
                                        },
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/referencias-familiares/{idPostulante}": {
            "get": {
                "tags": [
                    "ReferenciasFamiliares"
                ],
                "summary": "Listar referencias familiares de un postulante",
                "operationId": "d552a85736a99e057337feb8fd769fc3",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "idPostulante",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de referencias familiares",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/referencias-familiares": {
            "post": {
                "tags": [
                    "ReferenciasFamiliares"
                ],
                "summary": "Crear una referencia familiar",
                "operationId": "200391aba6818783a76a9958fc9e103f",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Juan Pérez"
                                    },
                                    "parentesco": {
                                        "type": "string",
                                        "example": "Padre"
                                    },
                                    "telefono": {
                                        "type": "string",
                                        "example": "999888777"
                                    },
                                    "id_postulante": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Referencia familiar creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Referencia familiar creada"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/referencias-familiares/{id}": {
            "put": {
                "tags": [
                    "ReferenciasFamiliares"
                ],
                "summary": "Actualizar una referencia familiar",
                "operationId": "72c36a9acf281e601febbd5374a60c37",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "Juan Pérez"
                                    },
                                    "parentesco": {
                                        "type": "string",
                                        "example": "Hermano"
                                    },
                                    "telefono": {
                                        "type": "string",
                                        "example": "999888777"
                                    },
                                    "id_postulante": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Referencia familiar actualizada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Referencia familiar actualizada"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "ReferenciasFamiliares"
                ],
                "summary": "Eliminar una referencia familiar",
                "operationId": "aeeb40a82794fc0bd338b340f6516dd9",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Referencia familiar eliminada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Referencia familiar eliminada"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/referencias-laborales/{idPostulante}": {
            "get": {
                "tags": [
                    "ReferenciasLaborales"
                ],
                "summary": "Listar referencias laborales de un postulante",
                "operationId": "aa15baf21fae336ea81448929ae786fe",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "idPostulante",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Listado de referencias laborales",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/referencias-laborales": {
            "post": {
                "tags": [
                    "ReferenciasLaborales"
                ],
                "summary": "Crear una referencia laboral",
                "operationId": "434a876b8c11870d7443dd37103b73c4",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "María García"
                                    },
                                    "cargo": {
                                        "type": "string",
                                        "example": "Jefe de RRHH"
                                    },
                                    "empresa": {
                                        "type": "string",
                                        "example": "Empresa S.A."
                                    },
                                    "telefono": {
                                        "type": "string",
                                        "example": "999888777"
                                    },
                                    "id_postulante": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Referencia laboral creada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Referencia laboral creada"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/referencias-laborales/{id}": {
            "put": {
                "tags": [
                    "ReferenciasLaborales"
                ],
                "summary": "Actualizar una referencia laboral",
                "operationId": "538f19283457003725f8173151e4b6bb",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "example": "María García"
                                    },
                                    "cargo": {
                                        "type": "string",
                                        "example": "Gerente de RRHH"
                                    },
                                    "empresa": {
                                        "type": "string",
                                        "example": "Empresa S.A."
                                    },
                                    "telefono": {
                                        "type": "string",
                                        "example": "999888777"
                                    },
                                    "id_postulante": {
                                        "type": "integer",
                                        "example": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Referencia laboral actualizada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Referencia laboral actualizada"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "ReferenciasLaborales"
                ],
                "summary": "Eliminar una referencia laboral",
                "operationId": "3a698ec45ba159b15189da67fac6321d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Referencia laboral eliminada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Referencia laboral eliminada"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/reporte-asistencias/{cursoId}": {
            "get": {
                "tags": [
                    "ReporteAsistencias"
                ],
                "summary": "Obtiene el reporte de asistencias de un curso",
                "operationId": "06936849b935c4ebd73177a322cb95c6",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cursoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Reporte de asistencias retornado correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/reporte-asistencias/{cursoId}/exportar": {
            "get": {
                "tags": [
                    "ReporteAsistencias"
                ],
                "summary": "Exporta el reporte de asistencias de un curso en formato Excel",
                "operationId": "960bc3582fb183d02d7bff9a36b1a186",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cursoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Archivo de exportación generado"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/reporte-orden-merito": {
            "get": {
                "tags": [
                    "ReporteOrdenMerito"
                ],
                "summary": "Obtiene el reporte de orden de mérito",
                "operationId": "c64d6dc93ebb3434f7e0a9b533e265de",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domain_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "carrera_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "ciclo_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Reporte de orden de mérito retornado correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/reporte-orden-merito/exportar": {
            "get": {
                "tags": [
                    "ReporteOrdenMerito"
                ],
                "summary": "Exporta el reporte de orden de mérito en formato Excel",
                "operationId": "12bd15636f690c557f299dc0d32f65bf",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domain_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "carrera_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "ciclo_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Archivo Excel generado y descargado"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/reporte-orden-merito/carreras": {
            "get": {
                "tags": [
                    "ReporteOrdenMerito"
                ],
                "summary": "Obtiene la lista de carreras disponibles para el reporte",
                "operationId": "615b24bb2344d709bce2548704f56871",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domain_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de carreras retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/reporte-orden-merito/ciclos": {
            "get": {
                "tags": [
                    "ReporteOrdenMerito"
                ],
                "summary": "Obtiene la lista de ciclos disponibles para el reporte",
                "operationId": "9d2c09ed1973d7698bee5cdd73e6ec70",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "domain_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de ciclos retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/reuniones": {
            "get": {
                "tags": [
                    "Reuniones"
                ],
                "summary": "Listar todas las reuniones",
                "operationId": "86074343c0d29a22cdc3e2d6e41b4ed1",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Reuniones obtenidas correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Reuniones"
                ],
                "summary": "Crear una nueva reunión",
                "operationId": "15e77c5f4eae8faa406aac6e6e5f92f1",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "estado",
                                    "titulo"
                                ],
                                "properties": {
                                    "estado": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "titulo": {
                                        "type": "string",
                                        "maxLength": 191
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Reunión creada correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/reuniones/{id}": {
            "get": {
                "tags": [
                    "Reuniones"
                ],
                "summary": "Obtener una reunión por ID",
                "operationId": "e17d4f998ea4253c2b8acb45cfb72f48",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Reunión obtenida correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Reuniones"
                ],
                "summary": "Actualizar una reunión",
                "operationId": "0f808ef7702e4a6bd6078342c2e2f81e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "estado",
                                    "titulo"
                                ],
                                "properties": {
                                    "estado": {
                                        "type": "string",
                                        "maxLength": 20
                                    },
                                    "titulo": {
                                        "type": "string",
                                        "maxLength": 100
                                    },
                                    "objetivo": {
                                        "type": "string",
                                        "nullable": true
                                    },
                                    "resultado": {
                                        "type": "string",
                                        "nullable": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Reunión actualizada correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/reuniones/{id}/foto": {
            "post": {
                "tags": [
                    "Reuniones"
                ],
                "summary": "Guardar foto de una reunión",
                "operationId": "066f67850487da5813726e6b0ff3075c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "foto"
                                ],
                                "properties": {
                                    "foto": {
                                        "description": "URL o base64 de la foto",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Foto guardada exitosamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "foto": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/roles/{rolId}": {
            "get": {
                "tags": [
                    "Roles"
                ],
                "summary": "Listar roles por dominio",
                "operationId": "cee57897f64691b31137bbecd14fa782",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "rolId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de roles"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/rol/{id}": {
            "get": {
                "tags": [
                    "Roles"
                ],
                "summary": "Obtener un rol por ID",
                "operationId": "f79e81e83fda2c981d72e9f22e7fe42c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos del rol"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/roles": {
            "post": {
                "tags": [
                    "Roles"
                ],
                "summary": "Crear un nuevo rol",
                "operationId": "e623b99db052322369bf25f9ceadab4e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "domain_id": {
                                        "type": "integer",
                                        "nullable": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Rol creado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/roles/{id}": {
            "put": {
                "tags": [
                    "Roles"
                ],
                "summary": "Actualizar un rol",
                "operationId": "1a281e46904e16994db39f3ed5eabdaf",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nombre"
                                ],
                                "properties": {
                                    "nombre": {
                                        "type": "string",
                                        "maxLength": 255
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Rol actualizado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Roles"
                ],
                "summary": "Eliminar un rol",
                "operationId": "b06af4c02e2670a331941fb809615f3c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Rol eliminado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/roles/guardar-permiso": {
            "post": {
                "tags": [
                    "Roles"
                ],
                "summary": "Guardar permisos de un rol",
                "operationId": "4429ca95becdb943f663fb77fb1e91b5",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "id": {
                                        "description": "ID del rol",
                                        "type": "integer"
                                    },
                                    "domain_id": {
                                        "type": "integer"
                                    },
                                    "idPermisos": {
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Permisos registrados exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/roles/{id}/permisos/{domainId}": {
            "get": {
                "tags": [
                    "Roles"
                ],
                "summary": "Obtener permisos de un rol por dominio",
                "operationId": "5b9d0040f958e222e24836f73a18b2c0",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "domainId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Permisos del rol"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/roles/{id}/permisos-admin/{domainId}": {
            "get": {
                "tags": [
                    "Roles"
                ],
                "summary": "Obtener permisos de administrador de un rol",
                "operationId": "2736ca45f696e9126b451a0381cb89de",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "domainId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Permisos admin del rol"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/roles/{id}/permisos-admin-dominio/{domainId}": {
            "get": {
                "tags": [
                    "Roles"
                ],
                "summary": "Obtener permisos de administrador de un rol por dominio",
                "operationId": "cc9fd0ff21b263149f12072ca44b7c15",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    },
                    {
                        "name": "domainId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Permisos admin por dominio del rol"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/roles/dropdown/{rolId}": {
            "get": {
                "tags": [
                    "Roles"
                ],
                "summary": "Obtener roles en formato dropdown",
                "operationId": "b9e42236dac0a2cc502fd749eb76235b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "rolId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de roles para dropdown"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/subida-masiva": {
            "post": {
                "tags": [
                    "SubidaMasiva"
                ],
                "summary": "Procesa una subida masiva de calificaciones",
                "operationId": "e1ab01cec57deb8591e7a6a63715bd82",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "domain_id",
                                    "registros"
                                ],
                                "properties": {
                                    "domain_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "registros": {
                                        "type": "array",
                                        "items": {
                                            "required": [
                                                "dni",
                                                "codigo_curso",
                                                "grupo_evaluacion",
                                                "nombre_evaluacion"
                                            ],
                                            "properties": {
                                                "dni": {
                                                    "type": "string",
                                                    "example": "12345678"
                                                },
                                                "codigo_curso": {
                                                    "type": "string",
                                                    "example": "MAT101"
                                                },
                                                "grupo_evaluacion": {
                                                    "type": "string",
                                                    "example": "Parciales"
                                                },
                                                "nombre_evaluacion": {
                                                    "type": "string",
                                                    "example": "Parcial 1"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Subida procesada exitosamente"
                    },
                    "422": {
                        "description": "Errores de validación en los registros"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/subida-masiva/ejemplo-estructura": {
            "get": {
                "tags": [
                    "SubidaMasiva"
                ],
                "summary": "Obtiene un ejemplo de la estructura esperada para la subida masiva",
                "operationId": "de5bb0b353e229e74d28d4a5d8139004",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Estructura de ejemplo retornada correctamente"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/syllabus-archivo/upload": {
            "post": {
                "tags": [
                    "SyllabusArchivo"
                ],
                "summary": "Sube un archivo de syllabus para un curso",
                "operationId": "6f5bc1cf9026aeab96f167ac618a6b3e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "required": [
                                    "archivo",
                                    "curso_id"
                                ],
                                "properties": {
                                    "archivo": {
                                        "description": "Archivo del syllabus",
                                        "type": "string",
                                        "format": "binary"
                                    },
                                    "curso_id": {
                                        "type": "integer",
                                        "example": 5
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Archivo subido correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/syllabus-archivo/curso/{cursoId}": {
            "get": {
                "tags": [
                    "SyllabusArchivo"
                ],
                "summary": "Lista los archivos de syllabus de un curso",
                "operationId": "af418a9139da6cd12595b8899545a11b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "cursoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de archivos retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/syllabus-archivo/{id}/file": {
            "get": {
                "tags": [
                    "SyllabusArchivo"
                ],
                "summary": "Sirve el contenido de un archivo de syllabus",
                "operationId": "22132a82e92af055501893d9bdff71dd",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Contenido del archivo retornado"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/syllabus-archivo/{id}": {
            "delete": {
                "tags": [
                    "SyllabusArchivo"
                ],
                "summary": "Elimina un archivo de syllabus",
                "operationId": "c44973d75ff2052357f0e4e20b8efd87",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Archivo eliminado correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/tareas": {
            "get": {
                "tags": [
                    "Tareas"
                ],
                "summary": "Listar todas las tareas",
                "operationId": "d1312c56d52c05d6124d195d695b0808",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "name",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "date",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "order_by",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "order_direction",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "asc",
                                "desc"
                            ]
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Tareas obtenidas correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "string",
                                            "example": "success"
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Tareas"
                ],
                "summary": "Crear una nueva tarea",
                "operationId": "2984ab3b95c7a97f277d6bbcfeb42348",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Tarea creada exitosamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "string",
                                            "example": "success"
                                        },
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/tareas/{id}": {
            "get": {
                "tags": [
                    "Tareas"
                ],
                "summary": "Obtener una tarea por ID",
                "operationId": "b3da6bdb4d3da6afbdb2adcbb98c5fd5",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Tarea obtenida correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "string",
                                            "example": "success"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Tareas"
                ],
                "summary": "Actualizar una tarea",
                "operationId": "8600a384fdcee02f876fb3cd1d37ff3c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Tarea actualizada exitosamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "string",
                                            "example": "success"
                                        },
                                        "message": {
                                            "type": "string"
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Errores de validación",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Tareas"
                ],
                "summary": "Eliminar una tarea",
                "operationId": "cf2072f74ed4e82cfd4d32caa5dbd2f9",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Tarea eliminada exitosamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "string",
                                            "example": "success"
                                        },
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/tareas/by-proyecto/{proyectoId}": {
            "get": {
                "tags": [
                    "Tareas"
                ],
                "summary": "Listar tareas por proyecto",
                "operationId": "7467b9c0e197d9b58d6cbb2b32f9f3af",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "proyectoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Tareas obtenidas correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "string",
                                            "example": "success"
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/tareas/by-modulo-proyecto/{proyectoId}": {
            "get": {
                "tags": [
                    "Tareas"
                ],
                "summary": "Listar tareas agrupadas por módulo de proyecto",
                "operationId": "037574c33e2f15eadb1e49093dc73d57",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "proyectoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Tareas obtenidas correctamente",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "string",
                                            "example": "success"
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Error interno del servidor",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/tipo-capacitacion": {
            "get": {
                "tags": [
                    "TipoCapacitacion"
                ],
                "summary": "Listar tipos de capacitación",
                "operationId": "e5e982596688d2cfdff68193c208742c",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de tipos de capacitación"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "TipoCapacitacion"
                ],
                "summary": "Crear un nuevo tipo de capacitación",
                "operationId": "2c63e08b54fb29d2523ac9b8d569b334",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Tipo de capacitación creado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/tipo-capacitacion/{id}": {
            "get": {
                "tags": [
                    "TipoCapacitacion"
                ],
                "summary": "Obtener un tipo de capacitación por ID",
                "operationId": "9f33a59dce576a25c530d73a177e5dfd",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos del tipo de capacitación"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "TipoCapacitacion"
                ],
                "summary": "Actualizar un tipo de capacitación",
                "operationId": "2cdcb1e64e51bc1f93e7f9812a845f5e",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Tipo de capacitación actualizado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "TipoCapacitacion"
                ],
                "summary": "Eliminar un tipo de capacitación",
                "operationId": "4b3763ab0707fef593202f9670e26da2",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Tipo de capacitación eliminado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/ubigeo/departamentos": {
            "get": {
                "tags": [
                    "Ubigeo"
                ],
                "summary": "Listar departamentos",
                "operationId": "b1fd9e507ff613168b1c0c167903f4ea",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de departamentos"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/ubigeo/provincias/{departamentoId}": {
            "get": {
                "tags": [
                    "Ubigeo"
                ],
                "summary": "Listar provincias por departamento",
                "operationId": "310695148d7880835e1b27b9d5abda02",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "departamentoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de provincias"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/ubigeo/distritos/{departamentoId}/{provinciaId}": {
            "get": {
                "tags": [
                    "Ubigeo"
                ],
                "summary": "Listar distritos por departamento y provincia",
                "operationId": "7391399112ed7f1918acae6ded451bd9",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "departamentoId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "provinciaId",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de distritos"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/usuarios": {
            "get": {
                "tags": [
                    "Usuarios"
                ],
                "summary": "Listar usuarios por dominio",
                "operationId": "0521b054c837e10fa93232b1a420ee55",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de usuarios"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Usuarios"
                ],
                "summary": "Crear o actualizar un usuario",
                "operationId": "c84b183a49c2bb0ed821c219a5bdd03b",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "name",
                                    "email",
                                    "dni",
                                    "rol_id",
                                    "domain_id"
                                ],
                                "properties": {
                                    "name": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "email": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "dni": {
                                        "type": "string",
                                        "maxLength": 255
                                    },
                                    "rol_id": {
                                        "type": "integer"
                                    },
                                    "domain_id": {
                                        "type": "integer"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Usuario creado o actualizado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/usuarios/{id}": {
            "get": {
                "tags": [
                    "Usuarios"
                ],
                "summary": "Obtener un usuario por ID",
                "operationId": "2432bfc3b3bfa94e4844767587fd262d",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Datos del usuario"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Usuarios"
                ],
                "summary": "Eliminar un usuario",
                "operationId": "41cbf8f229402bb5d4827ac675737b04",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Usuario eliminado exitosamente"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/usuarios/{id}/entidades": {
            "get": {
                "tags": [
                    "Usuarios"
                ],
                "summary": "Obtener entidades de un usuario",
                "operationId": "11e05d21a10eb7249117376c5d6468d2",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de entidades del usuario"
                    },
                    "422": {
                        "description": "Error de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/vinculo-laboral": {
            "get": {
                "tags": [
                    "VinculoLaboral"
                ],
                "summary": "Lista todos los vínculos laborales",
                "operationId": "027fdd2507937ffab6ac395f7fc82ac9",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de vínculos laborales retornada correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "VinculoLaboral"
                ],
                "summary": "Crea un nuevo vínculo laboral",
                "operationId": "0fc35172eab7e59198e59adc86cdd8ab",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Datos del nuevo vínculo laboral",
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Vínculo laboral creado exitosamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/vinculo-laboral/{id}": {
            "get": {
                "tags": [
                    "VinculoLaboral"
                ],
                "summary": "Obtiene el detalle de un vínculo laboral",
                "operationId": "adbb1986c25f29fab9557a3fb9a32ddd",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Vínculo laboral retornado correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "VinculoLaboral"
                ],
                "summary": "Actualiza un vínculo laboral",
                "operationId": "96dcaac73aa4b9a5906e5252ebb20f29",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "description": "Datos actualizados del vínculo laboral",
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Vínculo laboral actualizado correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "VinculoLaboral"
                ],
                "summary": "Elimina un vínculo laboral",
                "operationId": "0bca12d1d15f4c49d154b8a1d6471757",
                "parameters": [
                    {
                        "name": "domain",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Vínculo laboral eliminado correctamente"
                    },
                    "422": {
                        "description": "Errores de validación"
                    },
                    "500": {
                        "description": "Error interno del servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        }
    },
    "components": {
        "schemas": {
            "SuccessResponse": {
                "properties": {
                    "responseCode": {
                        "type": "integer",
                        "example": 0
                    },
                    "msgResultado": {
                        "type": "string",
                        "example": "Operación exitosa"
                    },
                    "response": {
                        "type": "object"
                    }
                },
                "type": "object"
            },
            "ErrorResponse": {
                "properties": {
                    "responseCode": {
                        "type": "integer",
                        "example": 1
                    },
                    "msgResultado": {
                        "type": "string",
                        "example": "Error al procesar la solicitud"
                    },
                    "response": {
                        "example": null,
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "ValidationError": {
                "properties": {
                    "responseCode": {
                        "type": "integer",
                        "example": 1
                    },
                    "msgResultado": {
                        "type": "string",
                        "example": "Errores de validación"
                    },
                    "response": {
                        "example": null,
                        "nullable": true
                    },
                    "errors": {
                        "type": "object"
                    }
                },
                "type": "object"
            },
            "Alumno": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "nombres": {
                        "type": "string"
                    },
                    "apellidos": {
                        "type": "string"
                    },
                    "dni": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "telefono": {
                        "type": "string",
                        "nullable": true
                    },
                    "domain_id": {
                        "type": "integer"
                    }
                },
                "type": "object"
            },
            "Curso": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "nombre": {
                        "type": "string"
                    },
                    "codigo": {
                        "type": "string"
                    },
                    "carrera_id": {
                        "type": "integer"
                    },
                    "ciclo_id": {
                        "type": "integer"
                    },
                    "docente_id": {
                        "type": "integer",
                        "nullable": true
                    },
                    "estado_id": {
                        "type": "integer"
                    },
                    "domain_id": {
                        "type": "integer"
                    }
                },
                "type": "object"
            },
            "Docente": {
                "properties": {
                    "id": {
                        "type": "integer"
                    },
                    "nombres": {
                        "type": "string"
                    },
                    "apellidos": {
                        "type": "string"
                    },
                    "dni": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "domain_id": {
                        "type": "integer"
                    }
                },
                "type": "object"
            },
            "Paginacion": {
                "properties": {
                    "current_page": {
                        "type": "integer"
                    },
                    "per_page": {
                        "type": "integer"
                    },
                    "total": {
                        "type": "integer"
                    },
                    "last_page": {
                        "type": "integer"
                    }
                },
                "type": "object"
            }
        },
        "parameters": {
            "domain": {
                "name": "domain",
                "in": "path",
                "description": "Tenant (nombre o ID). Se configura una vez en la variable de servidor arriba.",
                "required": true,
                "schema": {
                    "type": "string",
                    "example": "institucional"
                }
            }
        },
        "securitySchemes": {
            "bearerAuth": {
                "type": "http",
                "description": "Token obtenido en POST /login",
                "bearerFormat": "JWT",
                "scheme": "bearer"
            }
        }
    },
    "tags": [
        {
            "name": "AcademicFormation",
            "description": "Operaciones sobre formación académica"
        },
        {
            "name": "Acciones",
            "description": "Gestión de acciones"
        },
        {
            "name": "Alumnos",
            "description": "Gestión de alumnos"
        },
        {
            "name": "Mantenimiento - Anos",
            "description": "Gestión de años"
        },
        {
            "name": "Mantenimiento - Areas",
            "description": "Gestión de áreas"
        },
        {
            "name": "Mantenimiento - Areas de Formacion",
            "description": "Gestión de áreas de formación"
        },
        {
            "name": "AsistenciaCurso",
            "description": "Asistencia de alumnos agrupada por curso"
        },
        {
            "name": "Asistencias",
            "description": "Gestión de asistencias por clase programada"
        },
        {
            "name": "Mantenimiento - Aulas",
            "description": "Gestión de aulas y su disponibilidad"
        },
        {
            "name": "Auth",
            "description": "Autenticación de usuarios"
        },
        {
            "name": "Calendario",
            "description": "Calendario de eventos para alumnos y docentes"
        },
        {
            "name": "Candidato",
            "description": "Operaciones sobre candidatos"
        },
        {
            "name": "Capacitaciones",
            "description": "Gestión de capacitaciones"
        },
        {
            "name": "CapacitacionPostulante",
            "description": "Gestión de capacitaciones del postulante"
        },
        {
            "name": "Carreras",
            "description": "Gestión de carreras académicas"
        },
        {
            "name": "Ciclos",
            "description": "Gestión de ciclos académicos"
        },
        {
            "name": "Ciudades",
            "description": "Gestión de ciudades"
        },
        {
            "name": "Company",
            "description": "Endpoints para la gestión de la empresa/compañía"
        },
        {
            "name": "ConfigGeneral",
            "description": "Endpoints para la gestión de la configuración general"
        },
        {
            "name": "Cursos",
            "description": "Gestión de cursos"
        },
        {
            "name": "CursoAlumno",
            "description": "Inscripción de alumnos en cursos"
        },
        {
            "name": "CursoDocente",
            "description": "Asignación de docentes a cursos"
        },
        {
            "name": "DescargaMasiva",
            "description": "Descarga masiva de calificaciones"
        },
        {
            "name": "DocIdentidad",
            "description": "Gestión de tipos de documento de identidad"
        },
        {
            "name": "Docentes",
            "description": "Gestión de docentes"
        },
        {
            "name": "DocumentoGestion",
            "description": "Gestión de documentos de gestión"
        },
        {
            "name": "Empleador",
            "description": "Operaciones sobre empleadores"
        },
        {
            "name": "Empresa",
            "description": "Operaciones sobre empresas"
        },
        {
            "name": "Mantenimiento - Escalas",
            "description": "Gestión de escalas"
        },
        {
            "name": "Mantenimiento - Estados",
            "description": "Gestión de estados"
        },
        {
            "name": "Mantenimiento - Estado Actual",
            "description": "Gestión de estado actual"
        },
        {
            "name": "Mantenimiento - Estado Avance",
            "description": "Gestión de estados de avance"
        },
        {
            "name": "Mantenimiento - Estado Curso",
            "description": "Gestión de estados de curso"
        },
        {
            "name": "Evaluaciones",
            "description": "Gestión de evaluaciones académicas"
        },
        {
            "name": "EvaluacionesByModalidad",
            "description": "Evaluaciones por modalidad: alumnos y registro de notas"
        },
        {
            "name": "ExperienciaEspecifica",
            "description": "Gestión de experiencia específica del postulante"
        },
        {
            "name": "ExperienciaLaboral",
            "description": "Gestión de experiencia laboral del postulante"
        },
        {
            "name": "Feriados",
            "description": "Gestión de días feriados por dominio"
        },
        {
            "name": "FormularioFinalPostulante",
            "description": "Gestión del formulario final del postulante"
        },
        {
            "name": "Foro",
            "description": "Gestión de foros y mensajes"
        },
        {
            "name": "FrontendPassword",
            "description": "Restablecimiento de contraseña desde el frontend"
        },
        {
            "name": "GradoInstruccion",
            "description": "Gestión de grados de instrucción"
        },
        {
            "name": "GruposDeEvaluaciones",
            "description": "Gestión de grupos de evaluaciones por curso"
        },
        {
            "name": "HorarioSimple",
            "description": "Gestión de horarios simples por curso"
        },
        {
            "name": "Horarios",
            "description": "Gestión de horarios y clases programadas"
        },
        {
            "name": "InformacionAcademica",
            "description": "Operaciones sobre información académica de postulantes"
        },
        {
            "name": "InformacionAcademicaCandidato",
            "description": "Operaciones sobre información académica de candidatos"
        },
        {
            "name": "InstitucionArea",
            "description": "Endpoints para la gestión de áreas de institución"
        },
        {
            "name": "Instituciones",
            "description": "Endpoints para la gestión de instituciones"
        },
        {
            "name": "InstitucionesPerfil",
            "description": "Endpoints para la gestión de perfiles de instituciones"
        },
        {
            "name": "InstitucionesPuesto",
            "description": "Endpoints para la gestión de puestos de instituciones"
        },
        {
            "name": "Integrantes",
            "description": "Gestión de integrantes de capacitaciones"
        },
        {
            "name": "Maestros",
            "description": "Gestión de maestros"
        },
        {
            "name": "ModalidadPuesto",
            "description": "Gestión de modalidades de puesto"
        },
        {
            "name": "Mantenimiento - Modulos Formativos",
            "description": "Gestión de módulos formativos"
        },
        {
            "name": "NivelCargo",
            "description": "Gestión de niveles de cargo"
        },
        {
            "name": "OcupacionActual",
            "description": "Gestión de ocupaciones actuales"
        },
        {
            "name": "OfertasEmpleo",
            "description": "Operaciones sobre ofertas de empleo"
        },
        {
            "name": "Pagos",
            "description": "Gestión de pagos y vouchers de alumnos"
        },
        {
            "name": "Parametros",
            "description": "Gestión de parámetros"
        },
        {
            "name": "Participantes",
            "description": "Gestión de participantes, promedios y recuperación de cursos"
        },
        {
            "name": "PasswordChange",
            "description": "Cambio de contraseña del usuario autenticado"
        },
        {
            "name": "PasswordReset",
            "description": "Restablecimiento de contraseña mediante token"
        },
        {
            "name": "Permisos",
            "description": "Gestión de permisos"
        },
        {
            "name": "Pregunta",
            "description": "Gestión de preguntas de evaluaciones"
        },
        {
            "name": "PreguntaAlumno",
            "description": "Gestión de preguntas y respuestas de alumnos"
        },
        {
            "name": "Profesiones",
            "description": "Gestión de profesiones"
        },
        {
            "name": "Promociones",
            "description": "Gestión de promociones"
        },
        {
            "name": "Proyectos",
            "description": "Gestión de proyectos, módulos y tareas de proyectos"
        },
        {
            "name": "ReferenciasFamiliares",
            "description": "Gestión de referencias familiares del postulante"
        },
        {
            "name": "ReferenciasLaborales",
            "description": "Gestión de referencias laborales del postulante"
        },
        {
            "name": "ReporteAsistencias",
            "description": "Reporte de asistencias por curso"
        },
        {
            "name": "ReporteOrdenMerito",
            "description": "Reporte de orden de mérito"
        },
        {
            "name": "Reuniones",
            "description": "Gestión de reuniones"
        },
        {
            "name": "Roles",
            "description": "Gestión de roles y sus permisos"
        },
        {
            "name": "SubidaMasiva",
            "description": "Carga masiva de calificaciones"
        },
        {
            "name": "SyllabusArchivo",
            "description": "Gestión de archivos del syllabus"
        },
        {
            "name": "Tareas",
            "description": "Gestión de tareas"
        },
        {
            "name": "TipoCapacitacion",
            "description": "Gestión de tipos de capacitación"
        },
        {
            "name": "Ubigeo",
            "description": "Gestión de ubigeo (departamentos, provincias, distritos)"
        },
        {
            "name": "Usuarios",
            "description": "Gestión de usuarios"
        },
        {
            "name": "VinculoLaboral",
            "description": "Gestión de vínculos laborales"
        }
    ]
}