{
  "info": {
    "_postman_id": "iopoint-customer-v2",
    "name": "iopoint · API Customer V2",
    "description": "Collection oficial da API Customer V2 do iopoint. Defina as variáveis `base_url` (ex.: api.iopoint.com.br) e `apiIopointToken` antes de executar as requisições.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "variable": [
    {
      "key": "base_url",
      "value": "api.iopoint.com.br",
      "type": "string"
    },
    {
      "key": "apiIopointToken",
      "value": "SEU_TOKEN_AQUI",
      "type": "string"
    }
  ],
  "item": [
    {
      "name": "Ajustes de ponto",
      "description": "Listar solicitações de ajuste (pendentes, aprovadas, recusadas).",
      "item": [
        {
          "name": "Ajustes no período",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/adjustment?begin_date=2026-05-01&end_date=2026-05-31",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "adjustment"
              ],
              "query": [
                {
                  "key": "begin_date",
                  "value": "2026-05-01",
                  "description": "Início do período (YYYY-MM-DD).",
                  "disabled": false
                },
                {
                  "key": "end_date",
                  "value": "2026-05-31",
                  "description": "Fim do período (YYYY-MM-DD). Máximo de 31 dias.",
                  "disabled": false
                },
                {
                  "key": "national_registry",
                  "value": "<national_registry>",
                  "description": "CPF do colaborador para filtrar. Opcional.",
                  "disabled": true
                },
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Lista solicitações de ajuste de ponto realizadas pelos colaboradores no período. Cada item indica o status (Pendente/Aprovado/Recusado), justificativa do colaborador e observação do gestor."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Atrasos",
      "description": "Listar atrasos detectados no período.",
      "item": [
        {
          "name": "Atrasos no período",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/tardiness?begin_date=2026-05-01&end_date=2026-05-31",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "tardiness"
              ],
              "query": [
                {
                  "key": "begin_date",
                  "value": "2026-05-01",
                  "description": "Início do período (YYYY-MM-DD).",
                  "disabled": false
                },
                {
                  "key": "end_date",
                  "value": "2026-05-31",
                  "description": "Fim do período (YYYY-MM-DD). Máximo de 31 dias.",
                  "disabled": false
                },
                {
                  "key": "national_registry",
                  "value": "<national_registry>",
                  "description": "CPF do colaborador para filtrar. Opcional.",
                  "disabled": true
                },
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Lista os atrasos detectados por colaborador. O algoritmo considera atraso quando a batida de entrada ocorre após o início da jornada somado à tolerância configurada, e antes de 2 horas após o início (acima disso é tratado como falta)."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Ausências",
      "description": "Tipos de ausência, listagem por período, anexos e criação.",
      "item": [
        {
          "name": "Listar tipos de ausência",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/absence/types?",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "absence",
                "types"
              ],
              "query": [
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna os tipos de ausência disponíveis (tanto os globais quanto os personalizados da empresa), com flags de comportamento."
          },
          "response": []
        },
        {
          "name": "Ausências do período",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/absence/getFromPeriod?begin_date=2026-05-01%2000%3A00%3A00&end_date=2026-05-31%2023%3A59%3A59",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "absence",
                "getFromPeriod"
              ],
              "query": [
                {
                  "key": "begin_date",
                  "value": "2026-05-01 00:00:00",
                  "description": "Início do período (YYYY-MM-DD HH:MM:SS).",
                  "disabled": false
                },
                {
                  "key": "end_date",
                  "value": "2026-05-31 23:59:59",
                  "description": "Fim do período (YYYY-MM-DD HH:MM:SS).",
                  "disabled": false
                },
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Lista ausências/férias aprovadas que se sobrepõem ao período informado. Estrutura é ausência-cêntrica: cada item traz o tipo, datas, detalhes médicos e os colaboradores envolvidos."
          },
          "response": []
        },
        {
          "name": "Anexos da ausência",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/absence/attachment?absence_id=4521",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "absence",
                "attachment"
              ],
              "query": [
                {
                  "key": "absence_id",
                  "value": "4521",
                  "description": "ID da ausência.",
                  "disabled": false
                },
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna os anexos (atestados, comprovantes) de uma ausência em base64. Devolve `data: []` quando não há anexos."
          },
          "response": []
        },
        {
          "name": "Criar ausência",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/absence",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "absence"
              ]
            },
            "body": {
              "mode": "formdata",
              "formdata": [
                {
                  "key": "national_registry[]",
                  "value": "12345678900",
                  "type": "text"
                },
                {
                  "key": "absence_type_id",
                  "value": "1",
                  "type": "text"
                },
                {
                  "key": "description",
                  "value": "Atestado de 2 dias",
                  "type": "text"
                },
                {
                  "key": "details",
                  "value": "Apresentou atestado médico",
                  "type": "text"
                },
                {
                  "key": "begin_date",
                  "value": "2026-05-26",
                  "type": "text"
                },
                {
                  "key": "end_date",
                  "value": "2026-05-27",
                  "type": "text"
                },
                {
                  "key": "paid",
                  "value": "1",
                  "type": "text"
                },
                {
                  "key": "full_day",
                  "value": "1",
                  "type": "text"
                },
                {
                  "key": "sum_on_work_time",
                  "value": "1",
                  "type": "text"
                },
                {
                  "key": "sum_total_on_work_time",
                  "value": "1",
                  "type": "text"
                }
              ]
            },
            "description": "Cria uma nova ausência para um ou mais colaboradores (identificados pelo CPF). Aceita anexos via `multipart/form-data`."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Cercas digitais",
      "description": "Listar cercas digitais cadastradas.",
      "item": [
        {
          "name": "Listar cercas digitais",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/barrier?",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "barrier"
              ],
              "query": [
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna a lista de cercas digitais ativas da empresa. Cercas inativas não aparecem na listagem."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Cargos",
      "description": "Listar e criar cargos disponíveis na empresa.",
      "item": [
        {
          "name": "Listar cargos",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/occupation?",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "occupation"
              ],
              "query": [
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna os cargos ativos cadastrados para a empresa. Cargos inativos não aparecem na listagem."
          },
          "response": []
        },
        {
          "name": "Criar cargo",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/occupation",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "occupation"
              ]
            },
            "body": {
              "mode": "raw",
              "raw": "{\n  \"description\": \"Analista de QA\",\n  \"number_cbo\": \"2521-05\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "description": "Cria um novo cargo para a empresa autenticada."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Centros de custo",
      "description": "Listar e criar centros de custo.",
      "item": [
        {
          "name": "Listar centros de custo",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/cost-center?",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "cost-center"
              ],
              "query": [
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna a lista de centros de custo ativos da empresa. Centros de custo inativos não aparecem."
          },
          "response": []
        },
        {
          "name": "Criar centro de custo",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/cost-center",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "cost-center"
              ]
            },
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"Filial - MG\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "description": "Cria um novo centro de custo para a empresa autenticada. O centro de custo é sempre criado como ativo — não há opção de criar inativo via API."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Colaboradores",
      "description": "Listar, criar, demitir e enviar foto facial de colaboradores.",
      "item": [
        {
          "name": "Listar colaboradores ativos",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/collaborator?",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "collaborator"
              ],
              "query": [
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna todos os colaboradores ativos da empresa, com o bloco padrão de identificação."
          },
          "response": []
        },
        {
          "name": "Totais de horas por colaborador",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/collaborator/totalHours?begin_date=2026-05-01&end_date=2026-05-31",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "collaborator",
                "totalHours"
              ],
              "query": [
                {
                  "key": "begin_date",
                  "value": "2026-05-01",
                  "description": "Data inicial do período (YYYY-MM-DD).",
                  "disabled": false
                },
                {
                  "key": "end_date",
                  "value": "2026-05-31",
                  "description": "Data final do período (YYYY-MM-DD). Máximo de 31 dias a partir de `begin_date`.",
                  "disabled": false
                },
                {
                  "key": "national_registry_list[]",
                  "value": "12345678900,98765432100",
                  "description": "Lista de CPFs (somente dígitos) para filtrar. Opcional. Use a sintaxe PHP/HTML padrão repetindo a chave: `national_registry_list[]=12345678900&national_registry_list[]=98765432100`. Mesmo com um único CPF, os colchetes `[]` no nome são obrigatórios.",
                  "disabled": true
                },
                {
                  "key": "email_list[]",
                  "value": "fulano@empresa.com.br",
                  "description": "Lista de e-mails para filtrar. Opcional. Mesma sintaxe da `national_registry_list[]`: repita a chave para cada e-mail, ex.: `email_list[]=fulano@empresa.com.br`.",
                  "disabled": true
                },
                {
                  "key": "decimal_format",
                  "value": "1",
                  "description": "Quando `1`, devolve as horas em formato decimal (ex.: `8.50`) em vez de `HH:MM:SS`.",
                  "disabled": true
                },
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Agrega todos os tipos de horas (banco, faltas, atestados, noturno, horas extras 1/2/3/4, intrajornada, interjornada, DSR, feriados, trabalhada etc.) por colaborador em um período de até 31 dias. Suporta filtro por CPF ou e-mail e formato decimal opcional."
          },
          "response": []
        },
        {
          "name": "Criar colaborador",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/collaborator",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "collaborator"
              ]
            },
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"João da Silva\",\n  \"national_registry\": \"12345678900\",\n  \"email\": \"joao.silva@empresa.com.br\",\n  \"birth_date\": \"1990-05-20\",\n  \"registration_number\": \"0042\",\n  \"begin_date\": \"2026-05-26\",\n  \"admission_date\": \"2026-05-26\",\n  \"journey_id\": 3,\n  \"cost_center_id\": 5,\n  \"department_id\": 2,\n  \"unit_id\": 1,\n  \"collaborator_settings_id\": 1,\n  \"point_rule_id\": 4\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "description": "Cria um novo colaborador vinculado à empresa. Todos os IDs referenciados precisam existir e pertencer à empresa autenticada."
          },
          "response": []
        },
        {
          "name": "Enviar foto facial",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/collaborator/photo",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "collaborator",
                "photo"
              ]
            },
            "body": {
              "mode": "raw",
              "raw": "{\n  \"national_registry\": \"12345678900\",\n  \"photo_base64\": \"/9j/4AAQSkZJRgABAQAAAQABAAD/2wBDAAg...\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "description": "Envia a foto facial do colaborador (em base64) para reconhecimento facial. O colaborador é identificado pelo CPF (`national_registry`); se houver mais de um colaborador com o mesmo CPF na empresa, o ponto sobe no ativo (`dismissal_date IS NULL`). A imagem deve ser nítida, frontal e sem acessórios."
          },
          "response": []
        },
        {
          "name": "Demitir colaborador",
          "request": {
            "method": "PUT",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/collaborator/dismissal",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "collaborator",
                "dismissal"
              ]
            },
            "body": {
              "mode": "raw",
              "raw": "{\n  \"national_registry\": \"12345678900\",\n  \"dismissal_date\": \"2026-05-31\",\n  \"fired_type_id\": 2,\n  \"fired_description\": \"Demissão sem justa causa.\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "description": "Registra a demissão de um colaborador. Pelo menos um identificador (`collaborator_id`, `registration_number` ou `national_registry`) deve ser informado."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Configurações de colaborador",
      "description": "Conjuntos de configurações aplicáveis a colaboradores.",
      "item": [
        {
          "name": "Listar configurações de colaborador",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/collaborator-settings?",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "collaborator-settings"
              ],
              "query": [
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna os pacotes de configurações ativos (perfil de batida, validações, comportamentos) que podem ser vinculados ao colaborador na criação. Configurações inativas não aparecem na listagem."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Departamentos",
      "description": "Listar e criar departamentos.",
      "item": [
        {
          "name": "Listar departamentos",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/department?",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "department"
              ],
              "query": [
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna todos os departamentos ativos da empresa."
          },
          "response": []
        },
        {
          "name": "Criar departamento",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/department",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "department"
              ]
            },
            "body": {
              "mode": "raw",
              "raw": "{\n  \"description\": \"Tecnologia da Informação\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "description": "Cria um novo departamento ativo na empresa."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Empresa",
      "description": "Dados cadastrais da empresa autenticada.",
      "item": [
        {
          "name": "Obter dados da empresa",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/company?",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "company"
              ],
              "query": [
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna os dados cadastrais da empresa associada ao token: razão social, nome fantasia, endereço, contatos e identificadores fiscais (CNPJ, CEI, CAEPF, CNO)."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Grupo econômico",
      "description": "Listar a matriz e as filiais acessíveis pelo token, com os CNPJs usados para mirar empresas específicas.",
      "item": [
        {
          "name": "Listar empresas do grupo",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/economic-group",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "economic-group"
              ]
            },
            "description": "Lista a matriz e as filiais do grupo econômico acessíveis pelo token. Para token de matriz, retorna a matriz e todas as filiais ativas; para token de filial, retorna apenas a própria empresa. Os CNPJs (`national_registry`) retornados aqui são os valores aceitos no parâmetro `company_national_registry` dos demais endpoints."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Horas extras / Banco",
      "description": "Saldo de horas extras e banco em uma data específica.",
      "item": [
        {
          "name": "Saldo do dia",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/overtime?date=2026-05-26",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "overtime"
              ],
              "query": [
                {
                  "key": "date",
                  "value": "2026-05-26",
                  "description": "Data de referência (YYYY-MM-DD).",
                  "disabled": false
                },
                {
                  "key": "national_registry",
                  "value": "<national_registry>",
                  "description": "CPF do colaborador para filtrar. Opcional.",
                  "disabled": true
                },
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna o regime do colaborador (BH, HE, Híbrido) e os componentes do dia: total de horas extras, horas faltantes, intervalo, normais, saldo do dia, saldo acumulado e crédito/débito acumulados separados."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Inconsistências",
      "description": "Ocorrências de inconsistência (intra/inter jornada e referência de HE).",
      "item": [
        {
          "name": "Inconsistências no período",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/inconsistency?begin_date=2026-05-01&end_date=2026-05-31",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "inconsistency"
              ],
              "query": [
                {
                  "key": "begin_date",
                  "value": "2026-05-01",
                  "description": "Início do período (YYYY-MM-DD).",
                  "disabled": false
                },
                {
                  "key": "end_date",
                  "value": "2026-05-31",
                  "description": "Fim do período (YYYY-MM-DD). Máximo de 31 dias.",
                  "disabled": false
                },
                {
                  "key": "national_registry",
                  "value": "<national_registry>",
                  "description": "CPF do colaborador para filtrar. Opcional.",
                  "disabled": true
                },
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Lista ocorrências de inconsistência detectadas: intervalo intra-jornada insuficiente, inter-jornada (11h) e horas extras acima do limite. Cada ocorrência traz a data, tipo, valor, justificativa e status (`pending` ou `acknowledged`)."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Escalas",
      "description": "Listar escalas ativas.",
      "item": [
        {
          "name": "Listar escalas",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/journey?",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "journey"
              ],
              "query": [
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna as escalas ativas da empresa, utilizadas na criação de colaboradores."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Pontos",
      "description": "Listar pontos do período, registrar novos pontos e obter foto de auditoria.",
      "item": [
        {
          "name": "Pontos do período",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/point/getFromPeriod?begin_date=2026-05-01&end_date=2026-05-31",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "point",
                "getFromPeriod"
              ],
              "query": [
                {
                  "key": "begin_date",
                  "value": "2026-05-01",
                  "description": "Data inicial (YYYY-MM-DD).",
                  "disabled": false
                },
                {
                  "key": "end_date",
                  "value": "2026-05-31",
                  "description": "Data final (YYYY-MM-DD). Máximo de 31 dias.",
                  "disabled": false
                },
                {
                  "key": "national_registry_list[]",
                  "value": "12345678900,98765432100",
                  "description": "CPFs a filtrar. Opcional — sem este filtro (e sem `email_list[]`), retorna todos os colaboradores da empresa. Use a sintaxe PHP/HTML padrão repetindo a chave: `national_registry_list[]=12345678900&national_registry_list[]=98765432100`. Os colchetes `[]` no nome são obrigatórios mesmo para um único CPF.",
                  "disabled": true
                },
                {
                  "key": "email_list[]",
                  "value": "fulano@empresa.com.br",
                  "description": "E-mails a filtrar. Opcional — mesma regra do `national_registry_list[]`. Sintaxe: `email_list[]=fulano@empresa.com.br`.",
                  "disabled": true
                },
                {
                  "key": "decimal_format",
                  "value": "true",
                  "description": "Devolver `worked_time` em decimal quando `1`.",
                  "disabled": true
                },
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna os pontos agrupados por colaborador → dia → batidas, com data/hora, método, origem, geolocalização (latitude/longitude e endereço reverso), informações de ajuste e indicação de foto de auditoria. Os filtros `national_registry_list[]` e `email_list[]` são opcionais — sem eles, retorna todos os colaboradores da empresa no período."
          },
          "response": []
        },
        {
          "name": "Foto de auditoria do ponto",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/point/audit?point_id=9991",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "point",
                "audit"
              ],
              "query": [
                {
                  "key": "point_id",
                  "value": "9991",
                  "description": "ID da batida (`point_id` retornado em `getFromPeriod`).",
                  "disabled": false
                },
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna a foto facial registrada no momento da batida em base64, junto com o nome do arquivo e o `mime_type` da imagem."
          },
          "response": []
        },
        {
          "name": "Registrar ponto",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/point",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "point"
              ]
            },
            "body": {
              "mode": "raw",
              "raw": "{\n  \"national_registry\": \"12345678900\",\n  \"datetime\": \"2026-05-26 07:58:12\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "description": "Registra uma nova batida de ponto via API. A data/hora não pode ser futura nem anterior à admissão. O endpoint devolve o `point_id` e um `hash` SHA-256 que serve como comprovante."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Regras de ponto",
      "description": "Listar regras de ponto disponíveis para os colaboradores.",
      "item": [
        {
          "name": "Listar regras de ponto",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/point-rule?",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "point-rule"
              ],
              "query": [
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna as regras de ponto ativas da empresa."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Tipos de demissão",
      "description": "Listar e criar tipos de demissão.",
      "item": [
        {
          "name": "Listar tipos de demissão",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/fired-type?",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "fired-type"
              ],
              "query": [
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna os tipos de demissão cadastrados (ex.: sem justa causa, justa causa, pedido)."
          },
          "response": []
        },
        {
          "name": "Criar tipo de demissão",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/fired-type",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "fired-type"
              ]
            },
            "body": {
              "mode": "raw",
              "raw": "{\n  \"name\": \"Acordo entre as partes\"\n}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "description": "Cria um novo tipo de demissão para a empresa."
          },
          "response": []
        }
      ]
    },
    {
      "name": "Unidades",
      "description": "Listar unidades de negócio.",
      "item": [
        {
          "name": "Listar unidades",
          "request": {
            "method": "GET",
            "header": [
              {
                "key": "apiIopointToken",
                "value": "{{apiIopointToken}}",
                "type": "text"
              }
            ],
            "url": {
              "raw": "{{base_url}}/api/customer/v2/unit?",
              "protocol": "https",
              "host": [
                "{{base_url}}"
              ],
              "path": [
                "api",
                "customer",
                "v2",
                "unit"
              ],
              "query": [
                {
                  "key": "include_branches",
                  "value": "1",
                  "description": "Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura.",
                  "disabled": true
                },
                {
                  "key": "company_national_registry",
                  "value": "12345678000288",
                  "description": "CNPJ (apenas dígitos) de uma empresa do grupo para restringir o escopo a ela. Use os CNPJs retornados em `GET /economic-group`. Fora do grupo acessível retorna `company_not_found` (404).",
                  "disabled": true
                }
              ]
            },
            "description": "Retorna as unidades ativas da empresa, ordenadas com a unidade padrão (`is_default = true`) no topo."
          },
          "response": []
        }
      ]
    }
  ]
}