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

# Registra batidas de ponto a partir da importação de um arquivo de relatório AFD



## OpenAPI

````yaml https://api.pre.pontua.tech/api/public/doc-json post /registro-ponto/afd
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:
  /registro-ponto/afd:
    post:
      tags:
        - Registro de Ponto
      summary: >-
        Registra batidas de ponto a partir da importação de um arquivo de
        relatório AFD
      operationId: RegistroPontoController_ImportAFD
      parameters: []
      requestBody:
        required: true
        description: Dados do relatório AFD
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ImportAfdDto'
      responses:
        '201':
          description: Relatório AFD importado com sucesso
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AFDImportedDto'
        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:
    ImportAfdDto:
      type: object
      properties:
        dataInicial:
          type: string
          description: Data inicial (dd/MM/yyyy)
          example: 01/05/2024
        dataFinal:
          type: string
          description: Data final (dd/MM/yyyy)
          example: 31/05/2024
        unidadeNegocioId:
          type: string
          description: ID da unidade de negócio
          example: 123-456abc
        versao:
          type: string
          description: Versão do equipamento AFD
          enum:
            - PORTARIA_1510
            - PORTARIA_671
          default: PORTARIA_671
        nomeArquivo:
          type: string
          description: Nome do arquivo
          example: AFD123456789012347317871000105REP_P.txt
        base64:
          type: string
          description: Arquivo base64
          example: >-
            iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNk+A8AAQUBAScY42YAAAAASUVORK5CYII=
        naoValidarCpfsRepetidos:
          type: boolean
          description: >-
            Caso hajam colaboradores ativos com CPFs repetidos na unidade de
            negócio, será considerado somente o primeiro encontrado
          default: false
      required:
        - dataInicial
        - dataFinal
        - unidadeNegocioId
        - versao
        - nomeArquivo
        - base64
    AFDImportedDto:
      type: object
      properties:
        status:
          type: boolean
          description: Status da operação
          example: true
        mensagem:
          type: string
          description: Mensagem de retorno
          example: OK
        relatorioId:
          type: string
          description: ID do relatório AFD criado
          example: 123-abc
        registrosIndevidos:
          type: boolean
          description: >-
            Um ou mais registros foram considerados indevidos devido a alguma
            pendência
          example: false
        colaboradoresNaoEncontrados:
          type: boolean
          description: >-
            Um ou mais colaboradores não foram encontrados ou estão inativos no
            sistema
          example: false
      required:
        - status
    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

````