Ausências
Tipos de ausência, listagem por período, anexos e criação.
URL Base
https://api.iopoint.com.br/apiListar tipos de ausência
GET
/customer/v2/absence/typesRetorna os tipos de ausência disponíveis (tanto os globais quanto os personalizados da empresa), com flags de comportamento.
Query parameters
| Nome | Tipo | Obrig. | Descrição |
|---|---|---|---|
| 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). |
Exemplos
Request
curl -X GET "https://api.iopoint.com.br/api/customer/v2/absence/types" \
-H "apiIopointToken: SEU_TOKEN_AQUI"Response200
{
"data": [
{
"id": 1,
"description": "Atestado médico",
"paid_leave": true,
"comp_time": false,
"compensation": false,
"can_request_app": true
},
{
"id": 2,
"description": "Férias",
"paid_leave": true,
"comp_time": false,
"compensation": false,
"can_request_app": false
}
]
}Respostas
200
{
"data": [
{
"id": 1,
"description": "Atestado médico",
"paid_leave": true,
"comp_time": false,
"compensation": false,
"can_request_app": true
},
{
"id": 2,
"description": "Férias",
"paid_leave": true,
"comp_time": false,
"compensation": false,
"can_request_app": false
}
]
}Ausências do período
GET
/customer/v2/absence/getFromPeriodLista 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.
Query parameters
| Nome | Tipo | Obrig. | Descrição |
|---|---|---|---|
| begin_date | datetime | sim | Início do período (YYYY-MM-DD HH:MM:SS). |
| end_date | datetime | sim | Fim do período (YYYY-MM-DD HH:MM:SS). |
| 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). |
Exemplos
Request
curl -X GET "https://api.iopoint.com.br/api/customer/v2/absence/getFromPeriod?begin_date=2026-05-01%2000%3A00%3A00&end_date=2026-05-31%2023%3A59%3A59" \
-H "apiIopointToken: SEU_TOKEN_AQUI"Response200
{
"data": [
{
"absence_id": 4521,
"absence_type_id": 1,
"type": "Atestado médico",
"description": "Atestado de 3 dias",
"begin_date": "2026-05-12 00:00:00",
"end_date": "2026-05-14 23:59:59",
"days": 3,
"reference_date": "2026-05-12",
"details": "Repouso domiciliar",
"comp_time": false,
"paid_leave": true,
"full_day": true,
"sum_on_work_time": false,
"sum_total_on_work_time": false,
"cr_register": "CRM/SP 123456",
"professional_name": "Dr. Carlos Mendes",
"health_unit": "Hospital Exemplo",
"cid_description": "Infecção respiratória aguda",
"cid": [
"J06.9"
],
"has_attachment": true,
"collaborators": [
{
"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"
}
}
]
}
],
"meta": {
"begin_date": "2026-05-01 00:00:00",
"end_date": "2026-05-31 23:59:59"
}
}Respostas
200
{
"data": [
{
"absence_id": 4521,
"absence_type_id": 1,
"type": "Atestado médico",
"description": "Atestado de 3 dias",
"begin_date": "2026-05-12 00:00:00",
"end_date": "2026-05-14 23:59:59",
"days": 3,
"reference_date": "2026-05-12",
"details": "Repouso domiciliar",
"comp_time": false,
"paid_leave": true,
"full_day": true,
"sum_on_work_time": false,
"sum_total_on_work_time": false,
"cr_register": "CRM/SP 123456",
"professional_name": "Dr. Carlos Mendes",
"health_unit": "Hospital Exemplo",
"cid_description": "Infecção respiratória aguda",
"cid": [
"J06.9"
],
"has_attachment": true,
"collaborators": [
{
"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"
}
}
]
}
],
"meta": {
"begin_date": "2026-05-01 00:00:00",
"end_date": "2026-05-31 23:59:59"
}
}Anexos da ausência
GET
/customer/v2/absence/attachmentRetorna os anexos (atestados, comprovantes) de uma ausência em base64. Devolve `data: []` quando não há anexos.
Query parameters
| Nome | Tipo | Obrig. | Descrição |
|---|---|---|---|
| absence_id | integer | sim | ID da ausência. |
| 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 |
|---|---|---|
| 404 | not_found | Ausência inexistente ou de outra empresa. |
Exemplos
Request
curl -X GET "https://api.iopoint.com.br/api/customer/v2/absence/attachment?absence_id=4521" \
-H "apiIopointToken: SEU_TOKEN_AQUI"Response200
{
"data": [
{
"filename": "atestado-2026-05-12.pdf",
"mime_type": "application/pdf",
"base64": "JVBERi0xLjQKJcfsj6IK..."
}
],
"meta": {
"absence_id": 4521
}
}Respostas
200
{
"data": [
{
"filename": "atestado-2026-05-12.pdf",
"mime_type": "application/pdf",
"base64": "JVBERi0xLjQKJcfsj6IK..."
}
],
"meta": {
"absence_id": 4521
}
}Criar ausência
POST
/customer/v2/absenceCria uma nova ausência para um ou mais colaboradores (identificados pelo CPF). Aceita anexos via `multipart/form-data`.
Body (multipart/form-data)
| Nome | Tipo | Obrig. | Descrição |
|---|---|---|---|
| national_registry[] | array<string> | sim | CPFs dos colaboradores ausentes (somente dígitos). Repita a chave para cada CPF: `national_registry[]=12345678900&national_registry[]=98765432100`. Os colchetes `[]` no nome são obrigatórios mesmo para um único CPF. |
| absence_type_id | integer | sim | ID do tipo de ausência (ver `GET /absence/types`). |
| description | string | sim | Descrição curta. |
| details | string | sim | Detalhamento/observações. |
| begin_date | date | sim | Início (YYYY-MM-DD). |
| end_date | date | sim | Fim (YYYY-MM-DD). |
| paid | boolean | sim | `1` para ausência remunerada, `0` caso contrário. |
| full_day | boolean | sim | `1` para dia inteiro, `0` para parcial. |
| sum_on_work_time | boolean | sim | Somar no tempo trabalhado diário. |
| sum_total_on_work_time | boolean | sim | Somar no total trabalhado do período. |
| attachment[] | file | não | Arquivos anexos (atestado, comprovantes). Opcional. |
Erros possíveis
| Status | Código | Quando ocorre |
|---|---|---|
| 404 | absence_type_not_found | absence_type_id inválido. |
Exemplos
Request
curl -X POST "https://api.iopoint.com.br/api/customer/v2/absence" \
-H "apiIopointToken: SEU_TOKEN_AQUI" \
-F "national_registry[]=12345678900" \
-F "absence_type_id=1" \
-F "description=Atestado de 2 dias" \
-F "details=Apresentou atestado médico" \
-F "begin_date=2026-05-26" \
-F "end_date=2026-05-27" \
-F "paid=1" \
-F "full_day=1" \
-F "sum_on_work_time=1" \
-F "sum_total_on_work_time=1"Response201
{
"data": {
"absence_id": 4522
}
}Respostas
201
{
"data": {
"absence_id": 4522
}
}