Faltas injustificadas
Listar, dia a dia, o tempo de jornada não cumprido e sem ausência que o justifique.
URL Base
https://api.iopoint.com.br/apiFaltas injustificadas no período
GET
/customer/v2/unjustified-absenceLista as faltas injustificadas por colaborador, detalhadas por dia. Falta injustificada é o tempo de jornada que o colaborador deixou de cumprir e para o qual não existe ausência lançada que o justifique — inclui atraso e saída antecipada, não apenas a falta de dia inteiro.
O dia entra na lista quando o tempo não cumprido, já descontadas as ausências, passa da tolerância da escala do colaborador. Quando isso acontece, é contabilizado o tempo cheio do dia e não apenas o que excede a tolerância. Colaborador sem nenhuma falta injustificada no período não aparece na resposta.
O dia só entra na lista quando o tempo não cumprido passa da tolerância da escala, e nesse caso entra o tempo cheio do dia, não apenas o excedente. Por isso a soma dos dias pode ser maior do que a diferença entre jornada e horas trabalhadas.
Ausência que cobre a jornada inteira do dia remove o dia da lista. Ausência parcial deixa apenas o tempo não coberto. Folga de compensação e demais ausências justificadas que geram débito de banco de horas não são contadas como falta injustificada — o campo justified_not_paid_time mostra quanto foi abatido.
Escalas livre e intermitente não têm jornada prevista e por isso nunca geram falta injustificada.
Dia de descanso semanal e feriado sem jornada prevista não entram na lista.
A leitura depende da apuração já processada: dia ainda não calculado não aparece na resposta. Para fechamento de folha, consulte após o processamento do período.
O total por colaborador em totals.unjustified_time é o mesmo número da coluna de faltas injustificadas do relatório de Absenteísmo, para a mesma empresa e o mesmo período.
unjustified_percentage é o total de falta injustificada sobre as horas previstas do período, em percentual. Não inclui as ausências justificadas.
Colaborador desligado no meio do período aparece na lista se tiver falta injustificada apurada.
all_points traz as batidas registradas no dia, em ordem crescente. Em falta de dia inteiro a lista vem vazia.
Query parameters
| Nome | Tipo | Obrig. | Descrição |
|---|---|---|---|
| begin_date | date | sim | Início do período (YYYY-MM-DD). |
| end_date | date | sim | Fim do período (YYYY-MM-DD). Máximo de 31 dias. |
| national_registry | string | não | CPF do colaborador para filtrar. Opcional. |
| include_branches | boolean | não | Quando `1`, agrega a matriz e todas as filiais do grupo econômico na resposta. Só leitura. |
| company_national_registry | string | não | 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). |
Erros possíveis
| Status | Código | Quando ocorre |
|---|---|---|
| 422 | date_range_exceeded | Período maior que 31 dias. |
Exemplos
Request
curl -X GET "https://api.iopoint.com.br/api/customer/v2/unjustified-absence?begin_date=2026-06-01&end_date=2026-06-30" \
-H "apiIopointToken: SEU_TOKEN_AQUI"Response200
{
"data": [
{
"national_registry": "12345678900",
"registration_number": "0042",
"email": "[email protected]",
"name": "João da Silva",
"occupation": "Analista de RH",
"department": "Recursos Humanos",
"team": null,
"business_unit": "Matriz",
"admission_date": "2022-03-15",
"pis": "12345678901",
"company": {
"name": "Filial São Paulo LTDA",
"trading_name": "Filial SP",
"national_registry": "12345678000288"
},
"unjustified_absences": [
{
"date": "2026-06-08",
"journey_time": "08:00",
"worked_time": "00:00",
"negative_time": "08:00",
"justified_time": "00:00",
"justified_not_paid_time": "00:00",
"unjustified_time": "08:00",
"is_full_day": true,
"all_points": []
},
{
"date": "2026-06-15",
"journey_time": "08:00",
"worked_time": "05:30",
"negative_time": "02:30",
"justified_time": "00:00",
"justified_not_paid_time": "00:00",
"unjustified_time": "02:30",
"is_full_day": false,
"all_points": [
"08:00",
"12:00",
"13:00",
"15:30"
]
}
],
"totals": {
"expected_time": "176:00",
"unjustified_time": "10:30",
"unjustified_percentage": 5.97
}
}
],
"meta": {
"begin_date": "2026-06-01",
"end_date": "2026-06-30",
"total_collaborators": 1
}
}Respostas
200Lista de colaboradores que tiveram falta injustificada no período. Horas em HH:MM e datas em YYYY-MM-DD.
{
"data": [
{
"national_registry": "12345678900",
"registration_number": "0042",
"email": "[email protected]",
"name": "João da Silva",
"occupation": "Analista de RH",
"department": "Recursos Humanos",
"team": null,
"business_unit": "Matriz",
"admission_date": "2022-03-15",
"pis": "12345678901",
"company": {
"name": "Filial São Paulo LTDA",
"trading_name": "Filial SP",
"national_registry": "12345678000288"
},
"unjustified_absences": [
{
"date": "2026-06-08",
"journey_time": "08:00",
"worked_time": "00:00",
"negative_time": "08:00",
"justified_time": "00:00",
"justified_not_paid_time": "00:00",
"unjustified_time": "08:00",
"is_full_day": true,
"all_points": []
},
{
"date": "2026-06-15",
"journey_time": "08:00",
"worked_time": "05:30",
"negative_time": "02:30",
"justified_time": "00:00",
"justified_not_paid_time": "00:00",
"unjustified_time": "02:30",
"is_full_day": false,
"all_points": [
"08:00",
"12:00",
"13:00",
"15:30"
]
}
],
"totals": {
"expected_time": "176:00",
"unjustified_time": "10:30",
"unjustified_percentage": 5.97
}
}
],
"meta": {
"begin_date": "2026-06-01",
"end_date": "2026-06-30",
"total_collaborators": 1
}
}