> ## Documentation Index
> Fetch the complete documentation index at: https://developers.pontua.com.br/llms.txt
> Use this file to discover all available pages before exploring further.

# Atualiza as configurações de horas negativas de uma regra de ponto



## OpenAPI

````yaml https://api.pre.pontua.tech/api/public/doc-json patch /regras-de-ponto/{regraDePontoId}/configuracao/mista/horas-negativas
openapi: 3.0.0
info:
  title: Pontua Public API
  description: >-
    API oficial da Pontua para integrações de clientes externos. Autentique com
    o token gerado no dashboard em **Configurações → API**. Envie o token no
    header `Authorization: Bearer <SEU_TOKEN>`.
  version: '1.0'
  contact: {}
servers: []
security: []
tags: []
paths:
  /regras-de-ponto/{regraDePontoId}/configuracao/mista/horas-negativas:
    patch:
      tags:
        - Regras de ponto
      summary: Atualiza as configurações de horas negativas de uma regra de ponto
      operationId: RegrasDePontoController_AtualizarHorasNegativas
      parameters:
        - name: regraDePontoId
          required: true
          in: path
          description: ID da Regra
          schema:
            type: string
      requestBody:
        required: true
        description: Dados para atualização da configuração
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/HorasNegativas'
            examples:
              Default:
                value:
                  horasNegativas: PERSONALIZADO
                  limitesDistribuicao:
                    - periodoRegra: DIA_DE_TRABALHO
                      percentualAvancado:
                        - posicao: 0
                          limite: '02:00'
                          percentualDistribuicaoBH: 1
                          percentualDistribuicaoHE: 0
                        - posicao: 1
                          limite: '00:00'
                          percentualDistribuicaoBH: 0.5
                          percentualDistribuicaoHE: 0.5
                  controlarMeiaFalta: true
                  percentualMeiaFalta: 0.5
                  parametroControleMeiaFalta: FALTA_DIAS
                  lancarFaltas: PERSONALIZADO
                  lancarMeiaFalta: PERSONALIZADO
                  lancarAtrasos: PERSONALIZADO
                  utilizarConfiguracaoAvancadaAusencias: true
                  configuracaoAvancadaAusencias:
                    - motivoAjusteRegistroId: e261fdaa-70f0-49c1-b222-dd75f84f2377
                      lancar: BANCO_DE_HORAS
      responses:
        '200':
          description: Regra atualizada
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetHorasNegativas'
              examples:
                Default:
                  value:
                    horasNegativas: PERSONALIZADO
                    limitesDistribuicao:
                      - periodoRegra: DIA_DE_TRABALHO
                        percentualAvancado:
                          - posicao: 0
                            limite: '02:00'
                            percentualDistribuicaoBH: 1
                            percentualDistribuicaoHE: 0
                          - posicao: 1
                            limite: '00:00'
                            percentualDistribuicaoBH: 0.5
                            percentualDistribuicaoHE: 0.5
                    controlarMeiaFalta: true
                    percentualMeiaFalta: 0.5
                    parametroControleMeiaFalta: FALTA_DIAS
                    lancarFaltas: PERSONALIZADO
                    lancarMeiaFalta: PERSONALIZADO
                    lancarAtrasos: PERSONALIZADO
                    utilizarConfiguracaoAvancadaAusencias: true
                    configuracaoAvancadaAusencias:
                      - motivoAjusteRegistroId: e261fdaa-70f0-49c1-b222-dd75f84f2377
                        lancar: BANCO_DE_HORAS
        default:
          description: "\n\t\t\t400 - Bad Request: A solicitação não está no formato correto.\n\t\t\t401 - Unauthorized: A solicitação não foi autorizada. Verifique se o token de acesso é válido.\n\t\t\t403 - Forbidden: Acesso proibido! Requer um nível de permissão mais elevado.\n\t\t\t404 - Not Found: O recurso solicitado não foi encontrado.\n\t\t\t500 - Internal Server Error: Erro de execução no servidor!\n\t\t\t"
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorDto'
      deprecated: false
      security:
        - bearer: []
components:
  schemas:
    HorasNegativas:
      type: object
      properties:
        horasNegativas:
          type: string
          description: Tipo de configuração de hroas negativas
          enum:
            - BANCO_E_FOLHA
            - PERSONALIZADO
          default: PERSONALIZADO
        limitesDistribuicao:
          description: Array de Limites e distribuição de horas negativas
          type: array
          items:
            $ref: '#/components/schemas/LimitesDistribuicaoHorasNegativasDto'
        controlarMeiaFalta:
          type: boolean
          description: Controlar meia falta por percentual da carga horária
          example: true
        percentualMeiaFalta:
          type: number
          description: Valor do percentual de meia falta
          example: 0.5
          minimum: 0.01
          maximum: 1
        parametroControleMeiaFalta:
          type: string
          description: Parametro de controle tipo de meia falta
          enum:
            - FALTA_DIAS
            - FALTA_HORAS
          default: FALTA_DIAS
        lancarFaltas:
          type: string
          description: 'Lançar faltas em:'
          enum:
            - BANCO_DE_HORAS
            - FOLHA_DE_PONTO
            - PERSONALIZADO
          default: PERSONALIZADO
        lancarMeiaFalta:
          type: string
          description: 'Lançar meia falta em:'
          enum:
            - BANCO_DE_HORAS
            - FOLHA_DE_PONTO
            - PERSONALIZADO
          default: PERSONALIZADO
        lancarAtrasos:
          type: string
          description: 'Lançar atrasos em:'
          enum:
            - BANCO_DE_HORAS
            - FOLHA_DE_PONTO
            - PERSONALIZADO
          default: PERSONALIZADO
        utilizarConfiguracaoAvancadaAusencias:
          type: boolean
          description: Utilizar configuração personalizada para motivos de ausência
          example: true
        configuracaoAvancadaAusencias:
          description: Array de Motivos por lançamento de ausência
          type: array
          items:
            $ref: '#/components/schemas/ConfiguracaoAvancadaAusenciasDto'
      required:
        - horasNegativas
        - limitesDistribuicao
        - controlarMeiaFalta
        - parametroControleMeiaFalta
        - lancarFaltas
        - lancarMeiaFalta
        - lancarAtrasos
        - utilizarConfiguracaoAvancadaAusencias
        - configuracaoAvancadaAusencias
    GetHorasNegativas:
      type: object
      properties:
        horasNegativas:
          type: string
          description: Tipo de configuração de hroas negativas
          enum:
            - BANCO_E_FOLHA
            - PERSONALIZADO
          default: PERSONALIZADO
        limitesDistribuicao:
          description: Array de Limites e distribuição de horas negativas
          type: array
          items:
            $ref: '#/components/schemas/LimitesDistribuicaoHorasNegativasDto'
        controlarMeiaFalta:
          type: boolean
          description: Controlar meia falta por percentual da carga horária
          example: true
        percentualMeiaFalta:
          type: number
          description: Valor do percentual de meia falta
          example: 0.5
          minimum: 0.01
          maximum: 1
        parametroControleMeiaFalta:
          type: string
          description: Parametro de controle tipo de meia falta
          enum:
            - FALTA_DIAS
            - FALTA_HORAS
          default: FALTA_DIAS
        lancarFaltas:
          type: string
          description: 'Lançar faltas em:'
          enum:
            - BANCO_DE_HORAS
            - FOLHA_DE_PONTO
            - PERSONALIZADO
          default: PERSONALIZADO
        lancarMeiaFalta:
          type: string
          description: 'Lançar meia falta em:'
          enum:
            - BANCO_DE_HORAS
            - FOLHA_DE_PONTO
            - PERSONALIZADO
          default: PERSONALIZADO
        lancarAtrasos:
          type: string
          description: 'Lançar atrasos em:'
          enum:
            - BANCO_DE_HORAS
            - FOLHA_DE_PONTO
            - PERSONALIZADO
          default: PERSONALIZADO
        utilizarConfiguracaoAvancadaAusencias:
          type: boolean
          description: Utilizar configuração personalizada para motivos de ausência
          example: true
        configuracaoAvancadaAusencias:
          description: Array de Motivos por lançamento de ausência
          type: array
          items:
            $ref: '#/components/schemas/ConfiguracaoAvancadaAusenciasDto'
        regraDePontoId:
          type: string
          description: Id da Regra de ponto
          example: regraDePontoId-id
        tipoRegrasDePonto:
          type: string
          description: Tipo da regra de ponto
          enum:
            - HORAS_EXTRAS
            - BANCO_DE_HORAS
            - MISTO
          default: MISTO
        step:
          type: string
          description: Proximo step de configuração
          enum:
            - CONFIG_HORA_EXTRA
            - CONFIG_BANCO_HORAS
            - CONFIG_MISTO
            - HORAS_NEGATIVAS
            - FLEXIBILIDADE_TOLERANCIA
            - ADICIONAL_NOTURNO
            - DSR
            - TOLERANCIA
            - IDENTIFICACAO
            - CONCLUIDO
          default: FLEXIBILIDADE_TOLERANCIA
      required:
        - horasNegativas
        - limitesDistribuicao
        - controlarMeiaFalta
        - parametroControleMeiaFalta
        - lancarFaltas
        - lancarMeiaFalta
        - lancarAtrasos
        - utilizarConfiguracaoAvancadaAusencias
        - configuracaoAvancadaAusencias
        - regraDePontoId
        - tipoRegrasDePonto
        - step
    ErrorDto:
      type: object
      properties:
        service:
          type: string
          description: Rota solicitada
        method:
          type: string
          description: Método http
        message:
          description: Mensagem do erro
          oneOf:
            - type: string
              example: message erro
            - type: array
              items:
                type: string
                example:
                  - erro 1
                  - erro 2
      required:
        - service
        - method
        - message
    LimitesDistribuicaoHorasNegativasDto:
      type: object
      properties:
        periodoRegra:
          type: string
          description: Classificação do periodo da regra avançada
          enum:
            - TODOS_OS_DIAS
            - DIA_DE_TRABALHO
            - FERIADOS
            - SABADO_DOMINGO_E_FERIADOS
            - SEMANAL
            - SEGUNDA
            - TERCA
            - QUARTA
            - QUINTA
            - SEXTA
            - SABADO
            - DOMINGO
            - MENSAL
            - FOLGA
            - INTERVALO
          default: DIA_DE_TRABALHO
        percentualAvancado:
          description: Array de limites e percentuais
          example:
            - posicao: 0
              limite: '01:00'
              percentualDistribuicaoBH: 1
              percentualDistribuicaoHE: 0
            - posicao: 1
              limite: '01:00'
              percentualDistribuicaoBH: 0.5
              percentualDistribuicaoHE: 0.5
            - posicao: 2
              limite: '00:00'
              percentualDistribuicaoBH: 0
              percentualDistribuicaoHE: 1
          type: array
          items:
            $ref: '#/components/schemas/PercentualAvancado'
      required:
        - periodoRegra
        - percentualAvancado
    ConfiguracaoAvancadaAusenciasDto:
      type: object
      properties:
        motivoAjusteRegistroId:
          type: string
          description: Id do motivo de ajuste de registro
          example: motivoAjusteRegistroId-id
        lancar:
          type: string
          description: Modelo de lançamento
          enum:
            - BANCO_DE_HORAS
            - FOLHA_DE_PONTO
          default: BANCO_DE_HORAS
      required:
        - motivoAjusteRegistroId
        - lancar
    PercentualAvancado:
      type: object
      properties:
        posicao:
          type: number
          description: Posição do percentual no array
          example: 0
        percentual:
          type: number
          description: Valor do percentual de acréscimo de hora
          example: 0.5
        limite:
          type: string
          description: Quantidade de horas do percentual no formato hh:mm
          example: '02:00'
      required:
        - posicao
        - percentual

````