Grava uma nova versão das regras do ponto
POST/api/time-tracking/rules
- Auth
- Jeton requis
- Clé d’API:
- Clé d’API non acceptée
- X-CommunityId
X-CommunityIdEnvoyez le X-CommunityId de la communauté où l’opération a lieu.
Les descriptions des endpoints viennent directement de la spécification de l’API et sont en portugais pour l’instant. L’interface autour est traduite.
Gestão do ponto. Só inserção: corrigir é gravar outra versão (para a mesma vigência, vale a última gravada). Com `memberId`, é a exceção daquela pessoa. Vigência dentro de um mês fechado (ou antes dele) é recusada com 422 (`monthClosed`). Nenhuma regra recusa marcação.
En-têtes
| Nom | Type | Description |
|---|---|---|
X-CommunityIdfacultatif | string (uuid) | ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade. |
Corps de la requête application/json
| Nom | Type | Description |
|---|---|---|
spaceIdfacultatif | string (uuid) | |
memberIdfacultatif | string (uuid) | |
effectiveFromobligatoire | string (date) | |
rulesobligatoire | object | Regras do ponto (PTRP). Todo número é um padrão configurável; nenhuma regra recusa marcação (art. 74, I). Campos ausentes recebem o padrão; campo desconhecido é recusado (422). |
rules.schedulefacultatif | object | Horário contratual: pares de entrada e saída por dia da semana (`"0"` domingo a `"6"` sábado), `hh:mm`. Saída antes da entrada cruza a meia-noite. Dia sem pares é dia não útil. |
rules.weekStartsOnfacultatif | integer | Primeiro dia da semana para a extra semanal (1 = segunda). · ≥ 0, ≤ 6 |
rules.tolerancefacultatif | object | Art. 58, §1º da CLT: dentro dos dois limites o dia conta como o contrato; acima, conta a diferença inteira. |
rules.tolerance.perPunchMinutesfacultatif | integer | |
rules.tolerance.dailyMinutesfacultatif | integer | |
rules.overtimefacultatif | object | |
rules.overtime.dailyfacultatif | object | |
rules.overtime.weeklyfacultatif | object | |
rules.overtime.nonWorkingDayfacultatif | object | |
rules.overtime.holidayfacultatif | object | |
rules.overtime.dailyLimitMinutesfacultatif | integer | Acima disso o dia é sinalizado (não recusa nada). |
rules.overtime.destinationfacultatif | paid | bank | Para onde vai a extra dos dias em que esta versão vale: `paid` (paga, padrão) ou `bank` (banco de horas, minuto a minuto; no banco, o que faltar do contrato depois da tolerância é debitado). |
rules.hourBankfacultatif | object | Banco de horas: um lote por mês de origem, que vence ao fim do mês de origem + validade - 1 (janeiro com 6 vence no fim de junho). O débito consome os lotes mais antigos primeiro (FIFO); o que vence sai como `expiredMinutes`, para pagar. |
rules.hourBank.validityMonthsfacultatif | integer | ≥ 1, ≤ 12 |
rules.weeklyRestDayfacultatif | integer | Dia do descanso semanal remunerado (DSR, AEJ registro 07 tipo 1); 0 = domingo (padrão), null = nenhum. · ≥ 0, ≤ 6 |
rules.nightfacultatif | object | Noturno (art. 73 da CLT): os minutos na janela (padrão 22h a 5h) sempre contam. `enabled` aplica o adicional (`multiplier`) e, com `reducedHour`, a hora noturna reduzida de 52min30s (8 horas contadas para 7 de relógio), na jornada trabalhada e na contratual. |
rules.night.enabledfacultatif | boolean | |
rules.night.startfacultatif | string | |
rules.night.endfacultatif | string | |
rules.night.reducedHourfacultatif | boolean | |
rules.night.multiplierfacultatif | number | |
rules.minimumBreakfacultatif | object | Art. 71 da CLT; só sinaliza. |
rules.minimumBreak.over6hMinutesfacultatif | integer | |
rules.minimumBreak.from4to6hMinutesfacultatif | integer |
Réponses
| Statut | Description |
|---|---|
201 | Versão gravada. |
401 | Token ausente, inválido ou expirado; token de outra comunidade (o `X-CommunityId` ou o `communityId` do corpo não é o do token); token antigo ou de uma sessão encerrada (troca de senha, convite aceito). Nesses casos a mensagem pede para entrar de novo (`auth.signInAgain`). |
403 | Só a gestão do ponto (owner, admin, financeiro): `timeTracking.errors.managementOnly`; quem não tem cadastro de empregado: `notEmployee`; sessão de suporte do SuperAdmin: `supportSession`. |
404 | Recurso não encontrado. |
422 | Regra inválida (`rulesInvalid`, com o caminho do campo em `errors[0].param`), horário de mais de 16 h num dia (`scheduleTooLong`) ou mês fechado (`monthClosed`). |
Exemple curl
curl -X POST "https://api.memberfy.net/api/time-tracking/rules" \
-H "Authorization: Bearer $TOKEN" \
-H "X-CommunityId: $COMMUNITY_ID" \
-H "Content-Type: application/json" \
-d '{"effectiveFrom":"string","rules":{}}'