{
    "openapi": "3.0.0",
    "info": {
        "title": "HI API",
        "description": "Humanittare always efficient",
        "version": "1.0.0"
    },
    "paths": {
        "/api/brokers": {
            "get": {
                "tags": [
                    "Brokers"
                ],
                "summary": "Lista todos as Corretoras",
                "operationId": "getAllBrokers",
                "responses": {
                    "200": {
                        "description": "Lista de Corretoras"
                    },
                    "404": {
                        "description": "Nenhuma Corretora encontrada"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Brokers"
                ],
                "summary": "Cria uma nova corretora",
                "operationId": "createBroker",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Broker"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Corretora criada com sucesso"
                    },
                    "400": {
                        "description": "Erro ao criar ao criar a corretora"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/brokers/{uuid}/": {
            "get": {
                "tags": [
                    "Brokers"
                ],
                "summary": "Obtém uma corretora em específico",
                "operationId": "getBrokerByUUID",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Detalhes da corretora"
                    },
                    "404": {
                        "description": "Corretora não encontrada"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Brokers"
                ],
                "summary": "Atualiza uma corretora",
                "operationId": "updateBroker",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Broker"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Corretora Atualizada"
                    },
                    "404": {
                        "description": "Corretora não encontrada"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Brokers"
                ],
                "summary": "Deleta uma corretora",
                "operationId": "deleteBroker",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Produto deletado"
                    },
                    "404": {
                        "description": "Produto não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/contracts/{uuid}/product/{productUuid}/conditions": {
            "get": {
                "tags": [
                    "Contracts"
                ],
                "summary": "Lista todas as condições de um produto em um contrato",
                "operationId": "listContractProductConditions",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid",
                            "example": "c1a2b3c4-d5e6-7890-1234-56789abcdef0"
                        }
                    },
                    {
                        "name": "productUuid",
                        "in": "path",
                        "description": "UUID do produto",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid",
                            "example": "product-uuid-456"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de condições retornada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "uuid": {
                                                "type": "string",
                                                "example": "condition-uuid-123"
                                            },
                                            "product_uuid": {
                                                "type": "string",
                                                "example": "product-uuid-456"
                                            },
                                            "premium_currency": {
                                                "type": "number",
                                                "format": "float",
                                                "example": 100
                                            },
                                            "company_currency_refund": {
                                                "type": "number",
                                                "format": "float",
                                                "example": 80
                                            },
                                            "example_refund_value": {
                                                "type": "number",
                                                "format": "float",
                                                "example": 50
                                            },
                                            "negotiated_particularities": {
                                                "type": "string",
                                                "example": "Sem carência"
                                            },
                                            "additional_coverages": {
                                                "type": "array",
                                                "items": {
                                                    "type": "integer",
                                                    "example": 1
                                                }
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Contrato, produto ou condições não encontradas"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "ContractProductConditions"
                ],
                "summary": "Cria uma nova condição para um produto de contrato",
                "operationId": "createContractProductCondition",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "productUuid",
                        "in": "path",
                        "description": "UUID do produto do contrato",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "premium_currency",
                                    "company_currency_refund"
                                ],
                                "properties": {
                                    "premium_currency": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 100
                                    },
                                    "company_currency_refund": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 50
                                    },
                                    "example_refund_value": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 30
                                    },
                                    "negotiated_particularities": {
                                        "type": "string",
                                        "example": "Negociação especial para o cliente"
                                    },
                                    "additional_coverages": {
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Condição criada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContractProductCondition"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Erro de validação ou relação inválida"
                    },
                    "500": {
                        "description": "Erro interno do servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/contracts/{uuid}/conditions/{conditionUuid}": {
            "put": {
                "tags": [
                    "ContractProductConditions"
                ],
                "summary": "Atualiza uma condição existente do contrato",
                "operationId": "updateContractProductCondition",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "conditionUuid",
                        "in": "path",
                        "description": "UUID da condição",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "premium_currency": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 120
                                    },
                                    "company_currency_refund": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 60
                                    },
                                    "example_refund_value": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 35
                                    },
                                    "negotiated_particularities": {
                                        "type": "string",
                                        "example": "Atualização da negociação"
                                    },
                                    "additional_coverages": {
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Condição atualizada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContractProductCondition"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Condição não encontrada"
                    },
                    "422": {
                        "description": "Erro de validação ou relação inválida"
                    },
                    "500": {
                        "description": "Erro interno do servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "ContractProductConditions"
                ],
                "summary": "Remove uma condição do contrato",
                "operationId": "deleteContractProductCondition",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "conditionUuid",
                        "in": "path",
                        "description": "UUID da condição",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Condição removida com sucesso"
                    },
                    "404": {
                        "description": "Condição não encontrada"
                    },
                    "422": {
                        "description": "Erro de relação inválida"
                    },
                    "500": {
                        "description": "Erro interno do servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/contracts/{uuid}/product/{productUuid}/contributions": {
            "get": {
                "tags": [
                    "Contracts"
                ],
                "summary": "Lista todas as contribuições de um produto em um contrato",
                "operationId": "listContractProductContributions",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid",
                            "example": "c1a2b3c4-d5e6-7890-1234-56789abcdef0"
                        }
                    },
                    {
                        "name": "productUuid",
                        "in": "path",
                        "description": "UUID do produto",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid",
                            "example": "product-uuid-456"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de contribuições retornada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "uuid": {
                                                "type": "string",
                                                "example": "contribution-uuid-123"
                                            },
                                            "product_uuid": {
                                                "type": "string",
                                                "example": "product-uuid-456"
                                            },
                                            "description": {
                                                "type": "string",
                                                "example": "Mensalidade padrão"
                                            },
                                            "type_charge": {
                                                "type": "string",
                                                "example": "fixo"
                                            },
                                            "holder_percentage": {
                                                "type": "number",
                                                "format": "float",
                                                "example": 20
                                            },
                                            "holder_amount": {
                                                "type": "number",
                                                "format": "float",
                                                "example": 100
                                            },
                                            "dependent_percentage": {
                                                "type": "number",
                                                "format": "float",
                                                "example": 10
                                            },
                                            "dependent_amount": {
                                                "type": "number",
                                                "format": "float",
                                                "example": 50
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Contrato ou produto não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "ContractProductContributions"
                ],
                "summary": "Cria uma nova contribuição para um produto de contrato",
                "operationId": "createContractProductContribution",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "productUuid",
                        "in": "path",
                        "description": "UUID do produto do contrato",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "description",
                                    "type_charge"
                                ],
                                "properties": {
                                    "description": {
                                        "type": "string",
                                        "example": "Contribuição mensal para plano"
                                    },
                                    "type_charge": {
                                        "type": "string",
                                        "example": "percentage"
                                    },
                                    "holder_percentage": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 5
                                    },
                                    "holder_amount": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 50
                                    },
                                    "dependent_percentage": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 3
                                    },
                                    "dependent_amount": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 30
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Contribuição criada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContractProductContribution"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Erro de validação"
                    },
                    "500": {
                        "description": "Erro interno do servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/contracts/{uuid}/contributions/{contributionUuid}": {
            "put": {
                "tags": [
                    "ContractProductContributions"
                ],
                "summary": "Atualiza uma contribuição existente do contrato",
                "operationId": "updateContractProductContribution",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "contributionUuid",
                        "in": "path",
                        "description": "UUID da contribuição",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "description": {
                                        "type": "string",
                                        "example": "Contribuição atualizada para plano"
                                    },
                                    "type_charge": {
                                        "type": "string",
                                        "example": "fixed"
                                    },
                                    "holder_percentage": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 7
                                    },
                                    "holder_amount": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 70
                                    },
                                    "dependent_percentage": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 4
                                    },
                                    "dependent_amount": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 40
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Contribuição atualizada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContractProductContribution"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Contribuição não encontrada"
                    },
                    "422": {
                        "description": "Erro de validação"
                    },
                    "500": {
                        "description": "Erro interno do servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "ContractProductContributions"
                ],
                "summary": "Remove uma contribuição do contrato",
                "operationId": "deleteContractProductContribution",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "contributionUuid",
                        "in": "path",
                        "description": "UUID da contribuição",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Contribuição removida com sucesso"
                    },
                    "404": {
                        "description": "Contribuição não encontrada"
                    },
                    "500": {
                        "description": "Erro interno do servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/contracts/{uuid}/product/{productUuid}/copays": {
            "post": {
                "tags": [
                    "ContractProductCopays"
                ],
                "summary": "Cria um novo copay para um produto de contrato",
                "operationId": "createContractProductCopay",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "productUuid",
                        "in": "path",
                        "description": "UUID do produto do contrato",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "description",
                                    "type_charge"
                                ],
                                "properties": {
                                    "description": {
                                        "type": "string",
                                        "example": "Copay para exame de sangue"
                                    },
                                    "percentage": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 10
                                    },
                                    "amount": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 50
                                    },
                                    "limit_value": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 200
                                    },
                                    "type_charge": {
                                        "type": "string",
                                        "example": "fixed"
                                    },
                                    "type_procedure": {
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        },
                                        "example": [
                                            1,
                                            2,
                                            3
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Copay criado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContractProductCopay"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Erro de validação"
                    },
                    "500": {
                        "description": "Erro interno do servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/contracts/{uuid}/copays/{copayUuid}": {
            "put": {
                "tags": [
                    "ContractProductCopays"
                ],
                "summary": "Atualiza um copay existente do contrato",
                "operationId": "updateContractProductCopay",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "copayUuid",
                        "in": "path",
                        "description": "UUID do copay",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "description": {
                                        "type": "string",
                                        "example": "Copay atualizado para exame de sangue"
                                    },
                                    "percentage": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 15
                                    },
                                    "amount": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 60
                                    },
                                    "limit_value": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 250
                                    },
                                    "type_charge": {
                                        "type": "string",
                                        "example": "percentage"
                                    },
                                    "type_procedure": {
                                        "type": "array",
                                        "items": {
                                            "type": "integer"
                                        },
                                        "example": [
                                            1,
                                            4
                                        ]
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Copay atualizado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/ContractProductCopay"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Copay não encontrado"
                    },
                    "422": {
                        "description": "Erro de validação"
                    },
                    "500": {
                        "description": "Erro interno do servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "ContractProductCopays"
                ],
                "summary": "Remove um copay do contrato",
                "operationId": "deleteContractProductCopay",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "copayUuid",
                        "in": "path",
                        "description": "UUID do copay",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Copay removido com sucesso"
                    },
                    "404": {
                        "description": "Copay não encontrado"
                    },
                    "500": {
                        "description": "Erro interno do servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/contracts": {
            "post": {
                "tags": [
                    "Contracts"
                ],
                "summary": "Cria um novo contrato",
                "operationId": "createContract",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/ContractCreateRequest"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Contrato criado com sucesso"
                    },
                    "422": {
                        "description": "Erro de validação (ex: empresa estipulante ausente)"
                    },
                    "500": {
                        "description": "Erro interno ao criar o contrato"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/contracts/{uuid}": {
            "get": {
                "tags": [
                    "Contracts"
                ],
                "summary": "Obtém os detalhes de um contrato",
                "operationId": "getContractByUUID",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Detalhes do contrato retornado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Contract"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Contrato não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Contracts"
                ],
                "summary": "Atualiza os dados principais de um contrato",
                "operationId": "updateContract",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato a ser atualizado",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "product_type_id",
                                    "group_id",
                                    "products",
                                    "companies"
                                ],
                                "properties": {
                                    "product_type_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "group_id": {
                                        "type": "integer",
                                        "example": 2
                                    },
                                    "type_closure": {
                                        "type": "string",
                                        "example": "automatic"
                                    },
                                    "previous_vendor_id": {
                                        "type": "integer",
                                        "example": 4
                                    },
                                    "vendor_id": {
                                        "type": "integer",
                                        "example": 2
                                    },
                                    "policy_number": {
                                        "type": "string",
                                        "example": "POL12345"
                                    },
                                    "contract_number": {
                                        "type": "string",
                                        "example": "CONTRAT123"
                                    },
                                    "effective_start": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2025-01-01"
                                    },
                                    "effective_end": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2026-01-01"
                                    },
                                    "is_active": {
                                        "type": "boolean",
                                        "example": true
                                    },
                                    "assessment_value": {
                                        "type": "number",
                                        "format": "float",
                                        "example": 5000
                                    },
                                    "companies": {
                                        "type": "array",
                                        "items": {
                                            "properties": {
                                                "uuid": {
                                                    "type": "string"
                                                },
                                                "contract_number": {
                                                    "type": "string"
                                                },
                                                "is_stipulator": {
                                                    "type": "boolean"
                                                },
                                                "is_pj": {
                                                    "type": "boolean"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "products": {
                                        "type": "array",
                                        "items": {
                                            "properties": {
                                                "uuid": {
                                                    "type": "string"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "holders": {
                                        "type": "array",
                                        "items": {
                                            "properties": {
                                                "beneficiary": {
                                                    "properties": {
                                                        "uuid": {
                                                            "type": "string"
                                                        },
                                                        "product_uuid": {
                                                            "type": "string"
                                                        },
                                                        "is_holder": {
                                                            "type": "boolean"
                                                        },
                                                        "h_uuid": {
                                                            "type": "string"
                                                        }
                                                    },
                                                    "type": "object"
                                                },
                                                "details": {
                                                    "type": "array",
                                                    "items": {
                                                        "type": "object"
                                                    }
                                                }
                                            },
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Contrato atualizado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Contract"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Contrato não encontrado"
                    },
                    "422": {
                        "description": "Erro de validação"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Contracts"
                ],
                "summary": "Remove (soft delete) um contrato",
                "operationId": "deleteContract",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Contrato deletado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Contrato deletado com sucesso."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Contrato não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/holders/{holder_uuid}/dependents": {
            "get": {
                "tags": [
                    "Dependents"
                ],
                "summary": "Lista os dependentes de um titular",
                "operationId": "getHolderDependents",
                "parameters": [
                    {
                        "name": "holder_uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de dependentes"
                    },
                    "404": {
                        "description": "Titular ou dependentes não encontrados"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Dependents"
                ],
                "summary": "Cria um novo dependente para o titular",
                "operationId": "createDependent",
                "parameters": [
                    {
                        "name": "holder_uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Dependent"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Dependente criado com sucesso"
                    },
                    "422": {
                        "description": "Erro de validação"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/holders/{holder_uuid}/dependents/{uuid}": {
            "get": {
                "tags": [
                    "Dependents"
                ],
                "summary": "Busca um dependente específico",
                "operationId": "getDependentByUuid",
                "parameters": [
                    {
                        "name": "holder_uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Detalhes do dependente"
                    },
                    "404": {
                        "description": "Dependente não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Dependents"
                ],
                "summary": "Atualiza um dependente",
                "operationId": "updateDependent",
                "parameters": [
                    {
                        "name": "holder_uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Dependent"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Dependente atualizado com sucesso"
                    },
                    "404": {
                        "description": "Dependente não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Dependents"
                ],
                "summary": "Remove um dependente",
                "operationId": "deleteDependent",
                "parameters": [
                    {
                        "name": "holder_uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Dependente removido com sucesso"
                    },
                    "404": {
                        "description": "Dependente não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/holders": {
            "get": {
                "tags": [
                    "Holders"
                ],
                "summary": "Lista todos os titulares",
                "operationId": "getAllHolders",
                "responses": {
                    "200": {
                        "description": "Lista de titulares"
                    },
                    "404": {
                        "description": "Nenhum titular encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Holders"
                ],
                "summary": "Cria um novo titular",
                "operationId": "createHolder",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Holder"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Titular criado com sucesso"
                    },
                    "400": {
                        "description": "Erro ao criar titular"
                    },
                    "422": {
                        "description": "Erro de validação"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/holders/{uuid}": {
            "get": {
                "tags": [
                    "Holders"
                ],
                "summary": "Busca um titular específico",
                "operationId": "getHolderByUuid",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Detalhes do titular"
                    },
                    "404": {
                        "description": "Titular não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Holders"
                ],
                "summary": "Atualiza um titular",
                "operationId": "updateHolder",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Holder"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Titular atualizado com sucesso"
                    },
                    "404": {
                        "description": "Titular não encontrado"
                    },
                    "422": {
                        "description": "Erro de validação"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Holders"
                ],
                "summary": "Remove um titular",
                "operationId": "deleteHolder",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Titular removido com sucesso"
                    },
                    "404": {
                        "description": "Titular não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/holders/{uuid}/documents": {
            "post": {
                "tags": [
                    "Holders"
                ],
                "summary": "Carrega documentos de um titular",
                "operationId": "uploadHolderDocuments",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "required": [
                                    "documents"
                                ],
                                "properties": {
                                    "documents[]": {
                                        "description": "Arquivos de documentos",
                                        "type": "array",
                                        "items": {
                                            "type": "string",
                                            "format": "binary"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Documentos enviados com sucesso"
                    },
                    "400": {
                        "description": "Erro ao enviar documentos"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/vendors/{uuid}/products": {
            "get": {
                "tags": [
                    "Products"
                ],
                "summary": "Lista todos os produtos de um fornecedor",
                "operationId": "getAllProducts",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de produtos"
                    },
                    "404": {
                        "description": "Nenhum produto encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Products"
                ],
                "summary": "Cria um novo produto",
                "operationId": "createProduct",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Product"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Produto criado com sucesso"
                    },
                    "400": {
                        "description": "Erro ao criar o produto"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/vendors/{uuid}/products/{product_id}": {
            "get": {
                "tags": [
                    "Products"
                ],
                "summary": "Obtém um produto específico",
                "operationId": "getProductById",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Detalhes do produto"
                    },
                    "404": {
                        "description": "Produto não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Products"
                ],
                "summary": "Atualiza um produto",
                "operationId": "updateProduct",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Product"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Produto atualizado"
                    },
                    "404": {
                        "description": "Produto não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Products"
                ],
                "summary": "Deleta um produto",
                "operationId": "deleteProduct",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "product_id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Produto deletado"
                    },
                    "404": {
                        "description": "Produto não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/vendors/{uuid}/sla": {
            "get": {
                "tags": [
                    "SLA"
                ],
                "summary": "Lista todos os SLAs",
                "operationId": "getAllSla",
                "responses": {
                    "200": {
                        "description": "Lista de SLAs"
                    },
                    "404": {
                        "description": "Nenhum SLA encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "SLA"
                ],
                "summary": "Cria um novo SLA vinculado ao fornecedor",
                "operationId": "createSLA",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/SLA"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "SLA criado com sucesso"
                    },
                    "400": {
                        "description": "Erro ao criar o SLA"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/vendors/{uuid}/sla/{sla_uuid}": {
            "get": {
                "tags": [
                    "SLA"
                ],
                "summary": "Obtém o SLA cadastrado de um produto em específico",
                "operationId": "getSLAByUUID",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sla_uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Detalhes do SLA"
                    },
                    "404": {
                        "description": "SLA não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "SLA"
                ],
                "summary": "Atualiza um SLA",
                "operationId": "updateSLA",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sla_uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/SLA"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "SLA atualizado"
                    },
                    "404": {
                        "description": "SLA não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "SLA"
                ],
                "summary": "Deleta um SLA",
                "operationId": "deleteSLA",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "sla_uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "SLA deletado"
                    },
                    "404": {
                        "description": "SLA não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/acl/groups/list-groups": {
            "get": {
                "tags": [
                    "ACL"
                ],
                "summary": "Listar todos os grupos - Sem permissões",
                "description": "Listar todos os grupos, sem ter a necessidade de ter a permissão do ACL para listagem.",
                "operationId": "02e79ac5e23cc1ba65bdaba111d69c72",
                "responses": {
                    "200": {
                        "description": "Lista de grupos de permissao retornada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "description": "Lista de grupos de permissa",
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "id": {
                                                        "description": "Identificador único da empresa (id)",
                                                        "type": "string"
                                                    },
                                                    "uuid": {
                                                        "description": "Identificador único da empresa (UUID)",
                                                        "type": "string"
                                                    },
                                                    "name": {
                                                        "description": "Nome da permissao",
                                                        "type": "string"
                                                    },
                                                    "is_active": {
                                                        "description": "Status de grupo ativo ou nao",
                                                        "type": "boolean"
                                                    },
                                                    "type": {
                                                        "description": "1 para interno e 2 para externo",
                                                        "type": "string"
                                                    },
                                                    "created_at": {
                                                        "description": "Data de criação da empresa",
                                                        "type": "string",
                                                        "format": "date-time"
                                                    },
                                                    "updated_at": {
                                                        "description": "Data da última atualização",
                                                        "type": "string",
                                                        "format": "date-time"
                                                    },
                                                    "deleted_at": {
                                                        "description": "Data de exclusão lógica, se aplicável",
                                                        "type": "string",
                                                        "format": "date-time",
                                                        "nullable": true
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/auth/authenticate": {
            "post": {
                "tags": [
                    "Auth"
                ],
                "summary": "Autenticar o usuário",
                "description": "Endpoint para autenticar o usuário no sistema usando credenciais.",
                "operationId": "83fa48a293b27523aff7299acd0cf189",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "email": {
                                        "type": "string",
                                        "example": "user@example.com"
                                    },
                                    "password": {
                                        "type": "string",
                                        "example": "senha123"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Usuário autenticado com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "user": {
                                            "description": "Dados do usuário autenticado",
                                            "type": "object"
                                        },
                                        "token": {
                                            "description": "Token de autenticação",
                                            "type": "string"
                                        },
                                        "permissions": {
                                            "description": "Permissões do usuário",
                                            "type": "array",
                                            "items": {
                                                "type": "string"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Credenciais inválidas"
                    },
                    "422": {
                        "description": "Usuário ou empresa vinculada inativos"
                    }
                }
            }
        },
        "/api/auth/logout": {
            "post": {
                "tags": [
                    "Auth"
                ],
                "summary": "Revogar tokens do usuário",
                "description": "Endpoint para revogar todos os tokens ativos do usuário.",
                "operationId": "8cb1c4f4bf2eee8fb318db7d6c0f35d1",
                "responses": {
                    "200": {
                        "description": "Todos os tokens revogados com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Todos os tokens revogados"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/auth/reset-password": {
            "post": {
                "tags": [
                    "Auth"
                ],
                "summary": "Redefinir senha do usuário",
                "description": "Endpoint para redefinir a senha do usuário autenticado.",
                "operationId": "030dad9d9c157fa5e60a3264f7e0de3e",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "password": {
                                        "type": "string",
                                        "example": "novaSenha123"
                                    },
                                    "password_confirmation": {
                                        "type": "string",
                                        "example": "novaSenha123"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Senha redefinida com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Senha redefinida com sucesso"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Não autorizado"
                    },
                    "422": {
                        "description": "Dados de validação inválidos"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/contracts/{uuid}/products/{productUuid}/copays": {
            "get": {
                "tags": [
                    "ContractProductCopays"
                ],
                "summary": "Lista todos os copays de um produto em um contrato",
                "description": "Retorna os copays associados a um produto específico dentro de um contrato, no formato estruturado.",
                "operationId": "listContractProductCopays",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do contrato",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid",
                            "example": "c1a2b3c4-d5e6-7890-1234-56789abcdef0"
                        }
                    },
                    {
                        "name": "productUuid",
                        "in": "path",
                        "description": "UUID do produto",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid",
                            "example": "p1a2b3c4-d5e6-7890-1234-56789abcdef0"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de copays retornada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "uuid": {
                                                "type": "string",
                                                "example": "copay-uuid-123"
                                            },
                                            "product_uuid": {
                                                "type": "string",
                                                "example": "product-uuid-456"
                                            },
                                            "description": {
                                                "type": "string",
                                                "example": "Coparticipação consulta"
                                            },
                                            "percentage": {
                                                "type": "number",
                                                "format": "float",
                                                "example": 20
                                            },
                                            "amount": {
                                                "type": "number",
                                                "format": "float",
                                                "example": 30
                                            },
                                            "limit_value": {
                                                "type": "number",
                                                "format": "float",
                                                "example": 100
                                            },
                                            "type_charge": {
                                                "type": "string",
                                                "example": "fixo"
                                            },
                                            "type_procedure": {
                                                "type": "array",
                                                "items": {
                                                    "type": "integer",
                                                    "example": 1
                                                }
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Contrato ou produto não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/companies/{uuid}/contacts": {
            "get": {
                "tags": [
                    "CompaniesContacts"
                ],
                "summary": "Lista todos os contatos de uma empresa",
                "operationId": "getCompanyContacts",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de contatos"
                    },
                    "404": {
                        "description": "Empresa não encontrada"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "CompaniesContacts"
                ],
                "summary": "Cria um novo contato para uma empresa",
                "operationId": "createCompanyContact",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/CompanyContact"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Contato criado com sucesso"
                    },
                    "404": {
                        "description": "Empresa não encontrada"
                    },
                    "500": {
                        "description": "Erro ao criar contato"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/companies/{uuid}/contacts/{contact_uuid}": {
            "get": {
                "tags": [
                    "CompaniesContacts"
                ],
                "summary": "Obtém os detalhes de um contato específico",
                "operationId": "getCompanyContactByUUID",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "contact_uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Detalhes do contato"
                    },
                    "404": {
                        "description": "Contato não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "CompaniesContacts"
                ],
                "summary": "Atualiza um contato específico",
                "operationId": "updateCompanyContact",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "contact_uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/CompanyContact"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Contato atualizado"
                    },
                    "404": {
                        "description": "Contato não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "CompaniesContacts"
                ],
                "summary": "Deleta um contato específico",
                "operationId": "deleteCompanyContact",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "contact_uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Contato deletado"
                    },
                    "404": {
                        "description": "Contato não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/companies": {
            "get": {
                "tags": [
                    "Companies"
                ],
                "summary": "Lista todas as empresas",
                "operationId": "94433f22d70675f0a6157135f6810039",
                "responses": {
                    "200": {
                        "description": "Lista de empresas retornada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Company"
                                    }
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Companies"
                ],
                "summary": "Cadastra uma nova empresa",
                "operationId": "0d575a5242f0638a8a61df52fbe29da9",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Company"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Empresa cadastrada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Company"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/companies/{uuid}": {
            "get": {
                "tags": [
                    "Companies"
                ],
                "summary": "Exibe os detalhes de uma empresa",
                "operationId": "062bb4ed93b44de488995efa703258b5",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Detalhes da empresa",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Company"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Empresa não encontrada"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Companies"
                ],
                "summary": "Atualiza os dados de uma empresa",
                "operationId": "174aea521f4f2a65f91f4f43b69dab77",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Company"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Empresa atualizada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Company"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Empresa não encontrada"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Companies"
                ],
                "summary": "Remove uma empresa",
                "operationId": "cf856473eb81055726fb951d04681c39",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Empresa removida com sucesso"
                    },
                    "404": {
                        "description": "Empresa não encontrada"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/companies/{uuid}/restore": {
            "post": {
                "tags": [
                    "Companies"
                ],
                "summary": "Restaura uma empresa removida",
                "operationId": "13d6db664bdaa02097d940320a1b92e5",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Empresa restaurada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Company"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Empresa não encontrada"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/companies/{uuid}/documents": {
            "get": {
                "tags": [
                    "Companies"
                ],
                "summary": "Lista os documentos de uma empresa",
                "operationId": "8e511e0719273d8aec5e10b885a5dfaf",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de documentos da empresa",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "company": {
                                            "properties": {
                                                "uuid": {
                                                    "type": "string"
                                                },
                                                "name": {
                                                    "type": "string"
                                                }
                                            },
                                            "type": "object"
                                        },
                                        "documents": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "id": {
                                                        "type": "integer"
                                                    },
                                                    "filename": {
                                                        "type": "string"
                                                    },
                                                    "filepath": {
                                                        "type": "string"
                                                    },
                                                    "mimetype": {
                                                        "type": "string"
                                                    },
                                                    "extension": {
                                                        "type": "string"
                                                    },
                                                    "size": {
                                                        "type": "integer"
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Empresa não encontrada"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Companies"
                ],
                "summary": "Faz o upload de múltiplos documentos para uma empresa e salva no banco",
                "operationId": "1d7055436c2f9c23563d2906d62001da",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "required": [
                                    "documents"
                                ],
                                "properties": {
                                    "documents": {
                                        "description": "Lista de documentos a serem enviados",
                                        "type": "array",
                                        "items": {
                                            "type": "string",
                                            "format": "binary"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Documentos enviados com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "files": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "id": {
                                                        "type": "integer"
                                                    },
                                                    "filename": {
                                                        "type": "string"
                                                    },
                                                    "filepath": {
                                                        "type": "string"
                                                    },
                                                    "mimetype": {
                                                        "type": "string"
                                                    },
                                                    "extension": {
                                                        "type": "string"
                                                    },
                                                    "size": {
                                                        "type": "integer"
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Erro na requisição"
                    },
                    "404": {
                        "description": "Empresa não encontrada"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/companies/{uuid}/documents/{documentUuid}": {
            "delete": {
                "tags": [
                    "Empresas"
                ],
                "summary": "Deleta um documento de uma empresa",
                "description": "Remove o documento do banco de dados e do armazenamento S3, desde que pertença à empresa informada.",
                "operationId": "deleteCompanyDocument",
                "parameters": [
                    {
                        "name": "companyUuid",
                        "in": "path",
                        "description": "UUID da empresa",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "documentUuid",
                        "in": "path",
                        "description": "UUID do documento a ser deletado",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Documento deletado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Documento deletado com sucesso."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Empresa ou documento não encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Documento não encontrado para esta empresa."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/companies/holders-dependents": {
            "post": {
                "tags": [
                    "Companies"
                ],
                "summary": "Obtém titulares e dependentes de uma ou mais empresas",
                "operationId": "10a034b8449f5d594bd8c81364cb0784",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "uuids"
                                ],
                                "properties": {
                                    "uuids": {
                                        "description": "Lista de UUIDs das empresas",
                                        "type": "array",
                                        "items": {
                                            "type": "string",
                                            "format": "uuid"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Lista de titulares e dependentes das empresas",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "company": {
                                                        "properties": {
                                                            "uuid": {
                                                                "type": "string"
                                                            },
                                                            "name": {
                                                                "type": "string"
                                                            },
                                                            "business_name": {
                                                                "type": "string"
                                                            },
                                                            "document": {
                                                                "type": "string"
                                                            },
                                                            "slug": {
                                                                "type": "string"
                                                            }
                                                        },
                                                        "type": "object"
                                                    },
                                                    "holders": {
                                                        "type": "array",
                                                        "items": {
                                                            "properties": {
                                                                "uuid": {
                                                                    "type": "string"
                                                                },
                                                                "name": {
                                                                    "type": "string"
                                                                },
                                                                "document": {
                                                                    "type": "string"
                                                                },
                                                                "role": {
                                                                    "type": "string"
                                                                },
                                                                "cost_center": {
                                                                    "type": "string"
                                                                },
                                                                "status": {
                                                                    "type": "string"
                                                                },
                                                                "admission_date": {
                                                                    "type": "string",
                                                                    "format": "date"
                                                                },
                                                                "created_at": {
                                                                    "type": "string",
                                                                    "format": "date"
                                                                },
                                                                "dependents": {
                                                                    "type": "array",
                                                                    "items": {
                                                                        "properties": {
                                                                            "uuid": {
                                                                                "type": "string"
                                                                            },
                                                                            "name": {
                                                                                "type": "string"
                                                                            },
                                                                            "document": {
                                                                                "type": "string"
                                                                            },
                                                                            "kinship": {
                                                                                "type": "string",
                                                                                "nullable": true
                                                                            },
                                                                            "created_at": {
                                                                                "type": "string",
                                                                                "format": "date"
                                                                            }
                                                                        },
                                                                        "type": "object"
                                                                    }
                                                                }
                                                            },
                                                            "type": "object"
                                                        }
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        },
                                        "errors": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "uuid": {
                                                        "type": "string"
                                                    },
                                                    "name": {
                                                        "type": "string"
                                                    },
                                                    "message": {
                                                        "type": "string"
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Requisição inválida (ex: sem UUIDs fornecidos)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/companies/{uuid}/staff": {
            "get": {
                "tags": [
                    "Companies"
                ],
                "summary": "Exibe os detalhes do staff de uma empresa",
                "operationId": "dadbbb516b8357a20cc77bd64d7137c0",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Detalhes do staff da empresa",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/Staff"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Empresa não encontrada"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Companies"
                ],
                "summary": "Cria ou atualiza o staff de uma empresa",
                "operationId": "f785870f6a39a9d983ba6f288506c8e7",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "account_assistent": {
                                        "type": "boolean",
                                        "example": true
                                    },
                                    "relationship_rc": {
                                        "type": "boolean",
                                        "example": false
                                    },
                                    "nurse": {
                                        "type": "boolean",
                                        "example": true
                                    },
                                    "social_assistent": {
                                        "type": "boolean",
                                        "example": false
                                    },
                                    "medical": {
                                        "type": "boolean",
                                        "example": true
                                    },
                                    "psychologist": {
                                        "type": "boolean",
                                        "example": true
                                    },
                                    "nutritionist": {
                                        "type": "boolean",
                                        "example": false
                                    },
                                    "manager": {
                                        "type": "boolean",
                                        "example": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Staff criado ou atualizado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "$ref": "#/components/schemas/Staff"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Empresa não encontrada"
                    },
                    "422": {
                        "description": "Erro de validação"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/imports/debug/sheets": {
            "post": {
                "tags": [
                    "Imports - Debug"
                ],
                "summary": "List Excel worksheet names (debug) without importing anything",
                "description": "Uploads an XLS/XLSX file and returns the list of worksheet titles found in the workbook. Useful to confirm the exact sheet name (e.g., 'LAYOUT').",
                "operationId": "ac6512f1de39df230af24bd99d94f78a",
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "required": [
                                    "file"
                                ],
                                "properties": {
                                    "file": {
                                        "description": "XLS/XLSX file to inspect",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Sheet names found",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "sheets": {
                                            "type": "array",
                                            "items": {
                                                "type": "string"
                                            },
                                            "example": [
                                                "LAYOUT",
                                                "Plan1",
                                                "Dados"
                                            ]
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation error (missing/invalid file)"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/groups": {
            "get": {
                "tags": [
                    "GroupCustomer"
                ],
                "summary": "Lista todos os Grupos",
                "operationId": "getAllGroups",
                "responses": {
                    "200": {
                        "description": "Lista de Grupos"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "GroupCustomer"
                ],
                "summary": "Cria um novo Grupo",
                "operationId": "createGroup",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GroupCustomer"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Grupo criado com sucesso"
                    },
                    "500": {
                        "description": "Erro ao criar Grupo"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/groups/{uuid}": {
            "get": {
                "tags": [
                    "GroupCustomer"
                ],
                "summary": "Obtém os detalhes de um Grupo",
                "operationId": "getGroupByUUID",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Detalhes do Grupo"
                    },
                    "404": {
                        "description": "Grupo não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "GroupCustomer"
                ],
                "summary": "Atualiza um Grupo",
                "operationId": "updateGroup",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/GroupCustomer"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Grupo atualizado"
                    },
                    "404": {
                        "description": "Grupo não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "GroupCustomer"
                ],
                "summary": "Deleta um Grupo",
                "operationId": "deleteGroup",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Grupo deletado"
                    },
                    "404": {
                        "description": "Grupo não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/groups/{uuid}/activate": {
            "patch": {
                "tags": [
                    "GroupCustomer"
                ],
                "summary": "Ativa um Grupo deletado",
                "operationId": "activateGroup",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Grupo ativado"
                    },
                    "404": {
                        "description": "Grupo não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/customers/groups/{uuid}/companies": {
            "get": {
                "tags": [
                    "GroupCustomer"
                ],
                "summary": "Lista todas as empresas de um Grupo",
                "operationId": "getCompaniesByGroup",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de empresas do grupo"
                    },
                    "404": {
                        "description": "Grupo não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/imports/beneficiaries": {
            "post": {
                "tags": [
                    "Imports"
                ],
                "summary": "Import beneficiaries from LAYOUT sheet (holders + dependents)",
                "operationId": "43aa11dcfc967ee0eefb14e047b5fec2",
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "required": [
                                    "file"
                                ],
                                "properties": {
                                    "file": {
                                        "description": "XLSX with LAYOUT sheet",
                                        "type": "string",
                                        "format": "binary"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Import completed"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/imports/beneficiaries/template": {
            "get": {
                "tags": [
                    "Imports"
                ],
                "summary": "Download LAYOUT template",
                "operationId": "11429d649f1b5b29fc0b7006b47c9beb",
                "responses": {
                    "200": {
                        "description": "XLSX file"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/imports/beneficiaries/preview": {
            "post": {
                "tags": [
                    "Imports"
                ],
                "summary": "Preview the LAYOUT sheet without persisting data",
                "operationId": "df75e73fe883bfda3a7b2bbb9d37436d",
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "required": [
                                    "file"
                                ],
                                "properties": {
                                    "file": {
                                        "description": "XLS/XLSX containing the LAYOUT sheet",
                                        "type": "string",
                                        "format": "binary"
                                    },
                                    "max_rows": {
                                        "description": "Number of sample rows to return",
                                        "type": "integer",
                                        "default": 10,
                                        "maximum": 200,
                                        "minimum": 1
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Preview info",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "sheet": {
                                            "type": "string",
                                            "example": "LAYOUT"
                                        },
                                        "headings": {
                                            "type": "array",
                                            "items": {
                                                "type": "string"
                                            }
                                        },
                                        "total_rows": {
                                            "type": "integer",
                                            "example": 152
                                        },
                                        "sample_rows": {
                                            "type": "array",
                                            "items": {
                                                "type": "object",
                                                "example": {
                                                    "CPF": "12345678909",
                                                    "NOME COMPLETO": "JOHN DOE"
                                                }
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Validation error"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/imports/beneficiaries/simulations": {
            "post": {
                "tags": [
                    "Imports"
                ],
                "summary": "Start a simulation (preview holders + dependents with validation and enrichment)",
                "operationId": "a34dbf1976859bba24d645d2819b0fce",
                "requestBody": {
                    "required": true,
                    "content": {
                        "multipart/form-data": {
                            "schema": {
                                "required": [
                                    "file"
                                ],
                                "properties": {
                                    "file": {
                                        "type": "string",
                                        "format": "binary"
                                    },
                                    "ttl_minutes": {
                                        "description": "Simulation lifetime in minutes",
                                        "type": "integer",
                                        "default": 120
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Simulation created"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/imports/beneficiaries/simulations/{id}": {
            "delete": {
                "tags": [
                    "Imports"
                ],
                "summary": "Delete simulation",
                "operationId": "61d6de84efa7de05295273e47d4ae8b2",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "204": {
                        "description": "Deleted"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/employees": {
            "get": {
                "tags": [
                    "Employees"
                ],
                "summary": "Lista de Funcionários",
                "description": "Este endpoint retorna todos os funcionários cadastrados.",
                "operationId": "97e9294bf625627a540a559b0b6001a9",
                "responses": {
                    "200": {
                        "description": "Lista de funcionários recuperada com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "uuid": {
                                                "type": "string",
                                                "example": "123e4567-e89b-12d3-a456-426614174000"
                                            },
                                            "name": {
                                                "type": "string",
                                                "example": "José Silva"
                                            },
                                            "email": {
                                                "type": "string",
                                                "example": "jose.silva@mail.com"
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "204": {
                        "description": "Nenhum funcionário encontrado."
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Employees"
                ],
                "summary": "Criar Funcionário",
                "description": "Este endpoint permite a criação de um novo funcionário.",
                "operationId": "1df5c441168e23713351b0b905bcf1eb",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "i_company_id": {
                                        "type": "integer",
                                        "example": 2
                                    },
                                    "name": {
                                        "type": "string",
                                        "example": "TESTEANDO"
                                    },
                                    "email": {
                                        "type": "string",
                                        "example": "testeada424s@mail.com"
                                    },
                                    "enrollment": {
                                        "type": "string",
                                        "example": "1234123411"
                                    },
                                    "document": {
                                        "type": "string",
                                        "example": "42176327896"
                                    },
                                    "rg": {
                                        "type": "string",
                                        "example": "3612341234"
                                    },
                                    "issue_rg_org": {
                                        "type": "string",
                                        "example": "SSP"
                                    },
                                    "issue_rg_date": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2021-05-10"
                                    },
                                    "birth_date": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "1995-12-05"
                                    },
                                    "zip_code": {
                                        "type": "string",
                                        "example": "03365-000"
                                    },
                                    "address": {
                                        "type": "string",
                                        "example": "RUA OURICURI"
                                    },
                                    "number": {
                                        "type": "string",
                                        "example": "65"
                                    },
                                    "complement": {
                                        "type": "string",
                                        "example": "COMPLEMENTO ENDEREÇO É OPCIONAL"
                                    },
                                    "neighborhood": {
                                        "type": "string",
                                        "example": "VILA FORMOSA"
                                    },
                                    "city": {
                                        "type": "string",
                                        "example": "SÃO PAULO"
                                    },
                                    "state": {
                                        "type": "string",
                                        "example": "SSP"
                                    },
                                    "group_acl_id": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "initial_wage": {
                                        "type": "string",
                                        "example": "25544.44"
                                    },
                                    "actual_wage": {
                                        "type": "string",
                                        "example": "255556"
                                    },
                                    "regime": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "health_plan": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "dental_plan": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "life_insurance": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "santander_bank_account": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "status": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "bank": {
                                        "type": "string",
                                        "example": "077"
                                    },
                                    "bank_agency": {
                                        "type": "string",
                                        "example": "3750"
                                    },
                                    "bank_account": {
                                        "type": "string",
                                        "example": "487929-5"
                                    },
                                    "account_type": {
                                        "type": "string",
                                        "example": "1"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Funcionário adicionado à equipe com sucesso."
                    },
                    "500": {
                        "description": "Erro ao criar o funcionário."
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/employees/{uuid}": {
            "get": {
                "tags": [
                    "Employees"
                ],
                "summary": "Buscar Funcionário",
                "description": "Este endpoint retorna um funcionário específico pelo UUID.",
                "operationId": "8a42199e822a18904d9649a464e6913d",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do funcionário a ser consultado.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "example": "123e4567-e89b-12d3-a456-426614174000"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Funcionário encontrado.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "uuid": {
                                            "type": "string",
                                            "example": "123e4567-e89b-12d3-a456-426614174000"
                                        },
                                        "name": {
                                            "type": "string",
                                            "example": "TESTEANDO"
                                        },
                                        "email": {
                                            "type": "string",
                                            "example": "testeada424s@mail.com"
                                        },
                                        "enrollment": {
                                            "type": "string",
                                            "example": "1234123411"
                                        },
                                        "document": {
                                            "type": "string",
                                            "example": "42176327896"
                                        },
                                        "rg": {
                                            "type": "string",
                                            "example": "3612341234"
                                        },
                                        "issue_rg_date": {
                                            "type": "string",
                                            "format": "date",
                                            "example": "2021-05-10"
                                        },
                                        "birth_date": {
                                            "type": "string",
                                            "format": "date",
                                            "example": "1995-12-05"
                                        },
                                        "zip_code": {
                                            "type": "string",
                                            "example": "03365-000"
                                        },
                                        "address": {
                                            "type": "string",
                                            "example": "RUA OURICURI"
                                        },
                                        "number": {
                                            "type": "string",
                                            "example": "65"
                                        },
                                        "complement": {
                                            "type": "string",
                                            "example": "COMPLEMENTO ENDEREÇO É OPCIONAL"
                                        },
                                        "neighborhood": {
                                            "type": "string",
                                            "example": "VILA FORMOSA"
                                        },
                                        "city": {
                                            "type": "string",
                                            "example": "SÃO PAULO"
                                        },
                                        "state": {
                                            "type": "string",
                                            "example": "SSP"
                                        },
                                        "issue_rg_org": {
                                            "type": "string",
                                            "example": "SSP"
                                        },
                                        "group_acl_id": {
                                            "type": "string",
                                            "example": "1"
                                        },
                                        "initial_wage": {
                                            "type": "string",
                                            "example": "25544.44"
                                        },
                                        "actual_wage": {
                                            "type": "string",
                                            "example": "255556"
                                        },
                                        "regime": {
                                            "type": "string",
                                            "example": "1"
                                        },
                                        "health_plan": {
                                            "type": "string",
                                            "example": "1"
                                        },
                                        "dental_plan": {
                                            "type": "string",
                                            "example": "1"
                                        },
                                        "life_insurance": {
                                            "type": "string",
                                            "example": "1"
                                        },
                                        "santander_bank_account": {
                                            "type": "string",
                                            "example": "1"
                                        },
                                        "status": {
                                            "type": "string",
                                            "example": "1"
                                        },
                                        "bank": {
                                            "type": "string",
                                            "example": "077"
                                        },
                                        "bank_agency": {
                                            "type": "string",
                                            "example": "3750"
                                        },
                                        "bank_account": {
                                            "type": "string",
                                            "example": "487929-5"
                                        },
                                        "account_type": {
                                            "type": "string",
                                            "example": "1"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Funcionário não encontrado."
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Employees"
                ],
                "summary": "Atualizar Funcionário",
                "description": "Este endpoint permite atualizar os dados de um funcionário.",
                "operationId": "53cc32290d171ce7eb6684a0b3935a76",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do funcionário a ser atualizado.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "example": "123e4567-e89b-12d3-a456-426614174000"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "i_company_id": {
                                        "type": "integer",
                                        "example": 2
                                    },
                                    "name": {
                                        "type": "string",
                                        "example": "TESTEANDO"
                                    },
                                    "email": {
                                        "type": "string",
                                        "example": "testeada424s@mail.com"
                                    },
                                    "enrollment": {
                                        "type": "string",
                                        "example": "1234123411"
                                    },
                                    "document": {
                                        "type": "string",
                                        "example": "42176327896"
                                    },
                                    "rg": {
                                        "type": "string",
                                        "example": "3612341234"
                                    },
                                    "issue_rg_date": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2021-05-10"
                                    },
                                    "issue_rg_org": {
                                        "type": "string",
                                        "example": "SSP"
                                    },
                                    "group_acl_id": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "birth_date": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "1995-12-05"
                                    },
                                    "zip_code": {
                                        "type": "string",
                                        "example": "03365-000"
                                    },
                                    "address": {
                                        "type": "string",
                                        "example": "RUA OURICURI"
                                    },
                                    "number": {
                                        "type": "string",
                                        "example": "65"
                                    },
                                    "complement": {
                                        "type": "string",
                                        "example": "COMPLEMENTO ENDEREÇO É OPCIONAL"
                                    },
                                    "neighborhood": {
                                        "type": "string",
                                        "example": "VILA FORMOSA"
                                    },
                                    "city": {
                                        "type": "string",
                                        "example": "SÃO PAULO"
                                    },
                                    "state": {
                                        "type": "string",
                                        "example": "SSP"
                                    },
                                    "initial_wage": {
                                        "type": "string",
                                        "example": "25544.44"
                                    },
                                    "actual_wage": {
                                        "type": "string",
                                        "example": "255556"
                                    },
                                    "regime": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "health_plan": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "dental_plan": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "life_insurance": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "santander_bank_account": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "status": {
                                        "type": "string",
                                        "example": "1"
                                    },
                                    "bank": {
                                        "type": "string",
                                        "example": "077"
                                    },
                                    "bank_agency": {
                                        "type": "string",
                                        "example": "3750"
                                    },
                                    "bank_account": {
                                        "type": "string",
                                        "example": "487929-5"
                                    },
                                    "account_type": {
                                        "type": "string",
                                        "example": "1"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Funcionário atualizado com sucesso."
                    },
                    "404": {
                        "description": "Funcionário não encontrado."
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Employees"
                ],
                "summary": "Deletar Funcionário",
                "description": "Este endpoint permite deletar um funcionário.",
                "operationId": "ee06e29d009ed11a0328c6c1b694aadc",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do funcionário a ser deletado.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "example": "123e4567-e89b-12d3-a456-426614174000"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Funcionário deletado com sucesso."
                    },
                    "404": {
                        "description": "Funcionário não encontrado."
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "patch": {
                "tags": [
                    "Employees"
                ],
                "summary": "Atualizar parcialmente Funcionário",
                "description": "Este endpoint permite atualizar parcialmente os dados de um funcionário.",
                "operationId": "39d9808747f12d98327be816f7ad9449",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do funcionário a ser atualizado.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "example": "123e4567-e89b-12d3-a456-426614174000"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "type": "string",
                                        "example": "Novo Nome"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Funcionário atualizado parcialmente com sucesso."
                    },
                    "404": {
                        "description": "Funcionário não encontrado."
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/employees/{uuid}/activate": {
            "patch": {
                "tags": [
                    "Employees"
                ],
                "summary": "Ativar Funcionário",
                "description": "Este endpoint permite ativar um funcionário.",
                "operationId": "047af568e8e15c4af826609ab859b020",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do funcionário a ser ativado.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "example": "123e4567-e89b-12d3-a456-426614174000"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Funcionário ativado com sucesso."
                    },
                    "404": {
                        "description": "Funcionário não encontrado."
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/internal-companies/": {
            "get": {
                "tags": [
                    "Internal Companies"
                ],
                "summary": "Listar Empresas Internas",
                "description": "Este endpoint retorna uma lista de todas as empresas internas cadastradas no sistema de SaaS para o HI",
                "operationId": "cda3c267854bc816474698c026c309d8",
                "responses": {
                    "200": {
                        "description": "Lista de empresas internas retornada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "description": "Lista de empresas internas",
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "uuid": {
                                                        "description": "Identificador único da empresa (UUID)",
                                                        "type": "string"
                                                    },
                                                    "company_name": {
                                                        "description": "Nome Fantasia da Empresa",
                                                        "type": "string"
                                                    },
                                                    "business_name": {
                                                        "description": "Nome Razão Social da Empresa",
                                                        "type": "string"
                                                    },
                                                    "document": {
                                                        "description": "CNPJ da Empresa",
                                                        "type": "string"
                                                    },
                                                    "susep_number": {
                                                        "description": "Número da SUSEP",
                                                        "type": "string"
                                                    },
                                                    "email": {
                                                        "description": "Email da empresa",
                                                        "type": "string"
                                                    },
                                                    "phone": {
                                                        "description": "Telefone da empresa",
                                                        "type": "string"
                                                    },
                                                    "zip_code": {
                                                        "description": "CEP da Empresa",
                                                        "type": "string"
                                                    },
                                                    "address": {
                                                        "description": "Endereço da Empresa",
                                                        "type": "string"
                                                    },
                                                    "number": {
                                                        "description": "Número do Endereço",
                                                        "type": "string"
                                                    },
                                                    "complement": {
                                                        "description": "Complemento (opcional)",
                                                        "type": "string",
                                                        "nullable": true
                                                    },
                                                    "neighborhood": {
                                                        "description": "Bairro",
                                                        "type": "string"
                                                    },
                                                    "city": {
                                                        "description": "Cidade",
                                                        "type": "string"
                                                    },
                                                    "state": {
                                                        "description": "Estado",
                                                        "type": "string"
                                                    },
                                                    "csll": {
                                                        "description": "Valor da CSLL",
                                                        "type": "string"
                                                    },
                                                    "irpf": {
                                                        "description": "Valor do IRPF",
                                                        "type": "string"
                                                    },
                                                    "iss": {
                                                        "description": "Valor do ISS",
                                                        "type": "string"
                                                    },
                                                    "is_active": {
                                                        "description": "Status de Ativação da Empresa",
                                                        "type": "boolean"
                                                    },
                                                    "created_at": {
                                                        "description": "Data de criação da empresa",
                                                        "type": "string",
                                                        "format": "date-time"
                                                    },
                                                    "updated_at": {
                                                        "description": "Data da última atualização",
                                                        "type": "string",
                                                        "format": "date-time"
                                                    },
                                                    "deleted_at": {
                                                        "description": "Data de exclusão lógica, se aplicável",
                                                        "type": "string",
                                                        "format": "date-time",
                                                        "nullable": true
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "419": {
                        "description": "Login sem permissão para acessar módulo ou rota",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Login sem permissão para acessar módulo ou rota",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/internal-companies/create": {
            "post": {
                "tags": [
                    "Internal Companies"
                ],
                "summary": "Cadastrar Empresa Interna",
                "description": "Este endpoint cria uma nova empresa no sistema de SaaS para o HI",
                "operationId": "515f8393d66ba12702e1e1b76fa304c0",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "company_name",
                                    "business_name",
                                    "document",
                                    "susep_number"
                                ],
                                "properties": {
                                    "company_name": {
                                        "description": "Nome Fantasia da Empresa",
                                        "type": "string"
                                    },
                                    "business_name": {
                                        "description": "Nome Razão Social da Empresa",
                                        "type": "string"
                                    },
                                    "document": {
                                        "description": "CNPJ da Empresa",
                                        "type": "string"
                                    },
                                    "susep_number": {
                                        "description": "Número da SUSEP",
                                        "type": "string"
                                    },
                                    "phone": {
                                        "description": "Telefone da empresa",
                                        "type": "string"
                                    },
                                    "email": {
                                        "description": "Email da empresa",
                                        "type": "string"
                                    },
                                    "zip_code": {
                                        "description": "Cep da Empresa",
                                        "type": "string"
                                    },
                                    "address": {
                                        "description": "Endereço",
                                        "type": "string"
                                    },
                                    "number": {
                                        "description": "Número do endereço",
                                        "type": "string"
                                    },
                                    "complement": {
                                        "description": "Complemento (opcional)",
                                        "type": "string",
                                        "nullable": true
                                    },
                                    "neighborhood": {
                                        "description": "Bairro",
                                        "type": "string"
                                    },
                                    "city": {
                                        "description": "Cidade",
                                        "type": "string"
                                    },
                                    "state": {
                                        "description": "Estado (EX: SP)",
                                        "type": "string"
                                    },
                                    "csll": {
                                        "description": "Valor da CSLL",
                                        "type": "string"
                                    },
                                    "irpf": {
                                        "description": "Valor do IRPF",
                                        "type": "string"
                                    },
                                    "iss": {
                                        "description": "Valor do ISS",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Empresa criada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Empresa criada com sucesso",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Dados inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Dados inválidos",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "419": {
                        "description": "Login sem permissão para acessar módulo ou rota",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Login sem permissão para acessar módulo ou rota",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/internal-companies/{uuid}": {
            "get": {
                "tags": [
                    "Internal Companies"
                ],
                "summary": "Pesquisar uma Empresa Interna",
                "description": "Este endpoint pesquisa uma empresa interna no sistema de SaaS para o HI",
                "operationId": "03197df6a4daad452f8b29bcd4b870ad",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID da empresa",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "uuid"
                                ],
                                "properties": {
                                    "uuid": {
                                        "description": "Identificador único da empresa (UUID)",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Empresa encontrada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "description": "Detalhes da empresa",
                                            "type": "object",
                                            "example": {
                                                "uuid": "123e4567-e89b-12d3-a456-426614174000",
                                                "company_name": "Empresa Exemplo",
                                                "business_name": "Razão Social Exemplo",
                                                "document": "12.345.678/0001-90",
                                                "susep_number": "12345",
                                                "phone": "(11) 95355-8283",
                                                "email": "exemplo@exemple.com.br",
                                                "zip_code": "12345-678",
                                                "address": "Rua Exemplo",
                                                "number": "123",
                                                "complement": "Apto 1",
                                                "neighborhood": "Centro",
                                                "city": "Campinas",
                                                "state": "SP",
                                                "csll": "10",
                                                "irpf": "20",
                                                "iss": "10",
                                                "is_active": "1",
                                                "created_at": "2025-01-22 15:32:51",
                                                "updated_at": "2025-01-22 15:32:51",
                                                "deleted_at": null
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Empresa não encontrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "description": "Mensagem de erro",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "419": {
                        "description": "Login sem permissão para acessar módulo ou rota",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Login sem permissão para acessar módulo ou rota",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Internal Companies"
                ],
                "summary": "Atualizar Empresa Interna",
                "description": "Este endpoint Atualiza uma empresa no sistema de SaaS para o HI",
                "operationId": "781e10e042ab5edac3a28010e3426116",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID da empresa",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "company_name",
                                    "business_name",
                                    "document",
                                    "susep_number"
                                ],
                                "properties": {
                                    "company_name": {
                                        "description": "Nome Fantasia da Empresa",
                                        "type": "string"
                                    },
                                    "business_name": {
                                        "description": "Nome Razão Social da Empresa",
                                        "type": "string"
                                    },
                                    "document": {
                                        "description": "CNPJ da Empresa",
                                        "type": "string"
                                    },
                                    "susep_number": {
                                        "description": "Número da SUSEP",
                                        "type": "string"
                                    },
                                    "phone": {
                                        "description": "Telefone da empresa",
                                        "type": "string"
                                    },
                                    "email": {
                                        "description": "Email da empresa",
                                        "type": "string"
                                    },
                                    "zip_code": {
                                        "description": "CEP da empresa",
                                        "type": "string"
                                    },
                                    "address": {
                                        "description": "Endereço",
                                        "type": "string"
                                    },
                                    "number": {
                                        "description": "Número do endereço",
                                        "type": "string"
                                    },
                                    "complement": {
                                        "description": "Complemento (opcional)",
                                        "type": "string",
                                        "nullable": true
                                    },
                                    "neighborhood": {
                                        "description": "Bairro",
                                        "type": "string"
                                    },
                                    "city": {
                                        "description": "Cidade",
                                        "type": "string"
                                    },
                                    "state": {
                                        "description": "Estado (EX: SP)",
                                        "type": "string"
                                    },
                                    "csll": {
                                        "description": "Valor da CSLL",
                                        "type": "string"
                                    },
                                    "irpf": {
                                        "description": "Valor do IRPF",
                                        "type": "string"
                                    },
                                    "iss": {
                                        "description": "Valor do ISS",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Empresa Atualizada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Empresa criada com sucesso",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Dados inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Dados inválidos",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Empresa não encontrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Empresa não encontrada",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "419": {
                        "description": "Login sem permissão para acessar módulo ou rota",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Login sem permissão para acessar módulo ou rota",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Internal Companies"
                ],
                "summary": "Deletar uma Empresa Interna",
                "description": "Este endpoint deleta uma empresa no sistema de SaaS dentro do HI juntamente com todos os usuários\n * vinculados",
                "operationId": "a16a4e3ea36f6c07c02662ccc1029129",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID da empresa",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Empresa Deletada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Empresa criada com sucesso",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Dados inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Dados inválidos",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Empresa não encontrada",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Empresa não encontrada",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "419": {
                        "description": "Login sem permissão para acessar módulo ou rota",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Login sem permissão para acessar módulo\n * ou rota",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/internal-companies/{uuid}/toggle-status": {
            "patch": {
                "tags": [
                    "Internal Companies"
                ],
                "summary": "Alternar o status de uma empresa",
                "description": "Ativa ou inativa uma empresa com base no UUID fornecido.",
                "operationId": "56129d2ce42baf0e87b3d8a79046e9de",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID da empresa",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Status da empresa atualizado com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Status da empresa atualizado com sucesso."
                                        },
                                        "is_active": {
                                            "description": "Novo status da empresa",
                                            "type": "boolean",
                                            "example": true
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Registro não encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "Registro não encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/internal-companies/{uuid}/activate": {
            "patch": {
                "tags": [
                    "Internal Companies"
                ],
                "summary": "Ativar uma empresa interna deletada",
                "description": "Restaura uma empresa interna que foi deletada logicamente (soft delete) no banco de dados junto com\n * todos os seus usuários.",
                "operationId": "d479397496154718cd8b419466aa6a59",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID da empresa interna a ser ativado.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid",
                            "example": "e31b6259-e407-4649-aee9-b5f82fb8eeff"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Empresa Interna foi ativada com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Empresa Interna foi ativada com sucesso."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Empresa interna não encontrada.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "Registro não encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Empresa interna não está deletada.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "A Empresa Interna não se encontra deletada."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/partners": {
            "get": {
                "tags": [
                    "Partners"
                ],
                "summary": "Lista todos os parceiros",
                "operationId": "getAllPartners",
                "responses": {
                    "200": {
                        "description": "Lista de parceiros"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Partners"
                ],
                "summary": "Cria um novo parceiro",
                "operationId": "createPartner",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Partner"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Parceiro criado com sucesso"
                    },
                    "500": {
                        "description": "Erro ao criar parceiro"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/partners/{uuid}": {
            "get": {
                "tags": [
                    "Partners"
                ],
                "summary": "Obtém os detalhes de um parceiro",
                "operationId": "getPartnerByUUID",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Detalhes do parceiro"
                    },
                    "404": {
                        "description": "Parceiro não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Partners"
                ],
                "summary": "Atualiza um parceiro",
                "operationId": "updatePartner",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Partner"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Parceiro atualizado"
                    },
                    "404": {
                        "description": "Parceiro não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Partners"
                ],
                "summary": "Deleta um parceiro",
                "operationId": "deletePartner",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Parceiro deletado"
                    },
                    "404": {
                        "description": "Parceiro não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/partners/{uuid}/activate": {
            "patch": {
                "tags": [
                    "Partners"
                ],
                "summary": "Ativa um parceiro deletado",
                "operationId": "activatePartner",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Parceiro ativado"
                    },
                    "404": {
                        "description": "Parceiro não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/partners/types": {
            "get": {
                "tags": [
                    "Partners"
                ],
                "summary": "Lista todos os tipos de parceiros",
                "operationId": "getAllPartnerTypes",
                "responses": {
                    "200": {
                        "description": "Lista de tipos de parceiros"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Partners"
                ],
                "summary": "Cria um novo tipo de parceiro",
                "operationId": "createPartnerType",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "name": {
                                        "description": "Nome do tipo de parceiro",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Tipo de parceiro criado com sucesso"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/partners/types/{uuid}": {
            "get": {
                "tags": [
                    "Partners"
                ],
                "summary": "Obtém um tipo de parceiro específico",
                "operationId": "getPartnerTypeByUUID",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Detalhes do tipo de parceiro"
                    },
                    "404": {
                        "description": "Tipo de parceiro não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Parceiros"
                ],
                "summary": "Atualiza um tipo de parceiro",
                "description": "Atualiza os dados de um tipo de parceiro existente pelo UUID.",
                "operationId": "updatePartnerType",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do tipo de parceiro",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "nome"
                                ],
                                "properties": {
                                    "nome": {
                                        "type": "string",
                                        "example": "Fornecedor"
                                    },
                                    "descricao": {
                                        "type": "string",
                                        "example": "Parceiro fornecedor de peças."
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Tipo de parceiro atualizado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Tipo de parceiro atualizado com sucesso."
                                        },
                                        "data": {
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Registro não encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "Registro não encontrado."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Partners"
                ],
                "summary": "Deleta um tipo de parceiro",
                "operationId": "deletePartnerType",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Tipo de parceiro deletado"
                    },
                    "404": {
                        "description": "Tipo de parceiro não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/partners/types/{uuid}/activate": {
            "patch": {
                "tags": [
                    "Partners"
                ],
                "summary": "Ativa um tipo de parceiro deletado",
                "operationId": "activatePartnerType",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Tipo de parceiro ativado"
                    },
                    "404": {
                        "description": "Tipo de parceiro não encontrado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/reports/dashboard": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Resumo geral do dashboard",
                "description": "Retorna o total de vidas (titulares + dependentes), contratos ativos e produtos ativos",
                "operationId": "dashboardReports",
                "responses": {
                    "200": {
                        "description": "Dados agregados do dashboard",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "lives_count": {
                                            "description": "Total de vidas (titulares + dependentes ativos)",
                                            "type": "integer",
                                            "example": 152
                                        },
                                        "contracts_count": {
                                            "description": "Total de contratos ativos",
                                            "type": "integer",
                                            "example": 12
                                        },
                                        "products_count": {
                                            "description": "Total de produtos ativos",
                                            "type": "integer",
                                            "example": 5
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/reports/graphs/dashboard/monthly-stats": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Estatísticas mensais do dashboard",
                "description": "Retorna a quantidade de contratos e vidas por mês nos últimos 12 meses",
                "operationId": "dashboardMonthlyStats",
                "responses": {
                    "200": {
                        "description": "Dados mensais de contratos e vidas",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "month": {
                                                "description": "Mês no formato YYYY-MM",
                                                "type": "string",
                                                "example": "2024-07"
                                            },
                                            "contracts": {
                                                "description": "Quantidade de contratos criados no mês",
                                                "type": "integer",
                                                "example": 3
                                            },
                                            "lives": {
                                                "description": "Quantidade de vidas (titulares + dependentes) adicionadas no mês",
                                                "type": "integer",
                                                "example": 47
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/reports/majority": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Relatório de maioridade de dependentes (Saúde/Odonto)",
                "description": "Lista dependentes com parentesco Filho (kinship_id=2) vinculados a contratos de Plano de Saúde ou Odontológico que atingirão a idade máxima do contrato (padrão 21 anos) nos próximos 6 meses.",
                "operationId": "reportsMajority",
                "responses": {
                    "200": {
                        "description": "Lista de dependentes que devem ser excluídos em até 6 meses",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "contract_id": {
                                                        "description": "ID do contrato (dependente pode aparecer em mais de um contrato)",
                                                        "type": "integer"
                                                    },
                                                    "Grupo": {
                                                        "type": "string"
                                                    },
                                                    "Nome_Fantasia_Empresa": {
                                                        "type": "string"
                                                    },
                                                    "Nome_Beneficiario": {
                                                        "type": "string"
                                                    },
                                                    "Data_Nascimento": {
                                                        "type": "string",
                                                        "format": "date"
                                                    },
                                                    "Idade_Atual": {
                                                        "type": "integer"
                                                    },
                                                    "Idade_Maxima_Contrato": {
                                                        "description": "21 ou max_dependent_age do contrato",
                                                        "type": "integer"
                                                    },
                                                    "Data_Limite_Exclusao": {
                                                        "type": "string",
                                                        "format": "date"
                                                    },
                                                    "Numero_Contrato": {
                                                        "type": "string"
                                                    },
                                                    "Tipo_Produto": {
                                                        "type": "string",
                                                        "example": "Plano de Saúde"
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/reports/movements": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Relatório de movimentações por período",
                "description": "Relatório de movimentações por período.",
                "operationId": "reportsMovementsByPeriod",
                "parameters": [
                    {
                        "name": "start_date",
                        "in": "query",
                        "description": "Data inicial (YYYY-MM-DD)",
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "end_date",
                        "in": "query",
                        "description": "Data final (YYYY-MM-DD)",
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de movimentações no período"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/reports/tasks-performance": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Relatório de performance das tarefas (SLA)",
                "description": "Retorna uma linha por solicitação (tarefa). Solicitações do mesmo protocolo são agrupadas; SLA e datas são calculados para a tarefa como um todo.",
                "operationId": "reportsTasksPerformance",
                "parameters": [
                    {
                        "name": "start_date",
                        "in": "query",
                        "description": "Data inicial (YYYY-MM-DD)",
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    },
                    {
                        "name": "end_date",
                        "in": "query",
                        "description": "Data final (YYYY-MM-DD)",
                        "schema": {
                            "type": "string",
                            "format": "date"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de tarefas com SLA (uma linha por solicitação/protocolo)",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "Protocolo": {
                                                        "type": "string"
                                                    },
                                                    "Colaborador_Responsavel": {
                                                        "type": "string"
                                                    },
                                                    "Nome_Fantasia_Empresa": {
                                                        "type": "string"
                                                    },
                                                    "Solicitacao": {
                                                        "type": "string"
                                                    },
                                                    "Qtd_Beneficiarios": {
                                                        "type": "integer"
                                                    },
                                                    "Operadora": {
                                                        "type": "string"
                                                    },
                                                    "Produto": {
                                                        "type": "string"
                                                    },
                                                    "Data_Solicitacao": {
                                                        "type": "string",
                                                        "format": "date"
                                                    },
                                                    "Data_Encerramento": {
                                                        "type": "string",
                                                        "format": "date"
                                                    },
                                                    "SLA_Original_Dias": {
                                                        "type": "integer"
                                                    },
                                                    "Tempo_Execucao_Dias_Uteis": {
                                                        "type": "integer"
                                                    },
                                                    "Resultado_SLA": {
                                                        "type": "string",
                                                        "example": "dentro_sla"
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/reports/contracts-products": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Relatório de contratos x produtos",
                "description": "Relatório por produtos dos contratos (uma linha por produto, repetindo número do contrato).",
                "operationId": "reportsContractsProducts",
                "responses": {
                    "200": {
                        "description": "Lista de contratos e seus produtos"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/reports/clients": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Relatório de clientes por localização",
                "description": "Lista clientes (empresas) com estado e cidade. Pode ser agrupado por estado e depois por cidade via query group_by",
                "operationId": "reportsClients",
                "parameters": [
                    {
                        "name": "group_by",
                        "in": "query",
                        "description": "Agrupamento: state (por estado), state_city (por estado e cidade), ou omitir para lista plana + resumo_por_estado e resumo_por_cidade",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "state",
                                "state_city"
                            ]
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de clientes ou estrutura agrupada. Se group_by omitido: data + resumo_por_estado (quantidade por estado) e resumo_por_cidade (quantidade por cidade)."
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/reports/holders": {
            "get": {
                "tags": [
                    "Reports"
                ],
                "summary": "Relatório de titulares por status e vínculo com contrato",
                "description": "Lista somente titulares com status (AFASTADO, ATIVO, DESLIGADO, etc.) e o contrato ao qual estão atrelados (ou 'Contrato inexistente')",
                "operationId": "reportsHolders",
                "responses": {
                    "200": {
                        "description": "Lista de titulares com Status e Contrato (número do contrato ou 'Contrato inexistente'), mais resumo_por_status e resumo_por_contrato"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/operational/requests/{requestUuid}/criticas": {
            "get": {
                "tags": [
                    "Request Criticas"
                ],
                "summary": "Listar críticas de uma solicitação",
                "operationId": "26ae5c4a96fea42afde253aef60022e4",
                "parameters": [
                    {
                        "name": "requestUuid",
                        "in": "path",
                        "description": "UUID da solicitação",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de críticas"
                    },
                    "404": {
                        "description": "Solicitação não encontrada"
                    },
                    "401": {
                        "description": "Não autorizado"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Request Criticas"
                ],
                "summary": "Criar uma nova crítica",
                "operationId": "de0ccc38265e08d367031f6800e4761a",
                "parameters": [
                    {
                        "name": "requestUuid",
                        "in": "path",
                        "description": "UUID da solicitação",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "critica",
                                    "type"
                                ],
                                "properties": {
                                    "critica": {
                                        "description": "Texto da crítica",
                                        "type": "string"
                                    },
                                    "type": {
                                        "description": "Tipo de crítica",
                                        "type": "string",
                                        "enum": [
                                            "general",
                                            "individual"
                                        ]
                                    },
                                    "beneficiary_uuid": {
                                        "description": "UUID do beneficiário (obrigatório se type=individual)",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Crítica criada com sucesso"
                    },
                    "422": {
                        "description": "Dados inválidos"
                    },
                    "404": {
                        "description": "Solicitação não encontrada"
                    },
                    "401": {
                        "description": "Não autorizado"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/operational/requests/{requestUuid}/criticas/{criticaUuid}": {
            "put": {
                "tags": [
                    "Request Criticas"
                ],
                "summary": "Atualizar uma crítica",
                "operationId": "558fe18e37d2cdef563f9b07c85b37bd",
                "parameters": [
                    {
                        "name": "requestUuid",
                        "in": "path",
                        "description": "UUID da solicitação",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "criticaUuid",
                        "in": "path",
                        "description": "UUID da crítica",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "critica"
                                ],
                                "properties": {
                                    "critica": {
                                        "description": "Texto da crítica",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Crítica atualizada com sucesso"
                    },
                    "404": {
                        "description": "Crítica não encontrada"
                    },
                    "403": {
                        "description": "Sem permissão para editar"
                    },
                    "401": {
                        "description": "Não autorizado"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Request Criticas"
                ],
                "summary": "Excluir uma crítica (soft delete)",
                "operationId": "e49e30a2ca1cbcc6144febc94a603c74",
                "parameters": [
                    {
                        "name": "requestUuid",
                        "in": "path",
                        "description": "UUID da solicitação",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "criticaUuid",
                        "in": "path",
                        "description": "UUID da crítica",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Crítica excluída com sucesso"
                    },
                    "404": {
                        "description": "Crítica não encontrada"
                    },
                    "401": {
                        "description": "Não autorizado"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/operational/requests/{requestUuid}/criticas/{criticaUuid}/resolve": {
            "patch": {
                "tags": [
                    "Request Criticas"
                ],
                "summary": "Marcar crítica como resolvida",
                "operationId": "760f75e91fb141fcf5016d3233fb64ef",
                "parameters": [
                    {
                        "name": "requestUuid",
                        "in": "path",
                        "description": "UUID da solicitação",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "criticaUuid",
                        "in": "path",
                        "description": "UUID da crítica",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Crítica marcada como resolvida"
                    },
                    "404": {
                        "description": "Crítica não encontrada"
                    },
                    "403": {
                        "description": "Sem permissão para resolver"
                    },
                    "401": {
                        "description": "Não autorizado"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/operational/requests/{requestUuid}/criticas/{criticaUuid}/reopen": {
            "patch": {
                "tags": [
                    "Request Criticas"
                ],
                "summary": "Reabrir uma crítica resolvida",
                "operationId": "98b1cf12c71f2d3ff31fbae5a3f8022a",
                "parameters": [
                    {
                        "name": "requestUuid",
                        "in": "path",
                        "description": "UUID da solicitação",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    },
                    {
                        "name": "criticaUuid",
                        "in": "path",
                        "description": "UUID da crítica",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Crítica reaberta com sucesso"
                    },
                    "404": {
                        "description": "Crítica não encontrada"
                    },
                    "401": {
                        "description": "Não autorizado"
                    }
                },
                "security": [
                    {
                        "sanctum": []
                    }
                ]
            }
        },
        "/api/operational/requests": {
            "get": {
                "tags": [
                    "Requests"
                ],
                "summary": "Lista todas as solicitações",
                "description": "Retorna uma lista de todas as solicitações com informações detalhadas",
                "operationId": "2329c461f43615b0a61b0c92d583d56e",
                "responses": {
                    "200": {
                        "description": "Lista de solicitações retornada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "id": {
                                                "type": "integer",
                                                "example": 1
                                            },
                                            "uuid": {
                                                "type": "string",
                                                "example": "c7c16159-6a93-4439-950e-4ba419550661"
                                            },
                                            "group_name": {
                                                "type": "string",
                                                "example": "VARANDA GRILL"
                                            },
                                            "company_name": {
                                                "type": "string",
                                                "example": "VARANDA GRILL JARDINS"
                                            },
                                            "contract_number": {
                                                "type": "string",
                                                "example": "421341"
                                            },
                                            "contract_uuid": {
                                                "type": "string",
                                                "example": "be22056d-a706-4e5b-8382-0172ad5f7b57"
                                            },
                                            "protocol_number": {
                                                "type": "string",
                                                "example": "INC-20250120-0001"
                                            },
                                            "protocol_number_operator": {
                                                "type": "string",
                                                "example": "OP-20250120-0001"
                                            },
                                            "priority": {
                                                "type": "string",
                                                "example": "medium"
                                            },
                                            "status": {
                                                "type": "integer",
                                                "example": 1
                                            },
                                            "in_masse": {
                                                "type": "string",
                                                "example": "Não"
                                            },
                                            "description": {
                                                "type": "string",
                                                "example": "Inclusão de novos colaboradores"
                                            },
                                            "responsible": {
                                                "type": "string",
                                                "example": "João Silva"
                                            },
                                            "incidents": {
                                                "type": "string",
                                                "example": "Inclusão de novos colaboradores no plano de saúde"
                                            },
                                            "product_type_name": {
                                                "type": "string",
                                                "example": "Plano de Saúde"
                                            },
                                            "request_type_name": {
                                                "type": "string",
                                                "example": "Inclusão"
                                            },
                                            "created_at": {
                                                "type": "string",
                                                "format": "date-time",
                                                "example": "2025-01-20T15:43:41.000000Z"
                                            },
                                            "updated_at": {
                                                "type": "string",
                                                "format": "date-time",
                                                "example": "2025-01-20T15:43:41.000000Z"
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    },
                    "401": {
                        "description": "Não autorizado"
                    },
                    "403": {
                        "description": "Acesso negado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/operational/requests/beneficiaries/{id}": {
            "get": {
                "tags": [
                    "Requests"
                ],
                "summary": "Buscar beneficiário por ID",
                "description": "Retorna informações de um beneficiário (holder ou dependent) pelo ID",
                "operationId": "53c1d31026104bf900882df73923c332",
                "parameters": [
                    {
                        "name": "id",
                        "in": "path",
                        "description": "ID do beneficiário",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Beneficiário encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "id": {
                                            "type": "integer"
                                        },
                                        "uuid": {
                                            "type": "string"
                                        },
                                        "name": {
                                            "type": "string"
                                        },
                                        "document": {
                                            "type": "string"
                                        },
                                        "type": {
                                            "type": "string",
                                            "enum": [
                                                "holder",
                                                "dependent"
                                            ]
                                        },
                                        "holder_uuid": {
                                            "type": "string",
                                            "nullable": true
                                        },
                                        "holder_name": {
                                            "type": "string",
                                            "nullable": true
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Beneficiário não encontrado"
                    },
                    "401": {
                        "description": "Não autorizado"
                    },
                    "403": {
                        "description": "Acesso negado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/operational/requests/{requestUuid}/beneficiaries/{personUuid}/details": {
            "get": {
                "tags": [
                    "Requests"
                ],
                "summary": "Buscar dados da carteirinha de um beneficiário",
                "description": "Retorna os dados da carteirinha (tipo, número, datas) de um beneficiário específico",
                "operationId": "c94541f5a11c03d3df537bf76f729f30",
                "parameters": [
                    {
                        "name": "requestUuid",
                        "in": "path",
                        "description": "UUID da solicitação",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "personUuid",
                        "in": "path",
                        "description": "UUID da pessoa/beneficiário",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Dados da carteirinha retornados com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "beneficiary_uuid": {
                                            "type": "string"
                                        },
                                        "product_uuid": {
                                            "type": "string"
                                        },
                                        "card_type": {
                                            "type": "string"
                                        },
                                        "identification_number": {
                                            "type": "string"
                                        },
                                        "inclusion_date": {
                                            "type": "string"
                                        },
                                        "deletion_date": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Dados não encontrados"
                    },
                    "401": {
                        "description": "Não autorizado"
                    },
                    "403": {
                        "description": "Acesso negado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Requests"
                ],
                "summary": "Salvar dados da carteirinha de um beneficiário",
                "description": "Salva ou atualiza os dados da carteirinha de um beneficiário específico",
                "operationId": "c48bb32a9e56ee6158378f763d10e5d1",
                "parameters": [
                    {
                        "name": "requestUuid",
                        "in": "path",
                        "description": "UUID da solicitação",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "personUuid",
                        "in": "path",
                        "description": "UUID da pessoa/beneficiário",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "product_uuid": {
                                        "type": "string"
                                    },
                                    "card_type": {
                                        "type": "string"
                                    },
                                    "identification_number": {
                                        "type": "string"
                                    },
                                    "inclusion_date": {
                                        "type": "string"
                                    },
                                    "deletion_date": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Dados salvos com sucesso"
                    },
                    "400": {
                        "description": "Dados inválidos"
                    },
                    "401": {
                        "description": "Não autorizado"
                    },
                    "403": {
                        "description": "Acesso negado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/operational/requests/{uuid}": {
            "get": {
                "tags": [
                    "Requests"
                ],
                "summary": "Obtém detalhes de uma solicitação específica",
                "description": "Retorna informações detalhadas de uma solicitação pelo UUID",
                "operationId": "753d3e93ca49c70d5e4d5576a010c67b",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID da solicitação",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Detalhes da solicitação retornados com sucesso"
                    },
                    "404": {
                        "description": "Solicitação não encontrada"
                    },
                    "401": {
                        "description": "Não autorizado"
                    },
                    "403": {
                        "description": "Acesso negado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/operational/requests/{uuid}/status": {
            "put": {
                "tags": [
                    "Requests"
                ],
                "summary": "Atualiza o status de uma solicitação",
                "description": "Permite que a analista atualize o status da solicitação e adicione comentários",
                "operationId": "1272700d4f186aed03638443aaac2e92",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID da solicitação",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Status atualizado com sucesso"
                    },
                    "404": {
                        "description": "Solicitação não encontrada"
                    },
                    "422": {
                        "description": "Dados inválidos"
                    },
                    "401": {
                        "description": "Não autorizado"
                    },
                    "403": {
                        "description": "Acesso negado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/operational/requests/create-batch-inclusion": {
            "post": {
                "tags": [
                    "Requests"
                ],
                "summary": "Criar inclusão em lote",
                "description": "Cria solicitações de inclusão em lote com dados de alteração do beneficiário",
                "operationId": "d3bb81b993d9ec6454d66dce8402f131",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "group_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "requests_type_id": {
                                        "type": "integer",
                                        "example": 1
                                    },
                                    "companies": {
                                        "type": "string",
                                        "example": "[1,2,3]"
                                    },
                                    "products": {
                                        "type": "string",
                                        "example": "[1,2,3]"
                                    },
                                    "selectedPeople": {
                                        "type": "array",
                                        "items": {
                                            "properties": {
                                                "uuid": {
                                                    "type": "string",
                                                    "format": "uuid",
                                                    "example": "123"
                                                },
                                                "name": {
                                                    "type": "string",
                                                    "example": "João"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "description": {
                                        "type": "string",
                                        "example": "Inclusão de novos colaboradores"
                                    },
                                    "responsible": {
                                        "type": "string",
                                        "example": "João Silva"
                                    },
                                    "incidents": {
                                        "type": "string",
                                        "example": "Inclusão de novos colaboradores no plano de saúde"
                                    },
                                    "exclusion_type": {
                                        "type": "string",
                                        "example": "imediata"
                                    },
                                    "exclusion_date": {
                                        "type": "string",
                                        "format": "date",
                                        "example": "2025-12-31"
                                    },
                                    "beneficiary_data_changes": {
                                        "description": "Dados de alteração do beneficiário",
                                        "properties": {
                                            "name": {
                                                "type": "string",
                                                "example": "João Silva"
                                            },
                                            "document": {
                                                "type": "string",
                                                "example": "123.456.789-00"
                                            },
                                            "email": {
                                                "type": "string",
                                                "example": "joao@exemplo.com"
                                            },
                                            "phone": {
                                                "type": "string",
                                                "example": "(11) 99999-9999"
                                            },
                                            "address": {
                                                "type": "string",
                                                "example": "Rua das Flores, 123"
                                            },
                                            "birth_date": {
                                                "type": "string",
                                                "format": "date",
                                                "example": "1990-01-01"
                                            },
                                            "marital_status": {
                                                "type": "string",
                                                "example": "casado"
                                            },
                                            "gender": {
                                                "type": "string",
                                                "example": "masculino"
                                            },
                                            "occupation": {
                                                "type": "string",
                                                "example": "Desenvolvedor"
                                            },
                                            "admission_date": {
                                                "type": "string",
                                                "format": "date",
                                                "example": "2020-01-01"
                                            },
                                            "salary": {
                                                "type": "string",
                                                "example": "R$ 5.000,00"
                                            },
                                            "cost_center": {
                                                "type": "string",
                                                "example": "TI"
                                            },
                                            "observations": {
                                                "type": "string",
                                                "example": "Observações sobre as alterações"
                                            },
                                            "changed_at": {
                                                "type": "string",
                                                "format": "date-time",
                                                "example": "2025-01-21T10:00:00Z"
                                            },
                                            "changed_by": {
                                                "type": "string",
                                                "example": "current_user"
                                            }
                                        },
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Solicitações criadas com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Inclusão em lote realizada com sucesso"
                                        },
                                        "total_created": {
                                            "type": "integer",
                                            "example": 5
                                        },
                                        "total_people": {
                                            "type": "integer",
                                            "example": 10
                                        },
                                        "total_companies": {
                                            "type": "integer",
                                            "example": 2
                                        },
                                        "total_products": {
                                            "type": "integer",
                                            "example": 3
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Dados inválidos"
                    },
                    "401": {
                        "description": "Não autorizado"
                    },
                    "422": {
                        "description": "Erro de validação"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/operational/requests/include-people-in-contracts": {
            "post": {
                "tags": [
                    "Requests"
                ],
                "summary": "Incluir pessoas em contratos",
                "description": "Inclui pessoas selecionadas em contratos e cria uma solicitação",
                "operationId": "978e95f3fef898100b1f73688fd168d9",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "people",
                                    "products",
                                    "incidents",
                                    "description"
                                ],
                                "properties": {
                                    "people": {
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "products": {
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    },
                                    "responsible": {
                                        "type": "string"
                                    },
                                    "incidents": {
                                        "type": "string"
                                    },
                                    "description": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Pessoas incluídas com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "request_id": {
                                            "type": "integer"
                                        },
                                        "request_uuid": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Dados inválidos"
                    },
                    "401": {
                        "description": "Não autorizado"
                    },
                    "500": {
                        "description": "Erro interno do servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/operational/requests/exclude-people-from-contracts": {
            "post": {
                "tags": [
                    "Requests"
                ],
                "summary": "Excluir pessoas de contratos",
                "description": "Exclui pessoas selecionadas de contratos e cria uma solicitação de exclusão",
                "operationId": "5e1fdd91f3beddc5e5da4b5a496baa88",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "company_uuid",
                                    "product_uuid",
                                    "contract_uuid",
                                    "people",
                                    "exclusion_type",
                                    "incidents",
                                    "description"
                                ],
                                "properties": {
                                    "company_uuid": {
                                        "type": "string"
                                    },
                                    "product_uuid": {
                                        "type": "string"
                                    },
                                    "contract_uuid": {
                                        "type": "string"
                                    },
                                    "people": {
                                        "type": "array",
                                        "items": {
                                            "type": "object"
                                        }
                                    },
                                    "exclusion_type": {
                                        "type": "string",
                                        "enum": [
                                            "imediata",
                                            "com_extensao_temporaria",
                                            "com_extensao_vitalicia",
                                            "programada"
                                        ]
                                    },
                                    "exclusion_date": {
                                        "description": "Obrigatório se exclusion_type = com_extensao_temporaria ou programada",
                                        "type": "string",
                                        "format": "date"
                                    },
                                    "responsible": {
                                        "type": "string"
                                    },
                                    "incidents": {
                                        "type": "string"
                                    },
                                    "description": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Pessoas excluídas com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "total_excluded": {
                                            "type": "integer"
                                        },
                                        "request_uuid": {
                                            "type": "string"
                                        },
                                        "protocol_number": {
                                            "type": "string"
                                        },
                                        "contract_number": {
                                            "type": "string"
                                        },
                                        "company_name": {
                                            "type": "string"
                                        },
                                        "product_name": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Dados inválidos"
                    },
                    "401": {
                        "description": "Não autorizado"
                    },
                    "500": {
                        "description": "Erro interno do servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/operational/requests/batch": {
            "post": {
                "tags": [
                    "Requests"
                ],
                "summary": "Criar solicitações em lote",
                "description": "Cria múltiplas solicitações baseadas em combos de produtos",
                "operationId": "6b05a847c9e3a7b67876227cde2ccb74",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "batch_requests": {
                                        "type": "array",
                                        "items": {
                                            "properties": {
                                                "company_id": {
                                                    "type": "integer",
                                                    "example": 1
                                                },
                                                "contract_id": {
                                                    "type": "integer",
                                                    "example": 1
                                                },
                                                "product_type_id": {
                                                    "type": "integer",
                                                    "example": 1
                                                },
                                                "sla_id": {
                                                    "type": "integer",
                                                    "example": 1
                                                },
                                                "request_type_id": {
                                                    "type": "integer",
                                                    "example": 1
                                                },
                                                "priority": {
                                                    "type": "string",
                                                    "example": "medium"
                                                },
                                                "description": {
                                                    "type": "string",
                                                    "example": "Inclusão de beneficiários"
                                                },
                                                "beneficiaries": {
                                                    "type": "array",
                                                    "items": {
                                                        "properties": {
                                                            "name": {
                                                                "type": "string",
                                                                "example": "João Silva"
                                                            },
                                                            "document": {
                                                                "type": "string",
                                                                "example": "123.456.789-00"
                                                            },
                                                            "birth_date": {
                                                                "type": "string",
                                                                "example": "1990-01-01"
                                                            },
                                                            "relationship": {
                                                                "type": "string",
                                                                "example": "Titular"
                                                            },
                                                            "is_holder": {
                                                                "type": "boolean",
                                                                "example": true
                                                            }
                                                        },
                                                        "type": "object"
                                                    }
                                                }
                                            },
                                            "type": "object"
                                        }
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Solicitações criadas com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Solicitações criadas com sucesso"
                                        },
                                        "created_count": {
                                            "type": "integer",
                                            "example": 5
                                        },
                                        "requests": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "id": {
                                                        "type": "integer",
                                                        "example": 1
                                                    },
                                                    "uuid": {
                                                        "type": "string",
                                                        "example": "uuid-example"
                                                    },
                                                    "protocol_number": {
                                                        "type": "string",
                                                        "example": "INC-20250120-0001"
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Dados inválidos"
                    },
                    "401": {
                        "description": "Não autorizado"
                    },
                    "422": {
                        "description": "Erro de validação"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/operational/requests/{requestUuid}/beneficiaries/{personUuid}/update-data": {
            "put": {
                "tags": [
                    "Requests"
                ],
                "summary": "Atualizar dados específicos do beneficiário",
                "description": "Atualiza apenas os dados específicos enviados para alteração cadastral",
                "operationId": "6cb3def237766b875d90a11d91c6c5eb",
                "parameters": [
                    {
                        "name": "requestUuid",
                        "in": "path",
                        "description": "UUID da solicitação",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    },
                    {
                        "name": "personUuid",
                        "in": "path",
                        "description": "UUID da pessoa",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "data": {
                                        "description": "Dados específicos para atualizar",
                                        "type": "object"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Dados atualizados com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string"
                                        },
                                        "updated_fields": {
                                            "type": "array",
                                            "items": {
                                                "type": "string"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Solicitação ou beneficiário não encontrado"
                    },
                    "500": {
                        "description": "Erro interno do servidor"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/operational/requests/transfer-responsibility": {
            "post": {
                "tags": [
                    "Requests"
                ],
                "summary": "Transferir responsabilidade de solicitações",
                "description": "Transfere a responsabilidade de uma ou mais solicitações para outro responsável.\nApenas usuários com permissão de manager podem realizar esta ação.",
                "operationId": "2831dd76afddd9b07d27388335a9600b",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "request_uuids": {
                                        "type": "array",
                                        "items": {
                                            "type": "string"
                                        }
                                    },
                                    "to_employee_id": {
                                        "type": "integer"
                                    },
                                    "reason": {
                                        "type": "string"
                                    },
                                    "notes": {
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Transferência realizada com sucesso"
                    },
                    "403": {
                        "description": "Sem permissão para transferir"
                    },
                    "404": {
                        "description": "Solicitação não encontrada"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/operational/requests/{uuid}/revert-transfer": {
            "post": {
                "tags": [
                    "Requests"
                ],
                "summary": "Reverter transferência de responsabilidade",
                "description": "Reverte uma transferência de responsabilidade, voltando ao responsável original.",
                "operationId": "68173059cc7128a78c162015f98c1311",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Transferência revertida com sucesso"
                    },
                    "403": {
                        "description": "Sem permissão"
                    },
                    "404": {
                        "description": "Solicitação ou transferência não encontrada"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/operational/requests/{uuid}/transfer-history": {
            "get": {
                "tags": [
                    "Requests"
                ],
                "summary": "Histórico de transferências de uma solicitação",
                "description": "Lista o histórico de transferências de responsabilidade de uma solicitação.",
                "operationId": "2975b41b75e0495b9d7e6c14e2c37230",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Histórico retornado com sucesso"
                    },
                    "404": {
                        "description": "Solicitação não encontrada"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/services/benefits/onboarding/preview/{operator}/{type}": {
            "get": {
                "tags": [
                    "Benefits - Onboarding"
                ],
                "summary": "Preview do email de onboarding",
                "operationId": "42d49607a82024cf17bef6f29921a0e9",
                "parameters": [
                    {
                        "name": "operator",
                        "in": "path",
                        "required": true,
                        "example": "amil"
                    },
                    {
                        "name": "type",
                        "in": "path",
                        "required": true,
                        "example": "health"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Preview gerado com sucesso"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/services/benefits/onboarding/send-email/{operator}/{type}": {
            "post": {
                "tags": [
                    "Benefits - Onboarding"
                ],
                "summary": "Dispara email de onboarding",
                "operationId": "0fe88f339d89eb9bfd91373f701f1058",
                "parameters": [
                    {
                        "name": "operator",
                        "in": "path",
                        "required": true
                    },
                    {
                        "name": "type",
                        "in": "path",
                        "required": true
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "properties": {
                                    "email": {
                                        "type": "string",
                                        "example": "user@empresa.com.br"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Email enviado"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/services/benefits/onboarding/generate-pdf/{operator}/{type}": {
            "post": {
                "tags": [
                    "Benefits - Onboarding"
                ],
                "summary": "Generate onboarding PDF",
                "description": "Generates a PDF onboarding document for a benefit operator and type.",
                "operationId": "generateOnboardingPdf",
                "parameters": [
                    {
                        "name": "operator",
                        "in": "path",
                        "description": "Benefit operator identifier",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "example": "amil"
                        }
                    },
                    {
                        "name": "type",
                        "in": "path",
                        "description": "Benefit type",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "enum": [
                                "saude",
                                "odonto"
                            ],
                            "example": "saude"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "PDF generated successfully",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "status": {
                                            "type": "string",
                                            "example": "generated"
                                        },
                                        "uuid": {
                                            "type": "string",
                                            "format": "uuid"
                                        },
                                        "path": {
                                            "type": "string",
                                            "example": "benefits/onboardings/2026/01/onboarding-uuid.pdf"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Configuration not found"
                    },
                    "500": {
                        "description": "Internal server error"
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/services/banks": {
            "get": {
                "tags": [
                    "Services"
                ],
                "summary": "Recupera todos os bancos",
                "description": "Consulta todos os bancos e retorna seus códigos, nomes e datetimes de criação, atualização e exclusão.",
                "operationId": "getBanks",
                "responses": {
                    "200": {
                        "description": "Consulta realizada com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Consulta realizada com sucesso."
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "code": {
                                                        "type": "string",
                                                        "example": "001"
                                                    },
                                                    "name": {
                                                        "type": "string",
                                                        "example": "Banco do Brasil S.A."
                                                    },
                                                    "created_at": {
                                                        "type": "string",
                                                        "format": "date-time",
                                                        "example": "2025-01-28T18:57:11.000000Z"
                                                    },
                                                    "updated_at": {
                                                        "type": "string",
                                                        "format": "date-time",
                                                        "example": "2025-01-28T18:57:11.000000Z"
                                                    },
                                                    "deleted_at": {
                                                        "type": "string",
                                                        "format": "date-time",
                                                        "example": "null"
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Erro na consulta.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Erro na consulta dos bancos."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/services/localize/consults/document/{document}": {
            "get": {
                "tags": [
                    "Services"
                ],
                "summary": "Consulta informações de CPF ou CNPJ no Localize dados",
                "description": "Este endpoint permite consultar informações de um CPF ou CNPJ fornecido no Localize dados.",
                "operationId": "ee06c4897d6a6f78407f9be21b8a3d61",
                "parameters": [
                    {
                        "name": "document",
                        "in": "path",
                        "description": "Número do CPF ou CNPJ para consulta.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "example": "42176327896"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Consulta realizada com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Consulta realizada com sucesso."
                                        },
                                        "data": {
                                            "properties": {
                                                "basic": {
                                                    "properties": {
                                                        "success": {
                                                            "type": "boolean",
                                                            "example": true
                                                        },
                                                        "type": {
                                                            "type": "integer",
                                                            "example": 1
                                                        },
                                                        "document": {
                                                            "type": "string",
                                                            "example": "42176327896"
                                                        },
                                                        "name": {
                                                            "type": "string",
                                                            "example": "MARCOS FELIPE DE ANDRADE SANTIAGO"
                                                        },
                                                        "gender": {
                                                            "type": "string",
                                                            "example": "MASCULINO"
                                                        },
                                                        "birth": {
                                                            "type": "string",
                                                            "example": "14/05/1995"
                                                        },
                                                        "dead_status": {
                                                            "type": "string",
                                                            "example": "VIVO(A)"
                                                        },
                                                        "rf_status": {
                                                            "type": "string",
                                                            "example": "REGULAR"
                                                        },
                                                        "mother": {
                                                            "type": "string",
                                                            "example": "FATIMA MARIA DE ANDRADE GRACIANO"
                                                        },
                                                        "sign": {
                                                            "type": "string",
                                                            "example": "TOURO"
                                                        },
                                                        "nit": {
                                                            "type": "string",
                                                            "example": "20744999809"
                                                        },
                                                        "age": {
                                                            "type": "string",
                                                            "example": "29"
                                                        },
                                                        "rg": {
                                                            "type": "string",
                                                            "example": "360602642"
                                                        },
                                                        "rg_issuing_state_code": {
                                                            "type": "string",
                                                            "example": "SP"
                                                        },
                                                        "rg_issuing_agency": {
                                                            "type": "string",
                                                            "example": "SSP"
                                                        }
                                                    },
                                                    "type": "object"
                                                },
                                                "company": {
                                                    "properties": {
                                                        "official_name": {
                                                            "type": "string",
                                                            "example": "HUMANITTARE CONSULTORIA E CORRETORA DE SEGUROS LTDA"
                                                        },
                                                        "founding_date": {
                                                            "type": "string",
                                                            "example": "12/05/2014"
                                                        },
                                                        "main_economic_activity": {
                                                            "type": "string",
                                                            "example": "Não Disponivel"
                                                        },
                                                        "secondary_economic_activity": {
                                                            "type": "string",
                                                            "example": "NÃO DISPONIVEL"
                                                        },
                                                        "company_type": {
                                                            "type": "string",
                                                            "example": "DEMAIS"
                                                        },
                                                        "cnae": {
                                                            "type": "string",
                                                            "example": "NÃO DISPONIVEL"
                                                        },
                                                        "tax_regime": {
                                                            "type": "string",
                                                            "example": "LUCRO PRESUMIDO"
                                                        },
                                                        "legal_nature": {
                                                            "type": "string",
                                                            "example": "SOCIEDADE EMPRESARIA LIMITADA"
                                                        },
                                                        "irs_status": {
                                                            "type": "string",
                                                            "example": "ATIVA"
                                                        },
                                                        "simples": {
                                                            "type": "string",
                                                            "example": "NÃO"
                                                        },
                                                        "activities": {
                                                            "type": "array",
                                                            "items": {
                                                                "properties": {
                                                                    "document": {
                                                                        "type": "string",
                                                                        "example": "20229525000100"
                                                                    },
                                                                    "is_main": {
                                                                        "type": "boolean",
                                                                        "example": true
                                                                    },
                                                                    "code": {
                                                                        "type": "string",
                                                                        "example": "6622300"
                                                                    },
                                                                    "activity": {
                                                                        "type": "string",
                                                                        "example": "CORRETORES E AGENTES DE SEGUROS, DE PLANOS DE PREVIDENCIA COMPLEMENTAR E DE SAUDE"
                                                                    }
                                                                },
                                                                "type": "object"
                                                            }
                                                        }
                                                    },
                                                    "type": "object"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Nenhuma informação encontrada para o documento fornecido.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "Nenhuma informação encontrada para este CPF."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Erro ao se comunicar com o serviço externo.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "Erro ao se comunicar com o serviço externo."
                                        },
                                        "details": {
                                            "type": "string",
                                            "example": "Detalhes do erro aqui"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Erro de validação no documento.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "Erro de validação."
                                        },
                                        "details": {
                                            "type": "object",
                                            "example": {
                                                "document": "O documento fornecido não é um CPF ou CNPJ válido."
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/services/via-cep/consult/{cep}": {
            "get": {
                "tags": [
                    "Services"
                ],
                "summary": "Consulta informações de um CEP",
                "description": "Este endpoint permite consultar informações detalhadas de um CEP fornecido.",
                "operationId": "e24f41d9859436642a6dbecfbc8b8d6b",
                "parameters": [
                    {
                        "name": "cep",
                        "in": "path",
                        "description": "Número do CEP para consulta.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "example": "03365-000"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Consulta realizada com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Consulta realizada com sucesso."
                                        },
                                        "data": {
                                            "properties": {
                                                "cep": {
                                                    "type": "string",
                                                    "example": "03365-000"
                                                },
                                                "logradouro": {
                                                    "type": "string",
                                                    "example": "Rua Ouricuri"
                                                },
                                                "complemento": {
                                                    "type": "string",
                                                    "example": ""
                                                },
                                                "unidade": {
                                                    "type": "string",
                                                    "example": ""
                                                },
                                                "bairro": {
                                                    "type": "string",
                                                    "example": "Vila Formosa"
                                                },
                                                "localidade": {
                                                    "type": "string",
                                                    "example": "São Paulo"
                                                },
                                                "uf": {
                                                    "type": "string",
                                                    "example": "SP"
                                                },
                                                "estado": {
                                                    "type": "string",
                                                    "example": "São Paulo"
                                                },
                                                "regiao": {
                                                    "type": "string",
                                                    "example": "Sudeste"
                                                },
                                                "ibge": {
                                                    "type": "string",
                                                    "example": "3550308"
                                                },
                                                "gia": {
                                                    "type": "string",
                                                    "example": "1004"
                                                },
                                                "ddd": {
                                                    "type": "string",
                                                    "example": "11"
                                                },
                                                "siafi": {
                                                    "type": "string",
                                                    "example": "7107"
                                                }
                                            },
                                            "type": "object"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "CEP não encontrado.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "CEP não encontrado."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Erro ao se comunicar com o serviço externo.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "Erro ao se comunicar com o serviço externo."
                                        },
                                        "details": {
                                            "type": "string",
                                            "example": "Detalhes do erro aqui"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/services/ibge/states": {
            "get": {
                "tags": [
                    "Services",
                    "IBGE"
                ],
                "summary": "Consulta todos os estados do Brasil",
                "description": "Este endpoint permite consultar informações sobre todos os estados do Brasil, com a possibilidade\n * de ordenação e visualização personalizada.",
                "operationId": "7be687ed680fccc7f4eaef941aa4a53b",
                "parameters": [
                    {
                        "name": "orderBy",
                        "in": "query",
                        "description": "Parâmetro para ordenar os estados. Valores possíveis: 'id' ou 'nome'.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "example": "nome"
                        }
                    },
                    {
                        "name": "view",
                        "in": "query",
                        "description": "Formato de visualização. Valores possíveis: 'default' ou 'nivelado'.",
                        "required": false,
                        "schema": {
                            "type": "string",
                            "example": "default"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Consulta realizada com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Consulta realizada com sucesso."
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "id": {
                                                        "type": "integer",
                                                        "example": 1
                                                    },
                                                    "nome": {
                                                        "type": "string",
                                                        "example": "Acre"
                                                    },
                                                    "sigla": {
                                                        "type": "string",
                                                        "example": "AC"
                                                    },
                                                    "regiao": {
                                                        "properties": {
                                                            "id": {
                                                                "type": "integer",
                                                                "example": 1
                                                            },
                                                            "nome": {
                                                                "type": "string",
                                                                "example": "Norte"
                                                            },
                                                            "sigla": {
                                                                "type": "string",
                                                                "example": "N"
                                                            }
                                                        },
                                                        "type": "object"
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Erro ao consultar dados.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "Erro ao consultar dados."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/services/ibge/regions": {
            "get": {
                "tags": [
                    "Services",
                    "IBGE"
                ],
                "summary": "Consulta todas as regiões do Brasil",
                "description": "Este endpoint permite consultar informações sobre todas as regiões do Brasil.",
                "operationId": "3453881372692a1dfdbbe2612d55d19f",
                "responses": {
                    "200": {
                        "description": "Consulta realizada com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "id": {
                                                "type": "integer",
                                                "example": 1
                                            },
                                            "nome": {
                                                "type": "string",
                                                "example": "Norte"
                                            },
                                            "sigla": {
                                                "type": "string",
                                                "example": "N"
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/services/ibge/countries": {
            "get": {
                "tags": [
                    "Services",
                    "IBGE"
                ],
                "summary": "Consulta todos os países",
                "description": "Este endpoint permite consultar informações sobre todos os países.",
                "operationId": "51b02eed966cae8870b536aa0ba809fa",
                "responses": {
                    "200": {
                        "description": "Consulta realizada com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "id": {
                                                "type": "integer",
                                                "example": 1
                                            },
                                            "nome": {
                                                "type": "string",
                                                "example": "Brasil"
                                            },
                                            "sigla": {
                                                "type": "string",
                                                "example": "BR"
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/services/ibge/municipalities/{state_id}": {
            "get": {
                "tags": [
                    "Services",
                    "IBGE"
                ],
                "summary": "Consulta municípios por estado",
                "description": "Este endpoint permite consultar os municípios de um estado específico.",
                "operationId": "1508d7b2df654d7b6feb98033ac2d421",
                "parameters": [
                    {
                        "name": "state_id",
                        "in": "path",
                        "description": "ID do estado para consultar seus municípios.",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Consulta realizada com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "id": {
                                                "type": "integer",
                                                "example": 1
                                            },
                                            "nome": {
                                                "type": "string",
                                                "example": "Rio Branco"
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/services/ibge/districts/{state_id}": {
            "get": {
                "tags": [
                    "Services",
                    "IBGE"
                ],
                "summary": "Consulta distritos por estado",
                "description": "Este endpoint permite consultar os distritos de um estado específico.",
                "operationId": "7ca5f89caecbaf01cc82cf7fdcdf4a64",
                "parameters": [
                    {
                        "name": "state_id",
                        "in": "path",
                        "description": "ID do estado para consultar seus distritos.",
                        "required": true,
                        "schema": {
                            "type": "integer",
                            "example": 1
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Consulta realizada com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "id": {
                                                "type": "integer",
                                                "example": 1
                                            },
                                            "nome": {
                                                "type": "string",
                                                "example": "Centro"
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/services/document-issuers": {
            "get": {
                "tags": [
                    "Services"
                ],
                "summary": "Consulta emissores de documentos",
                "description": "Este endpoint retorna uma lista de emissores de documentos.",
                "operationId": "6d7677e26512839136b10936f1897c5a",
                "responses": {
                    "200": {
                        "description": "Consulta realizada com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Consulta realizada com sucesso."
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "id": {
                                                        "type": "integer",
                                                        "example": 1
                                                    },
                                                    "uuid": {
                                                        "type": "string",
                                                        "example": "1244b89d-23c8-40dc-910e-18bb992cbf6d"
                                                    },
                                                    "acronym": {
                                                        "type": "string",
                                                        "example": "ABNC"
                                                    },
                                                    "name": {
                                                        "type": "string",
                                                        "example": "Academia Brasileira de Neurocirurgia"
                                                    },
                                                    "type": {
                                                        "type": "integer",
                                                        "example": 1
                                                    },
                                                    "created_at": {
                                                        "type": "string",
                                                        "format": "date-time",
                                                        "example": "2025-01-29T13:52:00.000000Z"
                                                    },
                                                    "updated_at": {
                                                        "type": "string",
                                                        "format": "date-time",
                                                        "example": null,
                                                        "nullable": true
                                                    },
                                                    "deleted_at": {
                                                        "type": "string",
                                                        "format": "date-time",
                                                        "example": null,
                                                        "nullable": true
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Erro ao buscar emissores de documentos.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "Erro ao buscar emissores de documentos."
                                        },
                                        "details": {
                                            "type": "string",
                                            "example": "Detalhes do erro aqui"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/services/vendors/products/types": {
            "get": {
                "tags": [
                    "Services"
                ],
                "summary": "Consulta tipos de produto",
                "description": "Este endpoint retorna uma lista de tipos de produtos.",
                "operationId": "9c48b72132079dfe98fe90ccb0a91598",
                "responses": {
                    "200": {
                        "description": "Consulta realizada com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Consulta realizada com sucesso."
                                        },
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "id": {
                                                        "type": "integer",
                                                        "example": 1
                                                    },
                                                    "uuid": {
                                                        "type": "string",
                                                        "example": "1244b89d-23c8-40dc-910e-18bb992cbf6d"
                                                    },
                                                    "name": {
                                                        "type": "string",
                                                        "example": "Plano de Saude"
                                                    },
                                                    "created_at": {
                                                        "type": "string",
                                                        "format": "date-time",
                                                        "example": "2025-01-29T13:52:00.000000Z"
                                                    },
                                                    "updated_at": {
                                                        "type": "string",
                                                        "format": "date-time",
                                                        "example": null,
                                                        "nullable": true
                                                    },
                                                    "deleted_at": {
                                                        "type": "string",
                                                        "format": "date-time",
                                                        "example": null,
                                                        "nullable": true
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "500": {
                        "description": "Erro ao buscar emissores de documentos.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "Erro ao buscar emissores de documentos."
                                        },
                                        "details": {
                                            "type": "string",
                                            "example": "Detalhes do erro aqui"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/vendors/products/by-type/{uuid}": {
            "get": {
                "tags": [
                    "Vendors - Products"
                ],
                "summary": "Listar fornecedores com produtos ativos de um tipo de produto",
                "description": "Retorna todos os fornecedores que possuem produtos ativos vinculados ao tipo de produto especificado pelo UUID.",
                "operationId": "getVendorsByProductType",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do tipo de produto",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de fornecedores",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "$ref": "#/components/schemas/Vendor"
                                    }
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Tipo de produto não encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Tipo de produto não encontrado."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/api/services/kinships": {
            "get": {
                "tags": [
                    "Services",
                    "Parentescos"
                ],
                "summary": "Retorna os tipos de parentescos",
                "description": "Este endpoint permite consultar os parentescos disponiveis no sistema.",
                "operationId": "97c9a3367c1344df89d0700a4fecd33d",
                "responses": {
                    "200": {
                        "description": "Consulta realizada com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "id": {
                                                "type": "integer",
                                                "example": 1
                                            },
                                            "name": {
                                                "type": "string",
                                                "example": "TIO"
                                            },
                                            "is_active": {
                                                "type": "string",
                                                "example": "1"
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/users/": {
            "get": {
                "tags": [
                    "Users"
                ],
                "summary": "Listar Usuários",
                "description": "Este endpoint retorna uma lista de todos os usuários ativos do sistema HI",
                "operationId": "f27c9f43c391b2bd7568e5093be07cc0",
                "responses": {
                    "200": {
                        "description": "Lista de usuários retornada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "description": "Lista de empresas internas",
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "uuid": {
                                                        "description": "Identificador único da empresa (UUID)",
                                                        "type": "string"
                                                    },
                                                    "name": {
                                                        "description": "Nome Completo do Usuário",
                                                        "type": "string"
                                                    },
                                                    "document": {
                                                        "description": "CPF do Usuário",
                                                        "type": "string"
                                                    },
                                                    "i_company_id": {
                                                        "description": "id de empresas internas",
                                                        "type": "string"
                                                    },
                                                    "email": {
                                                        "description": "Email do Usuário",
                                                        "type": "string"
                                                    },
                                                    "phone": {
                                                        "description": "Celular do Usuário",
                                                        "type": "string"
                                                    },
                                                    "is_active": {
                                                        "description": "Status de Ativação da Empresa",
                                                        "type": "boolean"
                                                    },
                                                    "created_at": {
                                                        "description": "Data de criação do usuário",
                                                        "type": "string",
                                                        "format": "date-time"
                                                    },
                                                    "updated_at": {
                                                        "description": "Data da última atualização",
                                                        "type": "string",
                                                        "format": "date-time"
                                                    },
                                                    "deleted_at": {
                                                        "description": "Data de exclusão lógica, se aplicável",
                                                        "type": "string",
                                                        "format": "date-time",
                                                        "nullable": true
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "419": {
                        "description": "Login sem permissão para acessar módulo ou rota",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Login sem permissão para acessar módulo ou rota",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/users": {
            "post": {
                "tags": [
                    "Users"
                ],
                "summary": "Cadastrar um novo usuário",
                "description": "Este endpoint cria um novo usuário no sistema",
                "operationId": "b8165ee81d3c98b60a69fc5bd1342644",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "name",
                                    "email",
                                    "password",
                                    "password_confirmation"
                                ],
                                "properties": {
                                    "name": {
                                        "description": "Nome do usuário",
                                        "type": "string"
                                    },
                                    "email": {
                                        "description": "Email do usuário",
                                        "type": "string"
                                    },
                                    "document": {
                                        "description": "CPF do usuário",
                                        "type": "string"
                                    },
                                    "phone": {
                                        "description": "Telefone Formatado (11) 95355-8283",
                                        "type": "string"
                                    },
                                    "group_acl_id": {
                                        "description": "1",
                                        "type": "string"
                                    },
                                    "i_company_id": {
                                        "description": "1",
                                        "type": "string"
                                    },
                                    "password": {
                                        "description": "Senha do usuário",
                                        "type": "string"
                                    },
                                    "password_confirmation": {
                                        "description": "Comfirme a senha do usuário",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Usuário criado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Usuário criado com sucesso",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Dados inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Dados inválidos",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "419": {
                        "description": "Login sem permissão para acessar módulo ou rota",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Login sem permissão para acessar módulo ou rota",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/users/{uuid}": {
            "get": {
                "tags": [
                    "Users"
                ],
                "summary": "Pesquisar um Usuário",
                "description": "Este endpoint pesquisa um usuário ativo no sistema HI",
                "operationId": "2767f0dc02d73967d8bbdcc65da50a38",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do usuário",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "uuid"
                                ],
                                "properties": {
                                    "uuid": {
                                        "description": "Identificador único do usuário (UUID)",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Usuário Encontrado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "description": "Detalhes do usuário",
                                            "type": "object",
                                            "example": {
                                                "uuid": "123e4567-e89b-12d3-a456-426614174000",
                                                "name": "joão silva",
                                                "document": "000.000.000-00",
                                                "email": "joao.silva@example.com",
                                                "phone": "(11) 95355-8283",
                                                "address": "Rua Exemplo",
                                                "number": "123",
                                                "complement": "Apto 1",
                                                "neighborhood": "Centro",
                                                "city": "Campinas",
                                                "state": "SP",
                                                "csll": "10",
                                                "irpf": "20",
                                                "iss": "10",
                                                "is_active": "1",
                                                "created_at": "2025-01-22 15:32:51",
                                                "updated_at": "2025-01-22 15:32:51",
                                                "deleted_at": null
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Usuário não encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "description": "Mensagem de erro",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "419": {
                        "description": "Login sem permissão para acessar módulo ou rota",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Login sem permissão para acessar módulo ou rota",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Users"
                ],
                "summary": "Atualizar informações de um usuário",
                "description": "Este endpoint atualiza os dados de um usuário existente no sistema HI",
                "operationId": "811dc308a55fc89ee46ade2c5cd68088",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do usuário a ser ativado.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid",
                            "example": "e31b6259-e407-4649-aee9-b5f82fb8eeff"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "uuid"
                                ],
                                "properties": {
                                    "uuid": {
                                        "description": "Identificador único do usuário (UUID)",
                                        "type": "string"
                                    },
                                    "name": {
                                        "description": "Novo nome do usuário",
                                        "type": "string",
                                        "nullable": true
                                    },
                                    "email": {
                                        "description": "Novo email do usuário",
                                        "type": "string",
                                        "nullable": true
                                    },
                                    "phone": {
                                        "description": "Novo telefone do usuário",
                                        "type": "string",
                                        "nullable": true
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Usuário atualizado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Usuário atualizado com sucesso",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Usuário não encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "description": "Mensagem de erro informando que o usuário não foi encontrado",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Dados inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "description": "Mensagem de erro informando que os dados enviados são inválidos",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Users"
                ],
                "summary": "Deletar um usuário",
                "description": "Este endpoint exclui um usuário existente do sistema HI",
                "operationId": "b9273cac3685d04c4718b906a6b59098",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do usuário a ser ativado.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid",
                            "example": "e31b6259-e407-4649-aee9-b5f82fb8eeff"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "required": [
                                    "uuid"
                                ],
                                "properties": {
                                    "uuid": {
                                        "description": "Identificador único do usuário (UUID)",
                                        "type": "string"
                                    }
                                },
                                "type": "object"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Usuário deletado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Usuário deletado com sucesso",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Usuário não encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "description": "Mensagem de erro informando que o usuário não foi encontrado",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Dados inválidos",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "description": "Mensagem de erro informando que os dados enviados são inválidos",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/users/{uuid}/permissions": {
            "get": {
                "tags": [
                    "Users"
                ],
                "summary": "Obter permissões do usuário",
                "description": "Retorna uma lista de permissões associadas ao usuário, incluindo o nome da permissão e sua descrição.",
                "operationId": "0156385cc95f86a7c5460bdf59eded9d",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do usuário",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Lista de permissões do usuário.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "permission": {
                                                        "type": "string",
                                                        "example": "users_add"
                                                    },
                                                    "description": {
                                                        "type": "string",
                                                        "example": "ADICIONAR NOVO USUÁRIO"
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Usuário não encontrado.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "Registro não encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "api/users/{uuid}/activate": {
            "patch": {
                "tags": [
                    "Users"
                ],
                "summary": "Ativar um usuário deletado",
                "description": "Restaura um usuário que foi deletado logicamente (soft delete) no banco de dados.",
                "operationId": "1a94ddc9f360ae0e6caff8367233cb20",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do usuário a ser ativado.",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid",
                            "example": "e31b6259-e407-4649-aee9-b5f82fb8eeff"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Usuário ativado com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "O Usuário foi ativado com sucesso."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Usuário não encontrado.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "Registro não encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "422": {
                        "description": "Usuário não está deletado.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "O Usuário não se encontra deletado."
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/users/{uuid}/toggle-status": {
            "patch": {
                "tags": [
                    "Users"
                ],
                "summary": "Alternar o status de uma empresa",
                "description": "Ativa ou inativa uma empresa com base no UUID fornecido.",
                "operationId": "62304fb4260ea678da60862be507a379",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID da empresa",
                        "required": true,
                        "schema": {
                            "type": "string",
                            "format": "uuid"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Status da empresa atualizado com sucesso.",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "type": "string",
                                            "example": "Status da empresa atualizado com sucesso."
                                        },
                                        "is_active": {
                                            "description": "Novo status da empresa",
                                            "type": "boolean",
                                            "example": true
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    },
                    "404": {
                        "description": "Registro não encontrado",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "error": {
                                            "type": "string",
                                            "example": "Registro não encontrado"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/vendors": {
            "get": {
                "tags": [
                    "Vendors"
                ],
                "summary": "Listar Fornecedores",
                "description": "Retorna uma lista de fornecedores cadastrados.",
                "operationId": "f56b65cd03d56663e188739a6450f318",
                "responses": {
                    "200": {
                        "description": "Lista de fornecedores retornada com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "data": {
                                            "type": "array",
                                            "items": {
                                                "properties": {
                                                    "name": {
                                                        "description": "Nome do fornecedor",
                                                        "type": "string"
                                                    },
                                                    "document": {
                                                        "description": "Documento do fornecedor",
                                                        "type": "string"
                                                    },
                                                    "branch_company": {
                                                        "description": "Filial da empresa",
                                                        "type": "string"
                                                    },
                                                    "operating_radius": {
                                                        "description": "Raio de operação",
                                                        "type": "string"
                                                    },
                                                    "iof_previous": {
                                                        "description": "IOF anterior",
                                                        "type": "string"
                                                    },
                                                    "iof_current": {
                                                        "description": "IOF atual",
                                                        "type": "string"
                                                    },
                                                    "i_company_id": {
                                                        "description": "ID da empresa associada",
                                                        "type": "string"
                                                    },
                                                    "is_active": {
                                                        "description": "Status de ativação do fornecedor",
                                                        "type": "boolean"
                                                    }
                                                },
                                                "type": "object"
                                            }
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "post": {
                "tags": [
                    "Vendors"
                ],
                "summary": "Criar Fornecedor",
                "description": "Cria um novo fornecedor.",
                "operationId": "729f31adf14865af726303e044f389ab",
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Vendor"
                            }
                        }
                    }
                },
                "responses": {
                    "201": {
                        "description": "Fornecedor criado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Mensagem de sucesso",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/vendors/{uuid}": {
            "get": {
                "tags": [
                    "Vendors"
                ],
                "summary": "Visualizar Fornecedor",
                "description": "Retorna os detalhes de um fornecedor específico.",
                "operationId": "a76ae17c78b85b9ff95919c096910939",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do fornecedor",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Dados do fornecedor retornados com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/Vendor"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "put": {
                "tags": [
                    "Vendors"
                ],
                "summary": "Atualizar Fornecedor",
                "description": "Atualiza os dados de um fornecedor específico.",
                "operationId": "23a97dfcd11fe7079ff8a16208fcb96c",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do fornecedor",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "requestBody": {
                    "required": true,
                    "content": {
                        "application/json": {
                            "schema": {
                                "$ref": "#/components/schemas/Vendor"
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Fornecedor atualizado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Mensagem de sucesso",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            },
            "delete": {
                "tags": [
                    "Vendors"
                ],
                "summary": "Excluir Fornecedor",
                "description": "Exclui um fornecedor específico.",
                "operationId": "fa7615e7a898fd0c244f977223cd45e4",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do fornecedor",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Fornecedor excluído com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Mensagem de sucesso",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/vendors/{uuid}/activate": {
            "patch": {
                "tags": [
                    "Vendors"
                ],
                "summary": "Ativar Fornecedor",
                "description": "Ativa um fornecedor previamente excluído.",
                "operationId": "e68e89be92ecde7e8a522dde7b063867",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do fornecedor",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Fornecedor ativado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Mensagem de sucesso",
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        },
        "/api/vendors/{uuid}/toggle-status": {
            "patch": {
                "tags": [
                    "Vendors"
                ],
                "summary": "Alternar Status do Fornecedor",
                "description": "Ativa ou desativa um fornecedor existente.",
                "operationId": "392400cc5d6bd9ef37122ef75b5b94ab",
                "parameters": [
                    {
                        "name": "uuid",
                        "in": "path",
                        "description": "UUID do fornecedor",
                        "required": true,
                        "schema": {
                            "type": "string"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Status do fornecedor alterado com sucesso",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "properties": {
                                        "message": {
                                            "description": "Mensagem de sucesso",
                                            "type": "string"
                                        },
                                        "is_active": {
                                            "description": "Novo status do fornecedor",
                                            "type": "boolean"
                                        }
                                    },
                                    "type": "object"
                                }
                            }
                        }
                    }
                },
                "security": [
                    {
                        "bearerAuth": []
                    }
                ]
            }
        }
    },
    "components": {
        "schemas": {
            "PreviewRow": {
                "title": "PreviewRow",
                "description": "Linha de pré-visualização de beneficiário importado (titular ou dependente).",
                "properties": {
                    "rowIndex": {
                        "description": "Número da linha no Excel (1-based)",
                        "type": "integer",
                        "example": 1
                    },
                    "type": {
                        "description": "Tipo do registro: HOLDER ou DEPENDENT",
                        "type": "string",
                        "example": "HOLDER"
                    },
                    "rawCpf": {
                        "type": "string",
                        "example": "480.671.078-40"
                    },
                    "rawHolderCpf": {
                        "type": "string",
                        "example": "480.671.078-40"
                    },
                    "rawCnpj": {
                        "type": "string",
                        "example": "17.089.934/0001-44"
                    },
                    "fullName": {
                        "type": "string",
                        "example": "BRUNO BATISTA XAVIER PAULINO"
                    },
                    "birthDate": {
                        "type": "string",
                        "example": "36484"
                    },
                    "sex": {
                        "type": "string",
                        "example": "M"
                    },
                    "maritalStatus": {
                        "type": "string",
                        "example": "SOLTEIRO"
                    },
                    "phone": {
                        "type": "string",
                        "example": "11966198247"
                    },
                    "personalEmail": {
                        "type": "string",
                        "example": "bruno@email.com"
                    },
                    "corporateEmail": {
                        "type": "string",
                        "example": "bruno.paulino@selectautomacao.com.br"
                    },
                    "rg": {
                        "type": "string",
                        "example": "12345678-9"
                    },
                    "issuingAuthority": {
                        "type": "string",
                        "example": "SSP"
                    },
                    "issuingState": {
                        "type": "string",
                        "example": "SP"
                    },
                    "cns": {
                        "type": "string",
                        "example": "898001160243856"
                    },
                    "motherName": {
                        "type": "string",
                        "example": "BERENICE FERREIRA BATISTA PAULINO"
                    },
                    "degreeOfKinship": {
                        "type": "string",
                        "example": "FILHO/FILHA"
                    },
                    "hiringType": {
                        "type": "string",
                        "example": "EMPREGADO CLT"
                    },
                    "registration": {
                        "type": "string",
                        "example": "00123"
                    },
                    "costCenter": {
                        "type": "string",
                        "example": "Financeiro"
                    },
                    "jobTitle": {
                        "type": "string",
                        "example": "Analista"
                    },
                    "admissionDate": {
                        "type": "string",
                        "example": "2020-01-01"
                    },
                    "grossWage": {
                        "type": "string",
                        "example": "3500,00"
                    },
                    "zipCode": {
                        "type": "string",
                        "example": "02229-020"
                    },
                    "streetNumber": {
                        "type": "string",
                        "example": "37"
                    },
                    "addressComplement": {
                        "type": "string",
                        "example": "CASA 3"
                    },
                    "bank": {
                        "type": "string",
                        "example": "Itaú"
                    },
                    "agency": {
                        "type": "string",
                        "example": "1234"
                    },
                    "account": {
                        "type": "string",
                        "example": "12345-6"
                    },
                    "accountType": {
                        "type": "string",
                        "example": "CC"
                    },
                    "cpf": {
                        "type": "string",
                        "example": "48067107840"
                    },
                    "holderCpf": {
                        "type": "string",
                        "example": "48067107840"
                    },
                    "cnpj": {
                        "type": "string",
                        "example": "17.089.934/0001-44"
                    },
                    "birthDateIso": {
                        "type": "string",
                        "example": "1999-11-20"
                    },
                    "admissionDateIso": {
                        "type": "string",
                        "example": "2020-01-01"
                    },
                    "wageDecimal": {
                        "type": "string",
                        "example": "3500.00"
                    },
                    "zip8": {
                        "type": "string",
                        "example": "02229020"
                    },
                    "resolvedCompanyId": {
                        "type": "integer",
                        "example": 7
                    },
                    "viaCep": {
                        "description": "Dados obtidos do ViaCEP",
                        "properties": {
                            "logradouro": {
                                "type": "string",
                                "example": "Rua Carlos Rodrigues de Barros"
                            },
                            "bairro": {
                                "type": "string",
                                "example": "Jardim Brasil (Zona Norte)"
                            },
                            "localidade": {
                                "type": "string",
                                "example": "São Paulo"
                            },
                            "uf": {
                                "type": "string",
                                "example": "SP"
                            }
                        },
                        "type": "object"
                    },
                    "address": {
                        "type": "string",
                        "example": "Rua Carlos Rodrigues de Barros"
                    },
                    "number": {
                        "type": "string",
                        "example": "37"
                    },
                    "complement": {
                        "type": "string",
                        "example": "CASA 3"
                    },
                    "neighborhood": {
                        "type": "string",
                        "example": "Jardim Brasil (Zona Norte)"
                    },
                    "city": {
                        "type": "string",
                        "example": "São Paulo"
                    },
                    "state": {
                        "type": "string",
                        "example": "SP"
                    },
                    "errors": {
                        "type": "array",
                        "items": {
                            "type": "string",
                            "example": "Invalid CPF (must be 11 digits)."
                        }
                    },
                    "warnings": {
                        "type": "array",
                        "items": {
                            "type": "string",
                            "example": "Company not found by provided CNPJ."
                        }
                    }
                },
                "type": "object"
            },
            "Broker": {
                "required": [
                    "name",
                    "vendor_id",
                    "product_type_id",
                    "product_port"
                ],
                "properties": {
                    "uuid": {
                        "description": "Nome do Produto",
                        "type": "string"
                    },
                    "i_company_id": {
                        "description": "ID da empresa interna",
                        "type": "string"
                    },
                    "name": {
                        "description": "Nome do Produto",
                        "type": "string"
                    },
                    "document": {
                        "description": "CNPJ DA Empresa",
                        "type": "string"
                    },
                    "susep": {
                        "description": "SUSEP DA Empresa",
                        "type": "string"
                    },
                    "internal_broker": {
                        "description": "1 para empresa filial internal, 0 para concorrencia",
                        "type": "string"
                    },
                    "is_active": {
                        "description": "Status de ativação do produto",
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "ContractProductCondition": {
                "required": [
                    "uuid",
                    "contract_id",
                    "product_id",
                    "premium_currency",
                    "company_currency_refund"
                ],
                "properties": {
                    "uuid": {
                        "type": "string",
                        "example": "condition-uuid-123"
                    },
                    "contract_id": {
                        "type": "integer",
                        "example": 10
                    },
                    "product_id": {
                        "type": "integer",
                        "example": 5
                    },
                    "premium_currency": {
                        "type": "number",
                        "format": "float",
                        "example": 100
                    },
                    "company_currency_refund": {
                        "type": "number",
                        "format": "float",
                        "example": 50
                    },
                    "example_refund_value": {
                        "type": "number",
                        "format": "float",
                        "example": 30
                    },
                    "negotiated_particularities": {
                        "type": "string",
                        "example": "Negociação especial para o cliente"
                    },
                    "additional_coverages": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        }
                    }
                },
                "type": "object"
            },
            "ContractProductContribution": {
                "required": [
                    "uuid",
                    "contract_uuid",
                    "product_uuid",
                    "description",
                    "type_charge"
                ],
                "properties": {
                    "uuid": {
                        "type": "string",
                        "example": "contribution-uuid-123"
                    },
                    "contract_uuid": {
                        "type": "string",
                        "example": "contract-uuid-123"
                    },
                    "product_uuid": {
                        "type": "string",
                        "example": "product-uuid-123"
                    },
                    "description": {
                        "type": "string",
                        "example": "Contribuição mensal para plano"
                    },
                    "type_charge": {
                        "type": "string",
                        "example": "percentage"
                    },
                    "holder_percentage": {
                        "type": "number",
                        "format": "float",
                        "example": 5
                    },
                    "holder_amount": {
                        "type": "number",
                        "format": "float",
                        "example": 50
                    },
                    "dependent_percentage": {
                        "type": "number",
                        "format": "float",
                        "example": 3
                    },
                    "dependent_amount": {
                        "type": "number",
                        "format": "float",
                        "example": 30
                    }
                },
                "type": "object"
            },
            "ContractProductCopay": {
                "required": [
                    "uuid",
                    "contract_uuid",
                    "product_uuid",
                    "description",
                    "type_charge"
                ],
                "properties": {
                    "uuid": {
                        "type": "string",
                        "example": "copay-uuid-123"
                    },
                    "contract_uuid": {
                        "type": "string",
                        "example": "contract-uuid-123"
                    },
                    "product_uuid": {
                        "type": "string",
                        "example": "product-uuid-123"
                    },
                    "description": {
                        "type": "string",
                        "example": "Copay para exame de sangue"
                    },
                    "percentage": {
                        "type": "number",
                        "format": "float",
                        "example": 10
                    },
                    "amount": {
                        "type": "number",
                        "format": "float",
                        "example": 50
                    },
                    "limit_value": {
                        "type": "number",
                        "format": "float",
                        "example": 200
                    },
                    "type_charge": {
                        "type": "string",
                        "example": "fixed"
                    },
                    "type_procedure": {
                        "type": "array",
                        "items": {
                            "type": "integer"
                        },
                        "example": [
                            1,
                            2,
                            3
                        ]
                    }
                },
                "type": "object"
            },
            "Contract": {
                "required": [
                    "uuid",
                    "product_type_id",
                    "group_id",
                    "products",
                    "companies",
                    "holders"
                ],
                "properties": {
                    "uuid": {
                        "type": "string",
                        "example": "2cafe329-94a2-4915-8226-cf6eeb1e3074"
                    },
                    "product_type_id": {
                        "type": "integer",
                        "example": 3
                    },
                    "group_id": {
                        "type": "integer",
                        "example": 1
                    },
                    "type_closure": {
                        "type": "string",
                        "example": "automatic"
                    },
                    "previous_vendor_id": {
                        "type": "integer",
                        "example": 4
                    },
                    "vendor_id": {
                        "type": "integer",
                        "example": 2
                    },
                    "policy_number": {
                        "type": "string",
                        "example": "POL12345"
                    },
                    "contract_number": {
                        "type": "string",
                        "example": "CONTRAT123"
                    },
                    "effective_start": {
                        "type": "string",
                        "format": "date",
                        "example": "2025-01-01"
                    },
                    "effective_end": {
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "is_active": {
                        "type": "boolean",
                        "example": true
                    },
                    "assessment_value": {
                        "type": "number",
                        "format": "float",
                        "example": 5000
                    },
                    "companies": {
                        "type": "array",
                        "items": {
                            "properties": {
                                "uuid": {
                                    "type": "string"
                                },
                                "contract_number": {
                                    "type": "string"
                                },
                                "is_stipulator": {
                                    "type": "boolean"
                                },
                                "is_pj": {
                                    "type": "boolean"
                                }
                            },
                            "type": "object"
                        }
                    },
                    "products": {
                        "type": "array",
                        "items": {
                            "properties": {
                                "uuid": {
                                    "type": "string"
                                },
                                "copays": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "uuid": {
                                                "type": "string"
                                            },
                                            "product_uuid": {
                                                "type": "string"
                                            },
                                            "description": {
                                                "type": "string"
                                            },
                                            "percentage": {
                                                "type": "number",
                                                "format": "float"
                                            },
                                            "amount": {
                                                "type": "number",
                                                "format": "float"
                                            },
                                            "limit_value": {
                                                "type": "number",
                                                "format": "float"
                                            },
                                            "type_charge": {
                                                "type": "string"
                                            },
                                            "type_procedure": {
                                                "type": "array",
                                                "items": {
                                                    "type": "integer"
                                                }
                                            }
                                        },
                                        "type": "object"
                                    }
                                },
                                "contributions": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "uuid": {
                                                "type": "string"
                                            },
                                            "product_uuid": {
                                                "type": "string"
                                            },
                                            "description": {
                                                "type": "string"
                                            },
                                            "type_charge": {
                                                "type": "string"
                                            },
                                            "holder_percentage": {
                                                "type": "number"
                                            },
                                            "holder_amount": {
                                                "type": "number"
                                            },
                                            "dependent_percentage": {
                                                "type": "number"
                                            },
                                            "dependent_amount": {
                                                "type": "number"
                                            }
                                        },
                                        "type": "object"
                                    }
                                },
                                "condition": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "uuid": {
                                                "type": "string"
                                            },
                                            "product_uuid": {
                                                "type": "string"
                                            },
                                            "premium_currency": {
                                                "type": "number"
                                            },
                                            "company_currency_refund": {
                                                "type": "number"
                                            },
                                            "example_refund_value": {
                                                "type": "number"
                                            },
                                            "negotiated_particularities": {
                                                "type": "string"
                                            },
                                            "additional_coverages": {
                                                "type": "array",
                                                "items": {
                                                    "type": "integer"
                                                }
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            },
                            "type": "object"
                        }
                    },
                    "holders": {
                        "type": "array",
                        "items": {
                            "properties": {
                                "beneficiary": {
                                    "properties": {
                                        "uuid": {
                                            "type": "string"
                                        },
                                        "product_uuid": {
                                            "type": "string"
                                        },
                                        "is_holder": {
                                            "type": "boolean"
                                        },
                                        "h_uuid": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                },
                                "details": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "uuid": {
                                                "type": "string"
                                            },
                                            "product_uuid": {
                                                "type": "string"
                                            },
                                            "beneficiary_uuid": {
                                                "type": "string"
                                            },
                                            "card_type": {
                                                "type": "string"
                                            },
                                            "deletion_date": {
                                                "type": "string",
                                                "format": "date"
                                            },
                                            "inclusion_date": {
                                                "type": "string",
                                                "format": "date"
                                            },
                                            "identification_number": {
                                                "type": "string"
                                            },
                                            "h_uuid": {
                                                "type": "string"
                                            }
                                        },
                                        "type": "object"
                                    }
                                }
                            },
                            "type": "object"
                        }
                    }
                },
                "type": "object"
            },
            "ContractCreateRequest": {
                "required": [
                    "product_type_id",
                    "group_id",
                    "products",
                    "companies"
                ],
                "properties": {
                    "product_type_id": {
                        "type": "integer",
                        "example": 1
                    },
                    "group_id": {
                        "type": "integer",
                        "example": 2
                    },
                    "products": {
                        "type": "array",
                        "items": {
                            "required": [
                                "uuid"
                            ],
                            "properties": {
                                "uuid": {
                                    "type": "string",
                                    "example": "product-uuid-123"
                                },
                                "copays": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "description": {
                                                "type": "string"
                                            },
                                            "percentage": {
                                                "type": "number",
                                                "format": "float"
                                            },
                                            "amount": {
                                                "type": "number",
                                                "format": "float"
                                            },
                                            "limit_value": {
                                                "type": "number",
                                                "format": "float"
                                            },
                                            "type_charge": {
                                                "type": "string"
                                            },
                                            "type_procedure": {
                                                "type": "array",
                                                "items": {
                                                    "type": "string"
                                                }
                                            }
                                        },
                                        "type": "object"
                                    }
                                },
                                "contributions": {
                                    "type": "array",
                                    "items": {
                                        "properties": {
                                            "description": {
                                                "type": "string"
                                            },
                                            "type_charge": {
                                                "type": "string"
                                            },
                                            "holder_percentage": {
                                                "type": "number"
                                            },
                                            "holder_amount": {
                                                "type": "number"
                                            },
                                            "dependent_percentage": {
                                                "type": "number"
                                            },
                                            "dependent_amount": {
                                                "type": "number"
                                            }
                                        },
                                        "type": "object"
                                    }
                                },
                                "condition": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            },
                            "type": "object"
                        }
                    },
                    "companies": {
                        "type": "array",
                        "items": {
                            "required": [
                                "uuid"
                            ],
                            "properties": {
                                "uuid": {
                                    "type": "string"
                                },
                                "is_stipulator": {
                                    "type": "boolean"
                                },
                                "is_pj": {
                                    "type": "boolean"
                                },
                                "contract_number": {
                                    "type": "string"
                                }
                            },
                            "type": "object"
                        }
                    },
                    "holders": {
                        "type": "array",
                        "items": {
                            "properties": {
                                "beneficiary": {
                                    "properties": {
                                        "uuid": {
                                            "type": "string"
                                        },
                                        "product_uuid": {
                                            "type": "string"
                                        },
                                        "is_holder": {
                                            "type": "boolean"
                                        },
                                        "h_uuid": {
                                            "type": "string"
                                        }
                                    },
                                    "type": "object"
                                },
                                "details": {
                                    "type": "array",
                                    "items": {
                                        "type": "object"
                                    }
                                }
                            },
                            "type": "object"
                        }
                    }
                },
                "type": "object"
            },
            "CompanyContact": {
                "required": [
                    "company_id",
                    "name",
                    "phone",
                    "email",
                    "role",
                    "role_level",
                    "hobbie",
                    "birth_date",
                    "relationship_level"
                ],
                "properties": {
                    "company_id": {
                        "description": "ID da empresa",
                        "type": "integer",
                        "example": 2
                    },
                    "name": {
                        "description": "Nome do contato",
                        "type": "string",
                        "example": "MARCOS"
                    },
                    "phone": {
                        "description": "Telefone do contato",
                        "type": "string",
                        "example": "11953558283"
                    },
                    "email": {
                        "description": "E-mail do contato",
                        "type": "string",
                        "example": "marcos@teste.com"
                    },
                    "role": {
                        "description": "Cargo do contato",
                        "type": "string",
                        "example": "teste"
                    },
                    "role_level": {
                        "description": "Nível do cargo",
                        "type": "integer",
                        "example": 1
                    },
                    "hobbie": {
                        "description": "Hobby do contato",
                        "type": "string",
                        "example": "DEV"
                    },
                    "birth_date": {
                        "description": "Data de nascimento",
                        "type": "string",
                        "format": "date",
                        "example": "1995-01-14"
                    },
                    "relationship_level": {
                        "description": "Nível de relacionamento",
                        "type": "integer",
                        "example": 1
                    }
                },
                "type": "object"
            },
            "Company": {
                "required": [
                    "group_id",
                    "name",
                    "business_name",
                    "document",
                    "type",
                    "company_characteristic_id",
                    "zip_code",
                    "address",
                    "city",
                    "state",
                    "company_size",
                    "is_active",
                    "company_origin",
                    "has_contract_pj",
                    "has_invoice_pj",
                    "flexible_benefits",
                    "company_payroll",
                    "has_outpost",
                    "has_doctor_company",
                    "doctor_company",
                    "has_nursing_company",
                    "nursing_company",
                    "has_outpatient_company",
                    "outpatient_company",
                    "system_payroll",
                    "type_visit",
                    "frequency_visit",
                    "company_type_index"
                ],
                "properties": {
                    "group_id": {
                        "description": "ID do grupo da empresa",
                        "type": "integer"
                    },
                    "name": {
                        "description": "Nome da empresa",
                        "type": "string"
                    },
                    "business_name": {
                        "description": "Razão social da empresa",
                        "type": "string"
                    },
                    "opening_date": {
                        "description": "Data de abertura da empresa",
                        "type": "string",
                        "format": "date"
                    },
                    "document": {
                        "description": "CNPJ da empresa",
                        "type": "string"
                    },
                    "slug": {
                        "description": "Apelido/Sigla da Empresa",
                        "type": "string"
                    },
                    "ie": {
                        "description": "Inscrição Municipal da empresa",
                        "type": "string"
                    },
                    "im": {
                        "description": "Inscrição Estadual da empresa",
                        "type": "string"
                    },
                    "type": {
                        "description": "Tipo de empresa",
                        "type": "integer"
                    },
                    "company_characteristic_id": {
                        "description": "ID da característica da empresa",
                        "type": "integer"
                    },
                    "url": {
                        "description": "URL do site da empresa",
                        "type": "string"
                    },
                    "zip_code": {
                        "description": "CEP da empresa",
                        "type": "string"
                    },
                    "address": {
                        "description": "Endereço da empresa",
                        "type": "string"
                    },
                    "number": {
                        "description": "Número do endereço",
                        "type": "string"
                    },
                    "complement": {
                        "description": "Complemento do endereço",
                        "type": "string"
                    },
                    "neighborhood": {
                        "description": "Bairro da empresa",
                        "type": "string"
                    },
                    "city": {
                        "description": "Cidade da empresa",
                        "type": "string"
                    },
                    "state": {
                        "description": "Estado da empresa",
                        "type": "string"
                    },
                    "company_size": {
                        "description": "Tamanho da empresa",
                        "type": "string"
                    },
                    "witness_one": {
                        "description": "Nome da primeira testemunha",
                        "type": "string"
                    },
                    "witness_two": {
                        "description": "Nome da segunda testemunha",
                        "type": "string"
                    },
                    "is_active": {
                        "description": "Status de ativação da empresa",
                        "type": "integer"
                    },
                    "reason_inactivation": {
                        "description": "Motivo da desativação da empresa",
                        "type": "string",
                        "nullable": true
                    },
                    "inactive_date": {
                        "description": "Data de desativação da empresa",
                        "type": "string",
                        "format": "date",
                        "nullable": true
                    },
                    "contact_id": {
                        "description": "ID do contato da empresa",
                        "type": "integer"
                    },
                    "company_origin_closure_id": {
                        "description": "ID de fechamento de origem da empresa",
                        "type": "string"
                    },
                    "partner_id": {
                        "description": "ID do parceiro da empresa",
                        "type": "integer",
                        "nullable": true
                    },
                    "relationship_level": {
                        "description": "Nível de relacionamento da empresa",
                        "type": "string",
                        "nullable": true
                    },
                    "company_curve": {
                        "description": "Curva da empresa",
                        "type": "string"
                    },
                    "company_capital": {
                        "description": "Capital da empresa",
                        "type": "string"
                    },
                    "company_origin": {
                        "description": "Origem da empresa",
                        "type": "string"
                    },
                    "has_contract_pj": {
                        "description": "Indica se a empresa tem contrato PJ",
                        "type": "integer"
                    },
                    "has_invoice_pj": {
                        "description": "Indica se a empresa emite nota fiscal PJ",
                        "type": "integer"
                    },
                    "flexible_benefits": {
                        "description": "Indica se a empresa oferece benefícios flexíveis",
                        "type": "integer"
                    },
                    "platform_flexible_benefits": {
                        "description": "Plataforma de benefícios flexíveis",
                        "type": "string",
                        "nullable": true
                    },
                    "company_payroll": {
                        "description": "Sistema de folha de pagamento da empresa",
                        "type": "string"
                    },
                    "has_outpost": {
                        "description": "Indica se a empresa tem posto de atendimento",
                        "type": "integer"
                    },
                    "has_doctor_company": {
                        "description": "Indica se a empresa tem médico no quadro",
                        "type": "integer"
                    },
                    "doctor_company": {
                        "description": "Quantidade de médicos na empresa",
                        "type": "integer"
                    },
                    "has_nursing_company": {
                        "description": "Indica se a empresa tem enfermeiros no quadro",
                        "type": "integer"
                    },
                    "nursing_company": {
                        "description": "Quantidade de enfermeiros na empresa",
                        "type": "integer"
                    },
                    "has_outpatient_company": {
                        "description": "Indica se a empresa tem atendimento ambulatorial",
                        "type": "integer"
                    },
                    "outpatient_company": {
                        "description": "Quantidade de atendimentos ambulatoriais",
                        "type": "integer"
                    },
                    "system_payroll": {
                        "description": "Sistema de folha de pagamento utilizado pela empresa",
                        "type": "string"
                    },
                    "type_visit": {
                        "description": "Tipo de visita",
                        "type": "integer"
                    },
                    "frequency_visit": {
                        "description": "Frequência de visita",
                        "type": "integer"
                    },
                    "company_type_index": {
                        "type": "array",
                        "items": {
                            "properties": {
                                "id": {
                                    "type": "integer"
                                }
                            },
                            "type": "object"
                        }
                    }
                },
                "type": "object"
            },
            "Staff": {
                "title": "Staff",
                "description": "Estrutura do staff de uma empresa, com IDs dos responsáveis por cada função",
                "properties": {
                    "id": {
                        "type": "integer",
                        "example": 1
                    },
                    "uuid": {
                        "type": "string",
                        "format": "uuid",
                        "example": "550e8400-e29b-41d4-a716-446655440000",
                        "nullable": true
                    },
                    "i_company_id": {
                        "type": "integer",
                        "example": 1,
                        "nullable": true
                    },
                    "company_id": {
                        "type": "integer",
                        "example": 13
                    },
                    "account_assistent": {
                        "description": "ID do assistente de contas",
                        "type": "integer",
                        "example": 25,
                        "nullable": true
                    },
                    "relationship_rc": {
                        "description": "ID do responsável de relacionamento RC",
                        "type": "integer",
                        "example": 12,
                        "nullable": true
                    },
                    "nurse": {
                        "description": "ID do enfermeiro",
                        "type": "integer",
                        "example": 8,
                        "nullable": true
                    },
                    "social_assistent": {
                        "description": "ID do assistente social",
                        "type": "integer",
                        "example": 15,
                        "nullable": true
                    },
                    "medical": {
                        "description": "ID do médico",
                        "type": "integer",
                        "example": 5,
                        "nullable": true
                    },
                    "psychologist": {
                        "description": "ID do psicólogo",
                        "type": "integer",
                        "example": 3,
                        "nullable": true
                    },
                    "nutritionist": {
                        "description": "ID do nutricionista",
                        "type": "integer",
                        "example": 9,
                        "nullable": true
                    },
                    "manager": {
                        "description": "ID do gerente",
                        "type": "integer",
                        "example": 2,
                        "nullable": true
                    },
                    "deleted_at": {
                        "type": "string",
                        "format": "date-time",
                        "example": null,
                        "nullable": true
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "example": "2025-01-09T13:17:59.000000Z"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time",
                        "example": null,
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "Dependent": {
                "required": [
                    "holder_id",
                    "document",
                    "name",
                    "birth_date",
                    "kinship_id",
                    "mothers_name",
                    "sex",
                    "civil_status",
                    "cellphone",
                    "email",
                    "sus_card",
                    "rg",
                    "issue_rg_date",
                    "issue_rg_org",
                    "issue_rg_state",
                    "zip_code",
                    "address",
                    "number",
                    "neighborhood",
                    "city",
                    "state",
                    "bank",
                    "bank_agency",
                    "bank_account",
                    "bank_account_type"
                ],
                "properties": {
                    "holder_id": {
                        "type": "string"
                    },
                    "document": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "birth_date": {
                        "type": "string"
                    },
                    "kinship_id": {
                        "type": "integer"
                    },
                    "mothers_name": {
                        "type": "string"
                    },
                    "sex": {
                        "type": "integer"
                    },
                    "civil_status": {
                        "type": "integer"
                    },
                    "wedding_date": {
                        "type": "string"
                    },
                    "phone": {
                        "type": "string"
                    },
                    "cellphone": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "sus_card": {
                        "type": "string"
                    },
                    "rg": {
                        "type": "string"
                    },
                    "issue_rg_date": {
                        "type": "string"
                    },
                    "issue_rg_org": {
                        "type": "string"
                    },
                    "issue_rg_state": {
                        "type": "string",
                        "maxLength": 3
                    },
                    "zip_code": {
                        "type": "string"
                    },
                    "address": {
                        "type": "string"
                    },
                    "number": {
                        "type": "string"
                    },
                    "complement": {
                        "type": "string"
                    },
                    "neighborhood": {
                        "type": "string"
                    },
                    "city": {
                        "type": "string"
                    },
                    "state": {
                        "type": "string",
                        "maxLength": 2
                    },
                    "bank": {
                        "type": "string"
                    },
                    "bank_agency": {
                        "type": "string"
                    },
                    "bank_account": {
                        "type": "string"
                    },
                    "bank_account_type": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string",
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "GroupCustomer": {
                "required": [
                    "name",
                    "is_active"
                ],
                "properties": {
                    "uuid": {
                        "description": "UUID do parceiro",
                        "type": "string",
                        "example": "123e4567-e89b-12d3-a456-426614174000"
                    },
                    "name": {
                        "description": "Nome do parceiro",
                        "type": "string",
                        "example": "MARCOS SANTIAGO"
                    },
                    "is_active": {
                        "description": "Status de ativação do parceiro",
                        "type": "string",
                        "example": "1"
                    }
                },
                "type": "object"
            },
            "Holder": {
                "required": [
                    "group_id",
                    "company_id",
                    "document",
                    "name",
                    "birth_date",
                    "mothers_name",
                    "sex",
                    "civil_status",
                    "cellphone",
                    "email",
                    "sus_card",
                    "rg",
                    "issue_rg_date",
                    "issue_rg_org",
                    "issue_rg_state",
                    "zip_code",
                    "address",
                    "number",
                    "neighborhood",
                    "city",
                    "state",
                    "bank",
                    "bank_agency",
                    "bank_account",
                    "bank_account_type",
                    "admission_date",
                    "corporate_email",
                    "wage"
                ],
                "properties": {
                    "group_id": {
                        "type": "string"
                    },
                    "company_id": {
                        "type": "string"
                    },
                    "document": {
                        "type": "string"
                    },
                    "name": {
                        "type": "string"
                    },
                    "birth_date": {
                        "type": "string"
                    },
                    "mothers_name": {
                        "type": "string"
                    },
                    "sex": {
                        "type": "integer"
                    },
                    "civil_status": {
                        "type": "integer"
                    },
                    "wedding_date": {
                        "type": "string"
                    },
                    "phone": {
                        "type": "string"
                    },
                    "cellphone": {
                        "type": "string"
                    },
                    "email": {
                        "type": "string"
                    },
                    "sus_card": {
                        "type": "string"
                    },
                    "rg": {
                        "type": "string"
                    },
                    "issue_rg_date": {
                        "type": "string"
                    },
                    "issue_rg_org": {
                        "type": "string"
                    },
                    "issue_rg_state": {
                        "type": "string",
                        "maxLength": 3
                    },
                    "zip_code": {
                        "type": "string"
                    },
                    "address": {
                        "type": "string"
                    },
                    "number": {
                        "type": "string"
                    },
                    "complement": {
                        "type": "string"
                    },
                    "neighborhood": {
                        "type": "string"
                    },
                    "city": {
                        "type": "string"
                    },
                    "state": {
                        "type": "string",
                        "maxLength": 2
                    },
                    "bank": {
                        "type": "string"
                    },
                    "bank_agency": {
                        "type": "string"
                    },
                    "bank_account": {
                        "type": "string"
                    },
                    "bank_account_type": {
                        "type": "string"
                    },
                    "employee_type": {
                        "type": "integer"
                    },
                    "cnpj": {
                        "type": "string"
                    },
                    "company_name": {
                        "type": "string"
                    },
                    "enrollment": {
                        "type": "string"
                    },
                    "cost_center": {
                        "type": "string"
                    },
                    "admission_date": {
                        "type": "string"
                    },
                    "corporate_celphone": {
                        "type": "string"
                    },
                    "role": {
                        "type": "string"
                    },
                    "corporate_phone": {
                        "type": "string"
                    },
                    "corporate_email": {
                        "type": "string"
                    },
                    "wage": {
                        "type": "string"
                    },
                    "deletion_date": {
                        "type": "string"
                    },
                    "status": {
                        "type": "string",
                        "nullable": true
                    }
                },
                "type": "object"
            },
            "Employees": {
                "required": [
                    "i_company_id",
                    "name",
                    "email",
                    "enrollment",
                    "document",
                    "rg",
                    "issue_rg_org",
                    "issue_rg_date",
                    "issue_rg_state",
                    "birth_date",
                    "zip_code",
                    "address",
                    "number",
                    "neighborhood",
                    "city",
                    "state",
                    "sex",
                    "group_acl_id",
                    "initial_wage",
                    "actual_wage",
                    "regime",
                    "health_plan",
                    "dental_plan",
                    "life_insurance",
                    "santander_bank_account",
                    "status",
                    "bank",
                    "bank_agency",
                    "bank_account",
                    "account_type"
                ],
                "properties": {
                    "i_company_id": {
                        "description": "ID DA EMPRESA INTERNA",
                        "type": "string",
                        "format": "uuid",
                        "example": "6bf9f359-a744-4b0a-8120-58dcd9c1fd7c"
                    },
                    "name": {
                        "description": "NOME DO FUNCIONARIO",
                        "type": "string",
                        "example": "JOÃO SILVA"
                    },
                    "email": {
                        "description": "EMAIL DO FUNCIONARIO",
                        "type": "string",
                        "format": "email",
                        "example": "joao.silva@humannitare.com.br"
                    },
                    "enrollment": {
                        "description": "MATRICULA DO FUNCIONARIO",
                        "type": "string",
                        "example": "1234123411"
                    },
                    "document": {
                        "description": "CPF DDO FUNCIONÁRIO",
                        "type": "string",
                        "example": "42176327896"
                    },
                    "rg": {
                        "description": "RG DO FUNCIONARIO",
                        "type": "string",
                        "example": "3612341234"
                    },
                    "issue_rg_org": {
                        "description": "ORGÃO EMISSOR DO RG DO FUNCIONARIO",
                        "type": "string",
                        "example": "SSP"
                    },
                    "issue_rg_state": {
                        "description": "UF DO RG DO FUNCIONARIO",
                        "type": "string",
                        "example": "SP"
                    },
                    "issue_rg_date": {
                        "description": "DATA DO ORGÃO EMISSOR DO RG DO FUNCIONARIO",
                        "type": "string",
                        "format": "date",
                        "example": "2021-05-10"
                    },
                    "birth_date": {
                        "description": "DATA DE NASCIMENTO",
                        "type": "string",
                        "format": "date",
                        "example": "1995-12-05"
                    },
                    "zip_code": {
                        "description": "CEP DO ENDEREÇO",
                        "type": "string",
                        "example": "03365-000"
                    },
                    "address": {
                        "description": "ENDEREÇO DO FUNCIONÁRIO",
                        "type": "string",
                        "example": "RUA OURICURI"
                    },
                    "number": {
                        "description": "NÚMERO DO ENDEREÇO DO FUNCIONÁRIO",
                        "type": "string",
                        "example": "65"
                    },
                    "complement": {
                        "description": "COMPLEMENTO",
                        "type": "string",
                        "example": "COMPLEMENTO ENDEREÇO É OPCIONAL"
                    },
                    "neighborhood": {
                        "description": "BAIRRO",
                        "type": "string",
                        "example": "VILA FORMOSA"
                    },
                    "city": {
                        "description": "CIDADE",
                        "type": "string",
                        "example": "SÃO PAULO"
                    },
                    "state": {
                        "description": "ESTADO",
                        "type": "string",
                        "example": "SSP"
                    },
                    "group_acl_id": {
                        "description": "ID DO GRUPO DE PERMISSAO DO ACL",
                        "type": "string",
                        "example": "1"
                    },
                    "sex": {
                        "description": "SEXO",
                        "type": "string",
                        "example": "M"
                    },
                    "initial_wage": {
                        "description": "SALARIO INICIAL",
                        "type": "string",
                        "example": "25544.44"
                    },
                    "actual_wage": {
                        "description": "SALARIO ATUAL",
                        "type": "string",
                        "example": "255556"
                    },
                    "regime": {
                        "description": "REGIME DE TRABALHO 0=CLT 1 PJ",
                        "type": "string",
                        "example": "1"
                    },
                    "health_plan": {
                        "description": "PLANO DE SAUDE",
                        "type": "string",
                        "example": "1"
                    },
                    "dental_plan": {
                        "description": "PLANO DENTAL",
                        "type": "string",
                        "example": "1"
                    },
                    "life_insurance": {
                        "description": "SEGURO DE VIDA",
                        "type": "string",
                        "example": "1"
                    },
                    "santander_bank_account": {
                        "type": "string",
                        "example": "1"
                    },
                    "status": {
                        "type": "string",
                        "example": "1"
                    },
                    "bank": {
                        "type": "string",
                        "example": "077"
                    },
                    "bank_agency": {
                        "type": "string",
                        "example": "3750"
                    },
                    "bank_account": {
                        "type": "string",
                        "example": "487929-5"
                    },
                    "account_type": {
                        "type": "string",
                        "example": "1"
                    },
                    "created_at": {
                        "type": "string",
                        "format": "date-time",
                        "example": "2024-02-07T14:30:00Z"
                    },
                    "updated_at": {
                        "type": "string",
                        "format": "date-time",
                        "example": "2024-02-07T14:30:00Z"
                    }
                },
                "type": "object"
            },
            "PartnerRule": {
                "properties": {
                    "rule_limit": {
                        "description": "Limite da regra",
                        "type": "integer",
                        "example": 10
                    },
                    "percentage": {
                        "description": "Porcentagem da regra",
                        "type": "integer",
                        "example": 10
                    },
                    "value": {
                        "description": "Valor associado à regra",
                        "type": "integer",
                        "example": 20
                    }
                },
                "type": "object"
            },
            "Partner": {
                "required": [
                    "name",
                    "zip_code",
                    "address",
                    "number",
                    "partner_type_id",
                    "bank_number",
                    "bank",
                    "agency",
                    "account",
                    "type_account",
                    "is_active"
                ],
                "properties": {
                    "uuid": {
                        "description": "UUID do parceiro",
                        "type": "string",
                        "example": "123e4567-e89b-12d3-a456-426614174000"
                    },
                    "name": {
                        "description": "Nome do parceiro",
                        "type": "string",
                        "example": "MARCOS SANTIAGO"
                    },
                    "zip_code": {
                        "description": "CEP do parceiro",
                        "type": "string",
                        "example": "03365-000"
                    },
                    "address": {
                        "description": "Endereço do parceiro",
                        "type": "string",
                        "example": "RUA OURICURI"
                    },
                    "number": {
                        "description": "Número do endereço do parceiro",
                        "type": "string",
                        "example": "210"
                    },
                    "complement": {
                        "description": "Complemento do endereço",
                        "type": "string",
                        "example": "FUNDOS"
                    },
                    "neighborhood": {
                        "description": "Bairro do parceiro",
                        "type": "string",
                        "example": "VILA FORMOSA"
                    },
                    "city": {
                        "description": "Cidade do parceiro",
                        "type": "string",
                        "example": "SÃO PAULO"
                    },
                    "state": {
                        "description": "Estado do parceiro",
                        "type": "string",
                        "example": "SP"
                    },
                    "partner_type_id": {
                        "description": "ID do tipo de parceiro",
                        "type": "string",
                        "example": "1"
                    },
                    "bank": {
                        "description": "Nome do banco",
                        "type": "string",
                        "example": "BRADESCO SA"
                    },
                    "bank_agency": {
                        "description": "Número da agência bancária",
                        "type": "string",
                        "example": "3750"
                    },
                    "bank_account": {
                        "description": "Número da conta bancária",
                        "type": "string",
                        "example": "1000100"
                    },
                    "type_account": {
                        "description": "Tipo de conta (1 = Conta Corrente, 2 = Conta Poupança)",
                        "type": "string",
                        "example": "1"
                    },
                    "is_active": {
                        "description": "Status de ativação do parceiro",
                        "type": "string",
                        "example": "1"
                    },
                    "rule": {
                        "$ref": "#/components/schemas/PartnerRule"
                    }
                },
                "type": "object"
            },
            "Product": {
                "required": [
                    "name",
                    "vendor_id",
                    "product_type_id",
                    "product_port"
                ],
                "properties": {
                    "name": {
                        "description": "Nome do Produto",
                        "type": "string"
                    },
                    "vendor_id": {
                        "description": "ID do fornecedor",
                        "type": "string"
                    },
                    "product_type_id": {
                        "description": "ID do Tipo de produto",
                        "type": "string"
                    },
                    "product_port": {
                        "description": "Porte do produto 0 = PME e 1 = Empresarial",
                        "type": "string"
                    },
                    "is_active": {
                        "description": "Status de ativação do produto",
                        "type": "string"
                    },
                    "healthDetail": {
                        "$ref": "#/components/schemas/HealthProductDetail"
                    },
                    "dentalDetail": {
                        "$ref": "#/components/schemas/DentalProductDetail"
                    },
                    "lifeDetail": {
                        "$ref": "#/components/schemas/LifeProductDetail"
                    },
                    "travelDetail": {
                        "$ref": "#/components/schemas/TravelProductDetail"
                    },
                    "ticketDetail": {
                        "$ref": "#/components/schemas/TicketProductDetail"
                    },
                    "loanDetail": {
                        "$ref": "#/components/schemas/LoanProductDetail"
                    },
                    "previdentiaryDetail": {
                        "$ref": "#/components/schemas/PrevidentiaryProductDetail"
                    },
                    "physicalDetail": {
                        "$ref": "#/components/schemas/PhysicalProductDetail"
                    }
                },
                "type": "object"
            },
            "HealthProductDetail": {
                "properties": {
                    "plan_name": {
                        "type": "string"
                    },
                    "accommodation": {
                        "type": "string"
                    },
                    "coverage": {
                        "type": "string"
                    },
                    "copay": {
                        "type": "string"
                    },
                    "refund": {
                        "type": "string"
                    },
                    "category": {
                        "type": "string"
                    },
                    "grace_holder_inclusion": {
                        "type": "string"
                    },
                    "grace_partner_inclusion": {
                        "type": "string"
                    },
                    "grace_children_inclusion": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "DentalProductDetail": {
                "properties": {
                    "plan_name": {
                        "type": "string"
                    },
                    "plan_value": {
                        "type": "string"
                    },
                    "plan_type": {
                        "type": "string"
                    },
                    "coverage": {
                        "type": "string"
                    },
                    "copay": {
                        "type": "string"
                    },
                    "refund": {
                        "type": "string"
                    },
                    "category": {
                        "type": "string"
                    },
                    "grace_holder_inclusion": {
                        "type": "string"
                    },
                    "grace_partner_inclusion": {
                        "type": "string"
                    },
                    "grace_children_inclusion": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "LifeProductDetail": {
                "properties": {
                    "tax": {
                        "type": "string"
                    },
                    "standard_coverage": {
                        "type": "string"
                    },
                    "accessories_coverage": {
                        "type": "string"
                    },
                    "sc_daily_by_incapacity_days_contracteds": {
                        "type": "string"
                    },
                    "sc_daily_by_incapacity_franchise": {
                        "type": "string"
                    },
                    "sc_daily_by_incapacity_values": {
                        "type": "string"
                    },
                    "assistence_coverage": {
                        "type": "string"
                    },
                    "ac_type_funeral_assistence": {
                        "type": "string"
                    },
                    "ac_basic_basket_time": {
                        "type": "string"
                    },
                    "ac_basic_basket_value": {
                        "type": "string"
                    },
                    "ac_telemedicine_supplier": {
                        "type": "string"
                    },
                    "ac_telemedicine_limits": {
                        "type": "string"
                    },
                    "ac_pharmacy_discount": {
                        "type": "string"
                    },
                    "ac_birth_kit": {
                        "type": "string"
                    },
                    "capital_type": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "TravelProductDetail": {
                "properties": {
                    "plan_name": {
                        "type": "string"
                    },
                    "plan_value": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "TicketProductDetail": {
                "properties": {
                    "plan_name": {
                        "type": "string"
                    },
                    "plan_type": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "LoanProductDetail": {
                "properties": {
                    "plan_name": {
                        "type": "string"
                    },
                    "plan_type": {
                        "type": "string"
                    }
                },
                "type": "object"
            },
            "PrevidentiaryProductDetail": {
                "properties": {
                    "investiment_fund": {
                        "type": "string"
                    },
                    "fund_taf": {
                        "type": "string"
                    },
                    "fund_manager": {
                        "type": "string"
                    },
                    "hierarchy_group": {
                        "type": "string"
                    },
                    "tax_upon_redemption": {
                        "type": "string"
                    },
                    "income": {
                        "type": "number",
                        "format": "double"
                    },
                    "peculio": {
                        "type": "number",
                        "format": "double"
                    }
                },
                "type": "object"
            },
            "PhysicalProductDetail": {
                "properties": {
                    "plan_name": {
                        "type": "string"
                    },
                    "plan_type": {
                        "type": "string"
                    },
                    "plan_value": {
                        "type": "number",
                        "format": "double"
                    }
                },
                "type": "object"
            },
            "SLA": {
                "required": [
                    "sla_type_id",
                    "type_integration_id",
                    "business_operator",
                    "pme_operator",
                    "humanittare"
                ],
                "properties": {
                    "uuid": {
                        "description": "UUID do SLA",
                        "type": "string"
                    },
                    "sla_type_id": {
                        "description": "ID do tipo de solicitação - Ex: segunda via de carteirinha",
                        "type": "string"
                    },
                    "type_integration_id": {
                        "description": "0 = Email - 1 - Arquivos - 2 API",
                        "type": "string"
                    },
                    "documents": {
                        "description": "Lista de documentos",
                        "type": "array",
                        "items": {
                            "properties": {
                                "id": {
                                    "description": "ID do documento",
                                    "type": "integer"
                                },
                                "nome": {
                                    "description": "Nome do documento",
                                    "type": "string"
                                }
                            },
                            "type": "object"
                        }
                    },
                    "sla": {
                        "description": "Detalhes do SLA",
                        "properties": {
                            "business_operator": {
                                "description": "Operador de negócios",
                                "type": "integer"
                            },
                            "pme_operator": {
                                "description": "Operador PME",
                                "type": "integer"
                            },
                            "humanittare": {
                                "description": "SLA Humanittare",
                                "type": "integer"
                            }
                        },
                        "type": "object"
                    }
                },
                "type": "object"
            },
            "Vendor": {
                "required": [
                    "name",
                    "document",
                    "branch_company",
                    "operating_radius",
                    "iof_previous",
                    "iof_current",
                    "is_active"
                ],
                "properties": {
                    "name": {
                        "description": "Nome do fornecedor",
                        "type": "string"
                    },
                    "document": {
                        "description": "Documento do fornecedor",
                        "type": "string"
                    },
                    "branch_company": {
                        "description": "Filial da empresa",
                        "type": "string"
                    },
                    "operating_radius": {
                        "description": "Raio de operação",
                        "type": "string"
                    },
                    "iof_previous": {
                        "description": "IOF anterior",
                        "type": "string"
                    },
                    "iof_current": {
                        "description": "IOF atual",
                        "type": "string"
                    },
                    "i_company_id": {
                        "description": "ID da empresa associada",
                        "type": "string"
                    },
                    "is_active": {
                        "description": "Status de ativação do fornecedor",
                        "type": "string"
                    }
                },
                "type": "object"
            }
        },
        "responses": {
            "200": {
                "description": "Simulation page"
            }
        },
        "parameters": {
            "id": {
                "name": "id",
                "in": "path",
                "required": true,
                "schema": {
                    "type": "string"
                }
            },
            "page": {
                "name": "page",
                "in": "query",
                "schema": {
                    "type": "integer",
                    "default": 1
                }
            },
            "per_page": {
                "name": "per_page",
                "in": "query",
                "schema": {
                    "type": "integer",
                    "default": 25
                }
            }
        },
        "securitySchemes": {
            "bearerAuth": {
                "type": "http",
                "description": "Insira o token JWT no campo de autorização. Formato: 'Bearer {token}'",
                "bearerFormat": "JWT",
                "scheme": "bearer"
            }
        }
    },
    "tags": [
        {
            "name": "Brokers",
            "description": "Endpoints relacionados as Corretoras"
        },
        {
            "name": "Products",
            "description": "Endpoints relacionados aos produtos"
        },
        {
            "name": "ContractProductConditions",
            "description": "Endpoints para gerenciar Condições dos produtos de contratos"
        },
        {
            "name": "ContractProductContributions",
            "description": "Endpoints para gerenciar Contribuições dos produtos de contratos"
        },
        {
            "name": "ContractProductCopays",
            "description": "Endpoints para gerenciar Copays dos produtos de contratos"
        },
        {
            "name": "Contracts",
            "description": "Endpoints relacionados aos Contractos"
        },
        {
            "name": "CompaniesContacts",
            "description": "Endpoints relacionados aos Contatos das Empresas"
        },
        {
            "name": "Companies",
            "description": "Gerenciamento de Empresas"
        },
        {
            "name": "Dependents",
            "description": "Endpoints relacionados aos Dependentes de um Titular"
        },
        {
            "name": "Holders",
            "description": "Endpoints relacionados aos Titulares"
        },
        {
            "name": "Partners",
            "description": "Endpoints relacionados aos Parceiros"
        },
        {
            "name": "Request Criticas",
            "description": "Endpoints relacionados às críticas de solicitações"
        },
        {
            "name": "Requests",
            "description": "Endpoints relacionados às solicitações"
        },
        {
            "name": "SLA",
            "description": "Endpoints relacionados aos SLAs em produtos"
        },
        {
            "name": "ACL",
            "description": "ACL"
        },
        {
            "name": "Auth",
            "description": "Auth"
        },
        {
            "name": "Empresas",
            "description": "Empresas"
        },
        {
            "name": "Imports - Debug",
            "description": "Imports - Debug"
        },
        {
            "name": "GroupCustomer",
            "description": "GroupCustomer"
        },
        {
            "name": "Imports",
            "description": "Imports"
        },
        {
            "name": "Employees",
            "description": "Employees"
        },
        {
            "name": "Internal Companies",
            "description": "Internal Companies"
        },
        {
            "name": "Parceiros",
            "description": "Parceiros"
        },
        {
            "name": "Reports",
            "description": "Reports"
        },
        {
            "name": "Benefits - Onboarding",
            "description": "Benefits - Onboarding"
        },
        {
            "name": "Services",
            "description": "Services"
        },
        {
            "name": "IBGE",
            "description": "IBGE"
        },
        {
            "name": "Vendors - Products",
            "description": "Vendors - Products"
        },
        {
            "name": "Parentescos",
            "description": "Parentescos"
        },
        {
            "name": "Users",
            "description": "Users"
        },
        {
            "name": "Vendors",
            "description": "Vendors"
        }
    ]
}