> ## 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.

# Cria ajustes de registro de ponto em massa



## OpenAPI

````yaml https://api.pre.pontua.tech/api/public/doc-json post /ajuste-registro
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:
  /ajuste-registro:
    post:
      tags:
        - Ajustes Registro
      summary: Cria ajustes de registro de ponto em massa
      operationId: AjusteRegistroController_AjustarRegistro
      parameters: []
      requestBody:
        required: true
        description: Formato do ajuste de registro
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AjusteRegistroRequisicaoDto'
            examples:
              Intervalo de horário:
                value:
                  colaboradorIds:
                    - 123-abc
                  jornada: 01/01/2024
                  formato: INTERVALO_HORARIO
                  descricao: Exemplo de formato intervalo de horário das 8:00 às 9:00
                  motivoId: 123-abc
                  minMinutos: 480
                  maxMinutos: 720
              Tempo faltante:
                value:
                  colaboradorIds:
                    - 123-abc
                  jornada: 01/01/2024
                  jornadas:
                    - 01/01/2024
                    - 02/01/2024
                  formato: TEMPO_FALTANTE
                  descricao: Exemplo de formato tempo faltante
                  motivoId: 123-abc
              Edição de registros:
                value:
                  colaboradorIds:
                    - 123-abc
                  jornada: 01/01/2024
                  formato: REGISTRO_PONTO
                  descricao: >-
                    Exemplo de formato edição de registros, mantendo o primeiro
                    registro
                  motivoId: 123-abc
                  registrosPropostos:
                    - dataHora: '2024-01-01T18:30:00.000Z'
                    - dataHora: '2024-01-01T13:00:00.000Z'
                    - dataHora: '2024-01-01T12:00:00.000Z'
                    - registroHash: >-
                        28f42662becededb5c16d88042a933568ec31ca22d3286398d416d721ec65485
                      dataHora: '2024-01-01T07:59:00.000Z'
              Intervalo de datas:
                value:
                  colaboradorIds:
                    - 123-abc
                  jornada: 01/01/2024
                  formato: INTERVALO_DATAS
                  descricao: Exemplo de formato intervalo de datas no mês de janeiro
                  motivoId: 123-abc
                  minPeriodo: 01/01/2024
                  maxPeriodo: 31/01/2024
              Intervalo de datas, mantendo os dados originais da jornada:
                value:
                  colaboradorIds:
                    - 123-abc
                  jornada: 01/01/2024
                  formato: INTERVALO_DATAS
                  descricao: >-
                    Exemplo de formato intervalo de datas, mantendo o saldo e
                    outros dados de frequência, no mês de janeiro
                  motivoId: 123-abc
                  minPeriodo: 01/01/2024
                  maxPeriodo: 31/01/2024
                  considerarRegistroRealizado: true
              Intervalo de datas com anexo:
                value:
                  colaboradorIds:
                    - 123-abc
                  jornada: 01/01/2024
                  formato: INTERVALO_DATAS
                  descricao: >-
                    Exemplo de formato intervalo de datas no mês de janeiro, com
                    anexo
                  motivoId: 123-abc
                  minPeriodo: 01/01/2024
                  maxPeriodo: 31/01/2024
                  anexos:
                    - nome: atestado.pdf
                      base64: dGVzdA==
              Intervalo de datas, em massa:
                value:
                  colaboradorIds:
                    - 123-abc
                    - 456-def
                  jornada: 01/01/2024
                  formato: INTERVALO_DATAS
                  descricao: >-
                    Exemplo de formato intervalo de datas no mês de janeiro,
                    para dois colaboradores
                  motivoId: 123-abc
                  minPeriodo: 01/01/2024
                  maxPeriodo: 01/01/2024
                  titulo: Confraternização da firma
              Férias:
                value:
                  colaboradorIds:
                    - 123-abc
                  jornada: 01/01/2024
                  formato: INTERVALO_DATAS
                  descricao: Exemplo de férias
                  minPeriodo: 01/01/2024
                  maxPeriodo: 31/01/2024
                  ferias: true
      responses:
        '201':
          description: Ajuste criado
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AjusteRegistroRespostaDto'
        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:
    AjusteRegistroRequisicaoDto:
      type: object
      properties:
        jornada:
          type: string
          description: Data da jornada de trabalho (dd/MM/yyyy)
          example: 01/01/2024
        formato:
          type: string
          description: Formato do ajuste
          default: REGISTRO_PONTO
          enum:
            - INTERVALO_DATAS
            - INTERVALO_HORARIO
            - TEMPO_FALTANTE
            - REGISTRO_PONTO
        descricao:
          type: string
          description: Uma descrição da razão do ajuste
          example: Atestado
        motivoId:
          type: string
          description: >-
            ID do motivo do ajuste. Obrigatório caso não seja um ajuste de
            férias
          example: 123-456abc
        anexos:
          description: Arquivos em anexo
          type: array
          items:
            $ref: '#/components/schemas/ArquivoRequisicaoDto'
        jornadas:
          description: >-
            Datas de jornadas de trabalho (dd/MM/yyyy), caso formato tempo
            faltante
          example: 01/01/2024
          type: array
          items:
            type: string
        minPeriodo:
          type: string
          description: >-
            Data inicial do periodo de ajuste (dd/MM/yyyy), caso formato
            intervalo de datas
          example: 01/05/2024
        maxPeriodo:
          type: string
          description: >-
            Data final do periodo de ajuste (dd/MM/yyyy), caso formato intervalo
            de datas
          example: 31/05/2024
        minMinutos:
          type: number
          description: >-
            Horário inicial, em minutos, para o ajuste, caso formato intervalo
            de horário
          example: 480
        maxMinutos:
          type: number
          description: >-
            Horário final, em minutos, para o ajuste, caso formato intervalo de
            horário
          example: 720
        considerarRegistroRealizado:
          type: boolean
          description: >-
            Considerar o saldo dos registros realizados no período, caso formato
            intervalo de datas
          example: false
        registrosPropostos:
          description: >-
            Registros de ponto propostos, para o ajuste, caso formato inclusão
            de registros de ponto
          type: array
          items:
            $ref: '#/components/schemas/RegistroAjustePropostoDto'
        colaboradorIds:
          description: ID do colaborador
          example:
            - 123-456abc
          type: array
          items:
            type: string
        ferias:
          type: boolean
          description: Indica se o ajuste é de férias
          example: false
        titulo:
          type: string
          description: Título do ajuste
          example: Confraternização da firma
      required:
        - jornada
        - formato
        - descricao
        - colaboradorIds
    AjusteRegistroRespostaDto:
      type: object
      properties:
        ajusteRegistroId:
          type: string
          description: ID do ajuste
          example: 123-456abc
        codigo:
          type: number
          description: Código do ajuste
          example: 1
        jornada:
          type: string
          description: ISO string da data da jornada de trabalho (dd/MM/yyyy)
          example: '2024-01-01T00:00:00.000Z'
        status:
          type: string
          description: Status do ajuste
          default: APROVADO
          enum:
            - APROVADO
            - PENDENTE
            - CANCELADO
            - REJEITADO
        formato:
          type: string
          description: Formato do ajuste
          default: REGISTRO_PONTO
          enum:
            - INTERVALO_DATAS
            - INTERVALO_HORARIO
            - TEMPO_FALTANTE
            - REGISTRO_PONTO
        motivo:
          description: Motivo do ajuste
          allOf:
            - $ref: '#/components/schemas/MotivoAjusteDto'
        descricao:
          type: string
          description: Uma descrição da razão do ajuste
          example: Atestado
        titulo:
          type: string
          description: Título do ajuste
          example: Confraternização da firma
        jornadas:
          description: >-
            ISO string das datas de jornadas de trabalho (dd/MM/yyyy), caso
            formato tempo faltante
          example:
            - '2024-01-01T00:00:00.000Z'
            - '2024-01-02T00:00:00.000Z'
          type: array
          items:
            type: string
        minPeriodo:
          type: string
          description: >-
            ISO string da data inicial do periodo de ajuste (dd/MM/yyyy), caso
            formato intervalo de datas
          example: '2024-01-01T00:00:00.000Z'
        maxPeriodo:
          type: string
          description: >-
            ISO string da data final do periodo de ajuste (dd/MM/yyyy), caso
            formato intervalo de datas
          example: '2024-05-31T00:00:00.000Z'
        minMinutos:
          type: number
          description: >-
            Horário inicial, em minutos, para o ajuste, caso formato intervalo
            de horário
          example: 480
        maxMinutos:
          type: number
          description: >-
            Horário final, em minutos, para o ajuste, caso formato intervalo de
            horário
          example: 720
        considerarRegistroRealizado:
          type: boolean
          description: >-
            Considerar o saldo dos registros realizados no período, caso formato
            intervalo de datas
          example: false
        tempoFaltante:
          type: string
          description: >-
            Quantidade de horas utilizadas para zerar o saldo, caso formato
            tempo faltante
          example: '+04:48'
        ferias:
          type: boolean
          description: Indica se o ajuste é de férias
          example: false
        registrosPropostos:
          description: >-
            Registros de ponto propostos, para o ajuste, caso formato inclusão
            de registros de ponto
          type: array
          items:
            $ref: '#/components/schemas/RegistroAjustePropostoDto'
        anexos:
          description: Arquivos em anexo
          type: array
          items:
            $ref: '#/components/schemas/ArquivoRespostaDto'
        nomeGestor:
          type: string
          description: Nome do gestor
          example: Nelson da Silva
        observacaoGestor:
          type: string
          description: Observação do gestor
          example: Não se esqueça novamente de registrar ponto
        colaboradores:
          description: Colaboradores vinculados ao ajuste
          type: array
          items:
            $ref: '#/components/schemas/AjusteRegistroColaboradorDto'
        createdAt:
          format: date-time
          type: string
          description: Data de criação do ajuste
          example: '2023-07-23T00:00:00.000Z'
        updatedAt:
          format: date-time
          type: string
          description: Data de atualização do ajuste
          example: '2023-07-23T00:00:00.000Z'
        frequenciaDiariaJornada:
          description: Frequência diária da jornada, caso formato registro de ponto
          allOf:
            - $ref: '#/components/schemas/FrequenciaDiariaDto'
      required:
        - ajusteRegistroId
        - codigo
        - jornada
        - status
        - formato
        - descricao
        - createdAt
        - updatedAt
    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
    ArquivoRequisicaoDto:
      type: object
      properties:
        arquivoId:
          type: string
          description: ID do arquivo
          example: 123-456abc
        nome:
          type: string
          description: Nome do arquivo
          example: comprovante.pdf
        base64:
          type: string
          description: Base64 do arquivo
          example: dGVzdA==
      required:
        - nome
        - base64
    RegistroAjustePropostoDto:
      type: object
      properties:
        registroHash:
          type: string
          description: Código hash referente a um registro de ponto que será mantido
          example: c0fc3c713f09a43384ac08f7d91fca430dcbc6466fff9284ce4571bdc2c8f9f9
        dataHora:
          type: string
          description: Data e horário
          example: '2024-05-02T14:22:43.230Z'
          format: date-time
      required:
        - dataHora
    MotivoAjusteDto:
      type: object
      properties:
        motivoAjusteRegistroId:
          type: string
          description: ID do motivo de ajuste
          example: 123-456abc
        descricao:
          type: string
          description: Descrição do motivo de ajuste
          example: Esqueceu de registrar o ponto
        tipo:
          type: string
          description: Tipo de registro de ponto online
          default: ABONO
          enum:
            - ABONO
            - ABONO_DESCONTADO
            - AFASTAMENTO
            - AJUSTE_HORARIO
            - ATESTADO
            - FOLGA
            - SUSPENSAO
            - COMPENSACAO_BANCO_HORAS
        descontarJornada:
          type: boolean
          description: >-
            Mesmo depois de realizado o ajuste, o saldo da jornada de trabalho
            continua sem alteração
          example: false
        descontarPreferencialmenteAdicionalNoturno:
          type: boolean
          description: >-
            Mesmo depois de realizado o ajuste, o saldo do adicional noturno
            continua sem alteração
          example: false
      required:
        - descricao
        - tipo
    ArquivoRespostaDto:
      type: object
      properties:
        arquivoId:
          type: string
          description: ID do arquivo
          example: 123-456abc
        nome:
          type: string
          description: Nome do arquivo
          example: comprovante.pdf
        url:
          type: string
          description: Url para download do arquivo
          example: https://s3-bucket.s3.amazonaws.com/files/tenant_x/file.jpg
      required:
        - arquivoId
        - nome
        - url
    AjusteRegistroColaboradorDto:
      type: object
      properties:
        colaboradorId:
          type: string
          description: ID do colaborador
          example: 123-456abc
        nome:
          type: string
          description: Nome do colaborador
          example: João da Silva
        numeroDocumento:
          type: string
          description: CPF ou CNPJ
          example: 152.175.100-56
        saldoAntigo:
          type: string
          description: Saldo antigo em minutos
          example: '-04:48'
        adicionalNoturnoAntigo:
          type: string
          description: Adicional noturno antigo em minutos
          example: '+04:48'
        foto:
          type: string
          description: Url para download da foto do colaborador
          example: https://s3-bucket.s3.amazonaws.com/files/tenant_x/file.jpg
        nomeUnidadeNegocio:
          type: string
          description: Nome da unidade de negocio do colaborador
          example: Tron
        logoUnidadeNegocio:
          type: string
          description: Url para download da logo da unidade de negócio
          example: https://s3-bucket.s3.amazonaws.com/files/tenant_x/file.jpg
      required:
        - colaboradorId
        - nome
        - numeroDocumento
    FrequenciaDiariaDto:
      type: object
      properties:
        data:
          type: string
          description: Dia dos registros
          example: '2023-07-23T00:00:00.000Z'
        cargaHoraria:
          type: string
          description: Carga horária esperada do turno
          example: '8:48'
        horasTrabalhadas:
          type: string
          description: Horas trabalhadas no turno
          example: '8:00'
        saldo:
          type: string
          description: >-
            Saldo comparativo entre a carga horária esperada e as horas
            trabalhadas, positivo ou negativo
          example: '-0:48'
        saldoIntrajornada:
          type: string
          description: >-
            Saldo comparativo entre a carga esperada e o tempo de intervalo
            tirado, positivo ou negativo
          example: '-0:08'
        atrasos:
          type: string
          description: Tempo de atraso
          example: '0:20'
        antecipacoes:
          type: string
          description: Tempo de antecipação
          example: '0:15'
        adicionalNoturno:
          type: string
          description: Horas trabalhadas em período de adicional noturno
          example: '4:00'
        bancoHoras:
          type: string
          description: Horas de banco de horas
          example: '+0:48'
        horasExtras:
          type: string
          description: Horas extras
          example: '0:48'
        horasExtrasSaldoBase:
          type: string
          description: Saldo base para cálculo de horas extras
          example: '0:30'
        horasExtrasIntervaloSaldoBase:
          type: string
          description: Saldo base para cálculo de horas extras do intervalo separadamente
          example: '0:30'
        tempoIntrajornada:
          type: string
          description: Tempo em intervalo
          example: '1:12'
        tempoInterjornada:
          type: string
          description: Tempo entre esta jornada e a anterior
          example: '12:00'
        indenizacaoInterjornada:
          type: number
          description: >-
            Tempo adicional de indenização, em minutos, de trabalho durante o
            período de descanso interjornada
          example: 30
        falta:
          type: number
          description: 'Falta: 1 para falta comum ou decimal para meia falta'
          example: 1
        faltaHoras:
          type: string
          description: >-
            Meia falta em horas, a ser mostrada caso a regra de ponto estiver
            configurada para tal
          example: '4:00'
        feriado:
          type: string
          description: Nome do feriado, caso seja um
          example: Natal
        registros:
          description: Registros de ponto do dia
          type: array
          items:
            $ref: '#/components/schemas/RegistroRespostaDto'
        statusVigenteColaborador:
          type: string
          description: Status em que o colaborador estava no dia
          enum:
            - ATIVO
            - INATIVO
            - RASCUNHO
          default: ATIVO
        regraPontoVigente:
          description: Regra de ponto do dia
          allOf:
            - $ref: '#/components/schemas/RegraPontoVigenteDto'
        turnoVigente:
          description: Turno do dia
          allOf:
            - $ref: '#/components/schemas/TurnoVigenteDto'
        diaTurnoFixo:
          description: >-
            Dados sobre o turno fixo (se existir) referente à jornada de
            trabalho do dia
          allOf:
            - $ref: '#/components/schemas/DiaTurnoFixoDto'
        diaRevezamento:
          description: >-
            Dados sobre o turno de revezamento (se existir) referente à jornada
            de trabalho do dia
          allOf:
            - $ref: '#/components/schemas/DiaRevezamentoDto'
        grupoFlexivelConfiguracao:
          description: >-
            Dados sobre o turno flexível (se existir) referente à jornada de
            trabalho do grupo de dias correspondente
          allOf:
            - $ref: '#/components/schemas/GrupoFlexivelConfiguracaoDto'
        ajuste:
          description: >-
            Dados sobre ajuste de registro (se existir) referente à jornada de
            trabalho do dia
          allOf:
            - $ref: '#/components/schemas/AjusteRegistroRespostaDto'
        ocorrencias:
          type: array
          description: Ocorrências da jornada de trabalho
          default:
            - TEMPO_INTERJORNADA_MENOR_QUE_O_MINIMO
          items:
            type: string
            enum:
              - TEMPO_INTERJORNADA_MENOR_QUE_O_MINIMO
              - TEMPO_DE_INTERVALO_MAIOR_QUE_O_PLANEJADO
              - TEMPO_DE_INTERVALO_MENOR_QUE_O_PLANEJADO
              - NUMERO_IMPAR_DE_REGISTROS_NO_DIA
              - LIMITE_DE_REGISTROS_POR_DIA_EXCEDIDO
              - FALTA
              - SALDO_POSITIVO
              - SALDO_NEGATIVO
              - HORA_EXTRA_NOTURNA
        pendencias:
          type: array
          description: Pendências da jornada de trabalho
          default:
            - FALTA
          items:
            type: string
            enum:
              - AJUSTE_PENDENTE
              - FALTA
              - NUMERO_IMPAR_DE_REGISTROS_NO_DIA
      required:
        - data
        - cargaHoraria
        - horasTrabalhadas
        - saldo
        - atrasos
        - antecipacoes
        - tempoIntrajornada
        - tempoInterjornada
        - registros
        - statusVigenteColaborador
        - regraPontoVigente
        - turnoVigente
        - ocorrencias
        - pendencias
    RegistroRespostaDto:
      type: object
      properties:
        dataHora:
          type: string
          description: Data e horário
          example: '2024-05-02T14:22:43.230Z'
          format: date-time
        nome:
          type: string
          description: Nome do colaborador
          example: Nelson da Silva
        cpf:
          type: string
          description: CPF do colaborador
          example: '15217510056'
        tipo:
          type: string
          description: Tipo do registro de ponto
          default: SIMPLE
          enum:
            - GEOLOCATION
            - SIMPLE
            - FACIAL_RECOGNITION
            - QR_CODE
            - PHOTO_SIMPLE
            - PHOTO_LOCATION
            - PIN
        endereco:
          type: string
          description: Endereço
          example: Avenida Afonso Pena, 237, Belo Horizonte, MG
        NSR:
          type: string
          description: NSR
          example: '2307'
        hashCode:
          type: string
          description: Código hash sha-256
          example: c0fc3c713f09a43384ac08f7d91fca430dcbc6466fff9284ce4571bdc2c8f9f9
        criadoEm:
          type: string
          description: Data de registro no banco
          example: '2024-05-02T14:22:43.230Z'
          format: date-time
        tipoOrigem:
          type: string
          description: Tipo do dispositivo usado para o registro
          default: '01'
          enum:
            - '01'
            - '02'
            - '03'
            - '04'
            - '05'
        online:
          type: boolean
          description: O registro foi feito online
          example: true
        tipoRegistroBatida:
          type: string
          description: Tipo de batida do registro (entrada ou saída)
          default: ENTRADA
          enum:
            - ENTRADA
            - SAIDA
        tipoAmbiente:
          type: string
          description: Tipo de ambiente do registro (individual ou coletivo)
          default: INDIVIDUAL
          enum:
            - INDIVIDUAL
            - COLETIVO
            - AFD
            - PRE_ASSINALADO
        fusoHorario:
          type: string
          description: Fuso horário
          default: SAO_PAULO
          enum:
            - MANAUS
            - NORONHA
            - RIO_BRANCO
            - SAO_PAULO
        colaboradorId:
          type: string
          description: ID do colaborador
          example: 123-456abc
        relogioId:
          type: string
          description: ID do relógio de ponto
          example: 123-456abc
        coletorId:
          type: string
          description: ID do coletor, para o caso de registro coletivo
          example: 123-456abc
        relatorioId:
          type: string
          description: >-
            ID do relatório, para o caso de registro criado por importação de
            relatório
          example: 123-456abc
        coletorDescricao:
          type: string
          description: Descrição do coletor, para o caso de registro coletivo
          example: Piso 01
        indevido:
          type: boolean
          description: O registro foi considerado indevido
          example: false
        criadoPorAjuste:
          type: boolean
          description: O registro foi criado por ajuste
          example: false
        invalidadoPorAjuste:
          type: boolean
          description: O registro foi considerado indevido devido a ajuste
          example: false
        inconsistencias:
          type: array
          description: Inconsistências (ou ocorrências) do registro
          default:
            - ENDERECO_IP_AUSENTE_OU_NAO_CADASTRADO
          items:
            type: string
            enum:
              - ENDERECO_IP_AUSENTE_OU_NAO_CADASTRADO
              - LOCALIZACAO_NAO_CONTEMPLADA_PELA_BATIDA
              - HORARIO_DE_PONTO_IDENTICO_NOS_ULTIMOS_5_DIAS
              - REGISTRO_FEITO_COM_LOCALIZACAO_POR_GPS_FALSA
              - REGISTRO_FEITO_EM_FUSO_HORARIO_DIFERENTE_DO_DEFINIDO_NO_CADASTRO
              - LIMITE_DE_REGISTROS_POR_DIA_EXCEDIDO
              - REGISTRO_FEITO_EM_DIA_NAO_CONTEMPLADO_PELO_TURNO
              - REGISTRO_FEITO_EM_TIPO_DE_DIA_DE_TRABALHO_COMPENSADO
              - REGISTRO_FEITO_EM_TIPO_DE_DIA_DE_TRABALHO_DSR
              - REGISTRO_FEITO_EM_TIPO_DE_DIA_DE_TRABALHO_FOLGA
              - REGISTRO_FEITO_EM_UM_FERIADO
              - REGISTRO_FEITO_EM_UM_PERIODO_DE_FERIAS_OU_AFASTAMENTO
              - REGISTRO_FEITO_EM_MENOS_DE_5_MINUTOS_APOS_O_ANTERIOR
              - DISPOSITIVO_RESTRITO_OU_NAO_PERTENCENTE_AO_COLABORADOR
              - >-
                O_COLABORADOR_IDENTIFICADO_PELO_RECONHECIMENTO_FACIAL_NAO_E_O_MESMO_QUE_ESTA_LOGADO
              - NAO_FOI_IDENTIFICADO_UM_ROSTO_NA_FOTO
              - BATIDA_DE_PONTO_OFFLINE_NAO_PERMITIDA
              - IMPORTACAO_AFD_DE_REGISTRO_EM_JORNADA_COM_AJUSTE
              - COLABORADOR_SEM_PERMISSAO_PARA_REGISTRAR_PONTO
        statusInconstencias:
          type: string
          description: Status das inconsistências (ou ocorrências) do registro
          default: PENDENTE
          enum:
            - APROVADO
            - PENDENTE
            - RECUSADO
      required:
        - dataHora
        - nome
        - cpf
        - tipo
        - endereco
        - NSR
        - hashCode
        - criadoEm
        - tipoOrigem
        - online
        - tipoRegistroBatida
        - tipoAmbiente
        - fusoHorario
        - criadoPorAjuste
        - invalidadoPorAjuste
        - inconsistencias
    RegraPontoVigenteDto:
      type: object
      properties:
        id:
          type: string
          description: ID da regra de ponto do dia
          example: 123-456abc
        tipo:
          type: string
          description: Tipo da regra de ponto do dia
          default: MISTO
          enum:
            - INTERVALO_DATAS
            - INTERVALO_HORARIO
            - TEMPO_FALTANTE
            - REGISTRO_PONTO
        nome:
          type: string
          description: Nome da regra de ponto do dia
          example: Regra de ponto 1
      required:
        - id
        - tipo
    TurnoVigenteDto:
      type: object
      properties:
        turnoId:
          type: string
          description: ID do turno do dia
          example: 123-456abc
        tipo:
          type: string
          description: Tipo do turno do dia
          default: turnoFixo
          enum:
            - turnoFixo
            - turnoFlexivel
            - turnoRevezamento
        nome:
          type: string
          description: Nome do turno do dia
          example: Horário comercial
        tipoTurnoFlexivel:
          type: string
          description: Tipo de turno flexível
          default: DIARIO
          enum:
            - DIARIO
            - SEMANAL
            - MENSAL
            - LIVRE
        excecao:
          type: boolean
          description: Indica se é uma exceção de turno
          example: false
        excecaoId:
          type: string
          description: ID da exceção de turno
          example: 123-456abc
      required:
        - tipo
        - nome
    DiaTurnoFixoDto:
      type: object
      properties:
        tipoDiaTrabalho:
          type: string
          description: Tipo do dia de trabalho da jornada
          default: NORMAL
          enum:
            - NORMAL
            - COMPENSADO
            - DSR
            - FOLGA
        diaSemana:
          type: string
          description: Dia da semana da jornada
          default: SEGUNDA
          enum:
            - DOMINGO
            - SEGUNDA
            - TERCA
            - QUARTA
            - QUINTA
            - SEXTA
            - SABADO
        entrada:
          type: string
          description: Horário de início esperado da jornada
          example: '8:00'
        saida:
          type: string
          description: Horário do fim esperado da jornada
          example: '18:00'
        intervaloFlexivel:
          type: boolean
          description: Possui intervalo flexível
          example: true
        intervalos:
          description: Horários de intervalo
          type: array
          items:
            $ref: '#/components/schemas/IntervaloDto'
      required:
        - tipoDiaTrabalho
        - diaSemana
    DiaRevezamentoDto:
      type: object
      properties:
        tipoDiaTrabalho:
          type: string
          description: Tipo do dia de trabalho da jornada
          default: NORMAL
          enum:
            - NORMAL
            - COMPENSADO
            - DSR
            - FOLGA
        mesConfig:
          type: number
          description: Ordem do mês
          example: 1
        diaConfig:
          type: number
          description: Ordem do dia
          example: 1
        entrada:
          type: string
          description: Horário de início esperado da jornada
          example: '8:00'
        saida:
          type: string
          description: Horário do fim esperado da jornada
          example: '18:00'
        intervaloFlexivel:
          type: boolean
          description: Possui intervalo flexível
          example: true
        intervalos:
          description: Horários de intervalo
          type: array
          items:
            $ref: '#/components/schemas/IntervaloDto'
      required:
        - tipoDiaTrabalho
        - mesConfig
        - diaConfig
    GrupoFlexivelConfiguracaoDto:
      type: object
      properties:
        tempoTrabalho:
          type: string
          description: Tempo total de trabalho esperado para o grupo flexível
          example: '8:00'
        viraNoite:
          type: string
          description: Horário de virada da data da jornada
          example: '1:00'
        trabalhaSegunda:
          type: boolean
          description: As segundas-feiras fazem parte desse grupo
          example: true
        trabalhaTerca:
          type: boolean
          description: As terças-feiras fazem parte desse grupo
          example: true
        trabalhaQuarta:
          type: boolean
          description: As quartas-feiras fazem parte desse grupo
          example: true
        trabalhaQuinta:
          type: boolean
          description: As quintas-feiras fazem parte desse grupo
          example: true
        trabalhaSexta:
          type: boolean
          description: As sextas-feiras fazem parte desse grupo
          example: true
        trabalhaSabado:
          type: boolean
          description: Os sábados fazem parte desse grupo
          example: false
        trabalhaDomingo:
          type: boolean
          description: Os domingos fazem parte desse grupo
          example: false
        intervalos:
          description: Horários de intervalo
          type: array
          items:
            $ref: '#/components/schemas/IntervaloDto'
      required:
        - tempoTrabalho
        - trabalhaSegunda
        - trabalhaTerca
        - trabalhaQuarta
        - trabalhaQuinta
        - trabalhaSexta
        - trabalhaSabado
        - trabalhaDomingo
    IntervaloDto:
      type: object
      properties:
        inicio:
          type: string
          description: Horário de início do intervalo, para intervalo não flexível
          example: '8:00'
        fim:
          type: string
          description: Horário do fim do intervalo, para intervalo não flexível
          example: '18:00'
        minimo:
          type: string
          description: Tempo mínimo de intervalo, para intervalo flexível
          example: '0:30'
        maximo:
          type: string
          description: Tempo máximo de intervalo, para intervalo flexível
          example: '1:30'

````