Cada código é uma permissão configurável por cliente e o nome do comando no livro de atos. Sem regra de permissão configurada, ninguém pode (RN-ORG-012). "Próprio" indica que a pessoa pode agir sobre o próprio cadastro sem a permissão, nas condições da coluna.
Código
O que autoriza
Assunto da permissão
Próprio
structure.organization.create
Criar organização
—
—
structure.organization.move
Mudar a organização-mãe
—
—
structure.organization.close
Encerrar organização
—
—
structure.unit.create
Criar unidade
unidade-mãe
—
structure.unit.rename
Renomear unidade
a unidade
—
structure.unit.change-acronym
Trocar sigla (propaga às de baixo)
a unidade
—
structure.unit.move
Mover unidade ou trocar o nível
a unidade
—
structure.unit.close
Encerrar unidade
a unidade
—
structure.office.open
Abrir escritório físico
—
—
structure.office.change
Alterar escritório (nova versão)
—
—
structure.office.close
Fechar escritório
—
—
people.person.register
Cadastrar pessoa
—
—
people.person.correct
Corrigir cadastro
lotação atual da pessoa
—
people.person.merge
Unir cadastros duplicados
—
—
people.read
Consultar cadastro sem dados sensíveis e vínculos
lotação atual da pessoa
sim
people.sensitive.read
Consultar dados sensíveis (fica registrado)
lotação atual da pessoa
sim
people.external-account.register
Registrar conta em outro sistema
—
—
people.dependent.add
Incluir dependente
—
sim
people.dependent.end
Encerrar dependente
—
sim
people.transfer
Transferir (nova lotação)
lotação atual do vínculo
—
career.position.create
Criar cargo
—
—
career.position.describe
Mudar nome, responsabilidades e requisitos do cargo
—
—
career.position.move-track
Mover cargo de trilha
—
—
career.position.close
Encerrar cargo
—
—
career.level.create
Criar nível
—
—
career.level.close
Encerrar nível
—
—
people.document.deliver
Entregar documento de outra pessoa
—
na admissão, se o tipo de vínculo permitir
people.document.verify
Conferir ou recusar documento
—
—
people.documents.read
Ver documentos e vencimentos (fica registrado)
lotação atual da pessoa
sim
people.admission.start
Abrir admissão
unidade prevista
—
people.admission.complete
Completar cadastro na admissão
unidade prevista
se o tipo de vínculo permitir
people.admission.activate
Concluir admissão
unidade prevista
—
people.admission.read
Ver admissão e lista de documentos
unidade prevista
sim
career.promotion
Propor ou registrar promoção (ação de fluxo)
lotação atual do vínculo
—
career.track-change
Propor ou registrar mudança de trilha (ação de fluxo)
lotação atual do vínculo
—
leadership.designation
Propor ou registrar designação (ação de fluxo)
âmbito da designação, ou lotação da pessoa
—
leadership.designation.end
Encerrar designação
lotação atual da pessoa
—
bodies.body.create
Criar colegiado
—
—
bodies.body.reclassify
Reclassificar colegiado (nova versão)
—
—
bodies.body.reverse
Estornar colegiado
—
—
bodies.usage.register
Registrar reunião ou resolução do colegiado (servidor do Hub)
—
—
bodies.seat.grant
Dar assento
—
—
bodies.seat.end
Encerrar assento
—
—
people.bond.terminate
Encerrar vínculo (desligamento)
lotação atual do vínculo
—
remuneration.index.set
Abrir nova vigência de valor de índice
—
—
remuneration.coefficient.set
Definir ou mudar o coeficiente de um nível
—
—
remuneration.gratification.launch
Lançar gratificação num vínculo
lotação atual do vínculo
—
remuneration.gratification.end
Encerrar ou antecipar o fim de um lançamento
lotação atual do vínculo
—
remuneration.gratification.reverse
Estornar um lançamento
lotação atual do vínculo
—
remuneration.read
Consultar extrato e lançamentos de outra pessoa (fica registrado)
lotação atual do vínculo
—
remuneration.own.read
Consultar o próprio extrato e lançamentos (fica registrado)
lotação atual do vínculo
só a própria
remuneration.table.read
Consultar valores de índice e tabela de níveis (fica registrado)
—
—
remuneration.reads.read
Consultar o registro de consultas
—
—
routine.arrangement.set
Definir jornada e calendário de feriados do vínculo
lotação do vínculo
—
routine.punch.register
Registrar ponto
lotação do vínculo
sim
routine.attendance.read
Ver registros, irregularidades e ausências
lotação do vínculo, ou a unidade do relatório
sim (próprio vínculo)
routine.hour-bank.create
Criar banco de horas
—
—
routine.hour-bank.enroll
Incluir vínculo no banco
lotação do vínculo
—
routine.hour-bank.adjust
Lançar ajuste manual
lotação do vínculo
—
routine.hour-bank.adjustment.reverse
Estornar ajuste
lotação do vínculo
—
routine.hour-bank.process
Apurar o banco
—
—
routine.hour-bank.close
Encerrar o banco
—
—
routine.hour-bank.read
Ver saldos e extrato
lotação do vínculo (extrato); nenhum (saldos do banco)
sim (próprio extrato)
routine.request.create
Fazer pedido de frequência ou geral
lotação do vínculo
sim
routine.request.analyze
Atender ou negar pedido
lotação do vínculo
— (nunca o próprio pedido)
routine.request.cancel
Cancelar pedido
lotação do vínculo
sim, enquanto pendente
routine.request.read
Ver pedidos
lotação do vínculo
sim
routine.certificate.register
Apresentar atestado
lotação do vínculo
sim
routine.certificate.reverse
Estornar atestado
lotação do vínculo
—
routine.certificate.read
Ver atestados (fica registrado)
lotação do vínculo
sim
routine.vacation-calendar.open
Abrir calendário de férias
—
—
routine.vacation-calendar.close
Fechar calendário de férias
—
—
routine.vacation.request
Pedir férias
lotação do vínculo
sim
routine.vacation.analyze
Analisar férias (etapa do gestor)
lotação do vínculo
— (nunca as próprias)
routine.vacation.approve
Aprovar ou negar férias
lotação do vínculo
— (nunca as próprias)
routine.vacation.cancel
Cancelar férias
lotação do vínculo
sim, enquanto não aprovadas
routine.vacation.mark-taken
Registrar férias gozadas
lotação do vínculo
—
routine.vacation.read
Ver férias e períodos aquisitivos
lotação do vínculo
sim
Leituras de estrutura, cargos, níveis, colegiados e designações ficam abertas a qualquer usuário autenticado do cliente. Leituras de remuneração nunca ficam abertas: exigem o código próprio (RN-ORG-112). Leituras de calendários de férias ficam abertas a qualquer usuário autenticado do cliente.
Mesmas convenções da tabela anterior. "Sempre" indica comando em que a autorização é uma condição conferida no serviço, não uma permissão configurável.
Código
O que autoriza
Assunto da permissão
Próprio
development.skill-level.set
Definir ou retirar o patamar esperado de uma habilidade num cargo
—
—
development.competence.record
Registrar prova de atendimento a requisito do cargo
lotação atual da pessoa
—
development.competence.reverse
Estornar prova de competência
lotação atual da pessoa
—
development.competence.read
Ver a matriz de competência de outra pessoa
lotação atual da pessoa
sim
development.cycle.open
Abrir ciclo de avaliação
—
—
development.cycle.appraise
Apurar ciclo (fixa participantes)
—
—
development.cycle.close
Encerrar ciclo
—
—
development.evaluation.submit
Enviar avaliação
—
sempre: a relação da fonte com o avaliado
development.evaluation.reverse
Estornar avaliação de outro avaliador (ciclo aberto ou apurado)
—
quem avaliou, com o ciclo aberto
development.evaluation.results.read
Ver resultados, nove quadros e andamento do ciclo
lotação atual do avaliado (resultado individual)
sim (o próprio resultado)
development.probation.review
Avaliar o período de experiência
lotação do vínculo na data
—
development.probation.reverse
Estornar avaliação de experiência
lotação atual do vínculo
—
development.probation.read
Ver experiências a vencer e avaliações
lotação atual do vínculo (por vínculo)
sim
development.feedback.give
Dar feedback
lotação atual de quem recebe
—
development.feedback.request
Pedir feedback com prazo
lotação atual de quem é pedido
—
development.feedback.decline
Recusar pedido de feedback
—
sempre: só quem foi pedido
development.feedback.read
Ver feedback recebido por outra pessoa
lotação atual de quem recebeu
sim
development.recognition.give
Registrar elogio
—
—
development.recognition.reverse
Estornar elogio (sai do mural)
—
—
development.plan.define
Definir plano de desenvolvimento
lotação atual da pessoa
—
development.plan.item.update
Concluir ou abandonar item do plano
lotação atual da pessoa
sim
development.plan.read
Ver plano e sugestões de outra pessoa
lotação atual da pessoa
sim
development.course.require
Definir ou retirar curso esperado do cargo
—
—
development.enrollment.open
Matricular em curso
lotação atual da pessoa
sim
development.enrollment.complete
Registrar conclusão de curso
lotação atual da pessoa
—
development.enrollment.cancel
Cancelar matrícula
lotação atual da pessoa
sim
development.training.effectiveness
Avaliar a eficácia do treinamento
lotação atual da pessoa
—
development.training.read
Ver situação de treinamento e eficácias pendentes
lotação atual da pessoa (por pessoa)
sim
communication.announcement.publish
Publicar comunicado
—
—
communication.announcement.withdraw
Retirar comunicado
—
—
communication.announcement.acknowledge
Registrar ciência
—
sempre: quem está no público
communication.announcement.acknowledgements.read
Ver quem deu e quem falta dar ciência
—
—
communication.survey.publish
Publicar questionário
—
—
communication.survey.respond
Responder questionário
—
sempre: quem está no público
communication.survey.results.read
Ver resultado agregado
—
—
communication.birthdays.read
Ver aniversariantes (dia e mês)
—
—
Leituras abertas a qualquer usuário autenticado do cliente: ciclos, patamares por cargo, cursos por cargo, mural de elogios, o próprio feed de comunicados e os próprios questionários abertos.
Toda escrita é POST, exige o cabeçalho Idempotency-Key e registra o comando no livro de atos. Parâmetro :id é um identificador no formato UUID; texto fora desse formato devolve 400. Recusa por regra devolve 422 e fica gravada no livro; registro inexistente dentro de um comando também devolve 422 (RN-ORG-007), e em leitura devolve 404. Parâmetro on é uma data; sem ele vale o dia de hoje. Leitura sem código de ação (—) fica aberta a qualquer usuário autenticado do cliente.
Estrutura
Método
Caminho
Finalidade
Código de ação
GET
/v1/organizations?on=
Listar organizações na data
—
GET
/v1/organizations/:id/units?on=
Listar unidades da organização na data
—
GET
/v1/units/:id/history
Histórico de versões da unidade
—
POST
/v1/organizations
Criar organização
structure.organization.create
POST
/v1/organizations/:id/move
Mudar a organização-mãe
structure.organization.move
POST
/v1/organizations/:id/close
Encerrar organização
structure.organization.close
POST
/v1/units
Criar unidade
structure.unit.create
POST
/v1/units/:id/rename
Renomear unidade
structure.unit.rename
POST
/v1/units/:id/acronym
Trocar sigla
structure.unit.change-acronym
POST
/v1/units/:id/move
Mover unidade ou trocar o nível
structure.unit.move
POST
/v1/units/:id/close
Encerrar unidade
structure.unit.close
Escritórios
Método
Caminho
Finalidade
Código de ação
GET
/v1/offices?on=
Listar escritórios na data
—
GET
/v1/offices/:id/history
Histórico de versões do escritório
—
POST
/v1/offices
Abrir escritório
structure.office.open
POST
/v1/offices/:id/change
Alterar escritório
structure.office.change
POST
/v1/offices/:id/close
Fechar escritório
structure.office.close
Pessoas
Método
Caminho
Finalidade
Código de ação
GET
/v1/people/:id
Consultar cadastro; com sensitive=true, também dados sensíveis (fica registrado)
people.read, ou people.sensitive.read com dados sensíveis; a própria pessoa dispensa
GET
/v1/people/:id/dependents
Listar dependentes (fica registrado)
people.sensitive.read; a própria pessoa dispensa
POST
/v1/people
Cadastrar pessoa
people.person.register
POST
/v1/people/:id/corrections
Corrigir cadastro
people.person.correct
POST
/v1/people/:id/merge
Unir cadastros duplicados
people.person.merge
POST
/v1/people/:id/external-accounts
Registrar conta em outro sistema
people.external-account.register
POST
/v1/people/:id/dependents
Incluir dependente
people.dependent.add
POST
/v1/dependents/:id/end
Encerrar dependente
people.dependent.end
Vínculos
Método
Caminho
Finalidade
Código de ação
GET
/v1/people/:id/bonds
Listar vínculos e lotações da pessoa
people.read; a própria pessoa dispensa
POST
/v1/bonds/:id/transfer
Transferir para outra unidade
people.transfer
Cargos e níveis
Método
Caminho
Finalidade
Código de ação
GET
/v1/positions?on=
Listar cargos na data
—
GET
/v1/positions/:id/history
Histórico de versões do cargo
—
GET
/v1/levels?trackCode=&on=
Listar níveis da trilha na data
—
POST
/v1/positions
Criar cargo
career.position.create
POST
/v1/positions/:id/describe
Mudar nome, responsabilidades e requisitos
career.position.describe
POST
/v1/positions/:id/move-track
Mover cargo de trilha
career.position.move-track
POST
/v1/positions/:id/close
Encerrar cargo
career.position.close
POST
/v1/levels
Criar nível
career.level.create
POST
/v1/levels/:id/close
Encerrar nível
career.level.close
Documentos
Método
Caminho
Finalidade
Código de ação
GET
/v1/people/:id/documents?on=
Ver documentos da pessoa (fica registrado)
people.documents.read; a própria pessoa dispensa
GET
/v1/documents/expiring?on=&within=
Listar documentos a vencer ou vencidos (fica registrado)
people.documents.read
POST
/v1/people/:id/documents
Entregar documento
people.document.deliver
POST
/v1/documents/:id/decision
Conferir ou recusar documento
people.document.verify
Admissão
Método
Caminho
Finalidade
Código de ação
GET
/v1/admissions/:id
Ver admissão e lista de documentos
people.admission.read; o próprio funcionário dispensa
Valem as mesmas convenções das rotas da base de cadastro. Dinheiro trafega como texto decimal com 2 casas (por exemplo "1234.50"), nunca como número; o coeficiente tem até 4 casas. Toda consulta de remuneração exige o código indicado, é gravada no registro de consulta antes de devolver o dado (RN-ORG-113) e, sem permissão configurada, ninguém consulta, nem o administrador (RN-ORG-112).
Índices e tabela de níveis
Método
Caminho
Finalidade
Código de ação
GET
/v1/remuneration/indexes/:code/values
Listar os valores do índice, com as vigências passadas
remuneration.table.read
GET
/v1/remuneration/levels?on=
Tabela de níveis na data, com coeficiente, valor calculado e indicação de teto excedido
remuneration.table.read
POST
/v1/remuneration/indexes/:code/values
Abrir nova vigência de valor do índice
remuneration.index.set
POST
/v1/remuneration/levels/:id/coefficients
Definir ou mudar o coeficiente do nível
remuneration.coefficient.set
Gratificações
Método
Caminho
Finalidade
Código de ação
GET
/v1/bonds/:id/remuneration?on=
Extrato do vínculo na data: base calculada, gratificações vigentes, total e indicação de teto excedido
remuneration.read; a própria pessoa usa remuneration.own.read
GET
/v1/bonds/:id/gratifications
Listar os lançamentos e estornos do vínculo
remuneration.read; a própria pessoa usa remuneration.own.read
POST
/v1/bonds/:id/gratifications
Lançar gratificação
remuneration.gratification.launch
POST
/v1/gratifications/:id/end
Encerrar ou antecipar o fim do lançamento
remuneration.gratification.end
POST
/v1/gratifications/:id/reverse
Estornar o lançamento, com motivo
remuneration.gratification.reverse
Registro de consultas
Método
Caminho
Finalidade
Código de ação
GET
/v1/remuneration/reads?personId=&from=&to=
Listar quem consultou a remuneração da pessoa no período
Valem as mesmas convenções das rotas da base de cadastro. Instantes trafegam em UTC; datas, como AAAA-MM-DD. O pedido de registro de ponto não aceita horário: o horário é o do servidor (RN-ORG-154), e campo desconhecido no corpo devolve 400. Consultas por período usam from e to, com limite de 366 dias (93 no relatório de unidade). Irregularidades, ausências e saldos são calculados na consulta (RN-ORG-160).
Catálogos, regras e configurações
Catálogo
O que guarda
routine-settings (só o código default)
Fuso horário IANA; exigência de foto e de código QR no ponto; e, para férias, meses do período aquisitivo, dias de direito, meses de concessão, mínimo de dias por parcela, máximo de parcelas, se exige calendário aberto, se há análise do gestor, venda de dias (permitida e máximo) e adiantamento do 13º. Nenhum campo tem valor padrão; sem a configuração de férias, os comandos de férias são recusados (RN-ORG-150, RN-ORG-208).
work-schedules
Jornada fixa (nome, tolerância em minutos e intervalos de início e fim por dia da semana) ou livre (nome e minutos esperados por dia da semana) (RN-ORG-152).
holiday-calendars
Um item por localidade: nome, calendários dos quais herda e datas com nome (RN-ORG-172).
clock-qr-codes
Nome; o código do item é o conteúdo do código QR (RN-ORG-155).
request-types
Nome, alcance (frequência ou geral), efeito ao ser atendido e se exige anexo (RN-ORG-180).
certificate-types
Nome e se justifica ausência (RN-ORG-190).
Regra configurável
Verificação
routine.vacation.incomplete-acquisition
Período aquisitivo ainda não concluído na data do pedido de férias: sem regra ou no modo "avisar", só avisa; no modo "barrar", recusa (RN-ORG-203).
Arranjo de trabalho e ponto
Método
Caminho
Finalidade
Código de ação
POST
/v1/bonds/:id/arrangement
Definir jornada e calendário de feriados do vínculo
routine.arrangement.set
GET
/v1/bonds/:id/arrangements
Histórico de arranjos do vínculo
routine.attendance.read; o próprio funcionário dispensa a permissão
POST
/v1/bonds/:id/punches
Registrar ponto (entrada ou saída) com o horário do servidor
routine.punch.register; o próprio funcionário dispensa a permissão
GET
/v1/bonds/:id/punches?from=&to=
Listar registros de ponto do vínculo
routine.attendance.read; o próprio funcionário dispensa a permissão
Irregularidades e ausências
Método
Caminho
Finalidade
Código de ação
GET
/v1/bonds/:id/attendance?from=&to=
Relatório do vínculo: dias, saldos, ausências e irregularidades
routine.attendance.read; o próprio funcionário dispensa a permissão
GET
/v1/units/:id/attendance?from=&to=
Relatório da unidade e das de baixo (RN-ORG-166)
routine.attendance.read
Banco de horas
Método
Caminho
Finalidade
Código de ação
POST
/v1/hour-banks
Criar banco de horas
routine.hour-bank.create
POST
/v1/hour-banks/:id/members
Incluir vínculo no banco
routine.hour-bank.enroll
POST
/v1/hour-banks/:id/adjustments
Lançar ajuste manual
routine.hour-bank.adjust
POST
/v1/hour-bank-adjustments/:id/reverse
Estornar ajuste, com motivo
routine.hour-bank.adjustment.reverse
POST
/v1/hour-banks/:id/processings
Apurar o banco até uma data
routine.hour-bank.process
POST
/v1/hour-banks/:id/close
Encerrar o banco
routine.hour-bank.close
GET
/v1/hour-banks/:id/balances
Saldos apurados dos participantes
routine.hour-bank.read
GET
/v1/hour-banks/:id/members/:bondId/statement
Extrato do participante
routine.hour-bank.read; o próprio funcionário dispensa a permissão
Pedidos
Método
Caminho
Finalidade
Código de ação
POST
/v1/bonds/:id/requests
Fazer pedido de frequência ou geral
routine.request.create; o próprio funcionário dispensa a permissão
POST
/v1/requests/:id/decision
Atender ou negar pedido
routine.request.analyze
POST
/v1/requests/:id/cancel
Cancelar pedido, com justificativa
routine.request.cancel; o solicitante dispensa a permissão enquanto o pedido está pendente
GET
/v1/bonds/:id/requests
Listar pedidos do vínculo, com filtro por situação
routine.request.read; o próprio funcionário dispensa a permissão
GET
/v1/requests/pending
Fila de análise, sem os pedidos do próprio usuário (RN-ORG-183)
routine.request.analyze
Atestados
Método
Caminho
Finalidade
Código de ação
POST
/v1/bonds/:id/certificates
Apresentar atestado
routine.certificate.register; o próprio funcionário dispensa a permissão
POST
/v1/certificates/:id/reverse
Estornar atestado, com motivo
routine.certificate.reverse
GET
/v1/bonds/:id/certificates
Listar atestados do vínculo; a consulta fica registrada (RN-ORG-193)
routine.certificate.read; o próprio funcionário dispensa a permissão
Férias
Método
Caminho
Finalidade
Código de ação
GET
/v1/vacation-calendars
Listar calendários de férias
—
POST
/v1/vacation-calendars
Abrir calendário de férias
routine.vacation-calendar.open
POST
/v1/vacation-calendars/:id/close
Fechar calendário de férias
routine.vacation-calendar.close
POST
/v1/bonds/:id/vacations
Pedir férias
routine.vacation.request; o próprio funcionário dispensa a permissão
POST
/v1/vacations/:id/analysis
Análise do gestor
routine.vacation.analyze
POST
/v1/vacations/:id/approval
Aprovar ou negar férias
routine.vacation.approve
POST
/v1/vacations/:id/cancel
Cancelar férias, com justificativa
routine.vacation.cancel; o próprio funcionário dispensa a permissão enquanto não aprovadas
POST
/v1/vacations/:id/taken
Registrar férias gozadas
routine.vacation.mark-taken
GET
/v1/bonds/:id/vacations
Listar férias do vínculo
routine.vacation.read; o próprio funcionário dispensa a permissão
GET
/v1/bonds/:id/acquisition-periods
Períodos aquisitivos do vínculo, com direito, gozados, pendentes, vendidos, restantes e data limite
routine.vacation.read; o próprio funcionário dispensa a permissão
Valem as mesmas convenções das rotas anteriores. Toda escrita exige o cabeçalho Idempotency-Key e devolve o resultado do ato, com avisos e fatos. Datas trafegam como AAAA-MM-DD.
Catálogos, regras e configurações
Catálogo
O que guarda
skill-groups
Nome do grupo de habilidades e pesos por fonte (RN-ORG-220, RN-ORG-232).
skills
Nome, grupo, escala inteira (mínimo menor que máximo) e descrições por nota (RN-ORG-220).
evaluation-sources
Nome, relação com o avaliado (self, leader, peer, subordinate ou condition), condições e piso de avaliadores (RN-ORG-227).
skill-group-weights
Pesos dos grupos por trilha; o código do item é o da trilha (RN-ORG-233).
recognition-kinds
Nome do tipo de elogio (RN-ORG-242).
courses
Nome e carga horária opcional (RN-ORG-246).
announcement-kinds
Nome, se pede ciência e a cláusula da ISO 9001 que atende (RN-ORG-250).
Regra configurável
Verificação
development.promotion.evaluation
Nota geral mínima na última avaliação encerrada, dentro de um prazo em meses antes da promoção; avisa ou barra conforme o modo (RN-ORG-237).
development.probation.deadline
Avaliação de experiência depois do fim do período; os dias de aviso marcam "a vencer" na lista (RN-ORG-239).
development.training.effectiveness
Eficácia avaliada depois do prazo em dias contados da conclusão (RN-ORG-248).
Nenhuma ação deste grupo é de fluxo de aprovação. A promoção continua a mesma ação de fluxo; ganha apenas o requisito configurável development.promotion.evaluation.
Habilidades e competência
Método
Caminho
Finalidade
Código de ação
GET
/v1/positions/:id/skill-levels
Patamares esperados do cargo, numa data
—
POST
/v1/positions/:id/skill-levels
Definir ou retirar o patamar de uma habilidade
development.skill-level.set
GET
/v1/people/:id/competence
Matriz de competência da pessoa (cláusula 7.2 da ISO 9001)
development.competence.read; a própria pessoa dispensa a permissão
POST
/v1/people/:id/competence-evidences
Registrar prova de competência
development.competence.record
POST
/v1/competence-evidences/:id/reverse
Estornar prova, com motivo
development.competence.reverse
Ciclos de avaliação
A conta segue o desenho de média ponderada em dois níveis (RN-ORG-232, RN-ORG-233): primeiro por fonte dentro de cada habilidade, depois por habilidade dentro de cada grupo e por grupo na nota geral. O resultado nunca é gravado: é calculado a cada leitura (RN-ORG-236).
Método
Caminho
Finalidade
Código de ação
GET
/v1/evaluation-cycles
Listar ciclos
—
GET
/v1/evaluation-cycles/:id
Ver um ciclo
—
POST
/v1/evaluation-cycles
Abrir ciclo
development.cycle.open
POST
/v1/evaluation-cycles/:id/appraise
Apurar ciclo
development.cycle.appraise
POST
/v1/evaluation-cycles/:id/close
Encerrar ciclo
development.cycle.close
POST
/v1/evaluation-cycles/:id/evaluations
Enviar avaliação
development.evaluation.submit; conferida a relação com o avaliado
POST
/v1/evaluations/:id/reverse
Estornar avaliação, com motivo
development.evaluation.reverse; quem avaliou dispensa a permissão com o ciclo aberto
GET
/v1/evaluation-cycles/:id/my-evaluations
Avaliações que a pessoa autenticada precisa fazer
—
GET
/v1/evaluation-cycles/:id/results/:personId
Resultado individual, com distância ao patamar
development.evaluation.results.read; a própria pessoa dispensa a permissão
GET
/v1/evaluation-cycles/:id/results
Resultados do ciclo e nove quadros
development.evaluation.results.read
GET
/v1/evaluation-cycles/:id/progress
Andamento do ciclo
development.evaluation.results.read
Experiência
Método
Caminho
Finalidade
Código de ação
POST
/v1/bonds/:id/probation-review
Avaliar o período de experiência
development.probation.review
POST
/v1/probation-reviews/:id/reverse
Estornar avaliação de experiência, com motivo
development.probation.reverse
GET
/v1/probation-reviews/pending
Experiências a vencer e vencidas sem avaliação
development.probation.read
GET
/v1/bonds/:id/probation-reviews
Avaliações do vínculo
development.probation.read; a própria pessoa dispensa a permissão
Feedback e elogios
Método
Caminho
Finalidade
Código de ação
POST
/v1/people/:id/feedback
Dar feedback
development.feedback.give
GET
/v1/people/:id/feedback
Feedback recebido pela pessoa
development.feedback.read; a própria pessoa dispensa a permissão
POST
/v1/feedback-requests
Pedir feedback com prazo
development.feedback.request
POST
/v1/feedback-requests/:id/decline
Recusar pedido, com motivo
development.feedback.decline; só a pessoa pedida
GET
/v1/me/feedback-requests
Pedidos recebidos pela pessoa autenticada
—
GET
/v1/me/feedback-given
Feedback dado pela pessoa autenticada
—
POST
/v1/recognitions
Registrar elogio
development.recognition.give
POST
/v1/recognitions/:id/reverse
Estornar elogio, com motivo
development.recognition.reverse
GET
/v1/recognitions
Mural de elogios
—
GET
/v1/people/:id/recognitions
Elogios da pessoa
—
Plano de desenvolvimento
Método
Caminho
Finalidade
Código de ação
POST
/v1/people/:id/development-plan
Definir plano
development.plan.define
GET
/v1/people/:id/development-plan
Plano vigente
development.plan.read; a própria pessoa dispensa a permissão
GET
/v1/people/:id/development-plan/suggestions
Sugestões a partir do resultado do ciclo
development.plan.read; a própria pessoa dispensa a permissão
POST
/v1/development-plan-items/:id
Concluir ou abandonar item
development.plan.item.update; a própria pessoa dispensa a permissão
Cursos e treinamento
Método
Caminho
Finalidade
Código de ação
GET
/v1/positions/:id/courses
Cursos esperados do cargo
—
POST
/v1/positions/:id/courses
Definir ou retirar curso esperado
development.course.require
POST
/v1/people/:id/enrollments
Matricular
development.enrollment.open; a própria pessoa dispensa a permissão
POST
/v1/enrollments/:id/complete
Registrar conclusão
development.enrollment.complete
POST
/v1/enrollments/:id/cancel
Cancelar matrícula, com motivo
development.enrollment.cancel; a própria pessoa dispensa a permissão
POST
/v1/enrollments/:id/effectiveness
Avaliar a eficácia do treinamento
development.training.effectiveness
GET
/v1/people/:id/training
Situação de treinamento da pessoa
development.training.read; a própria pessoa dispensa a permissão
GET
/v1/training/effectiveness-pending
Eficácias pendentes
development.training.read
Comunicados
Método
Caminho
Finalidade
Código de ação
POST
/v1/announcements
Publicar comunicado (cláusulas 7.3 e 7.4 da ISO 9001)
communication.announcement.publish
POST
/v1/announcements/:id/withdraw
Retirar comunicado, com motivo
communication.announcement.withdraw
POST
/v1/announcements/:id/acknowledge
Registrar ciência
communication.announcement.acknowledge; só quem está no público
GET
/v1/announcements/feed
Feed da pessoa autenticada
—
GET
/v1/announcements/:id/acknowledgements
Quem deu e quem falta dar ciência
communication.announcement.acknowledgements.read
Questionários e aniversariantes
Método
Caminho
Finalidade
Código de ação
POST
/v1/surveys
Publicar questionário
communication.survey.publish
POST
/v1/surveys/:id/responses
Responder questionário
communication.survey.respond; só quem está no público
GET
/v1/surveys/open
Questionários abertos para a pessoa autenticada
—
GET
/v1/surveys/:id/results
Resultado agregado, sem autoria
communication.survey.results.read
GET
/v1/birthdays
Aniversariantes numa janela de datas, só dia e mês
Entradas, saídas e erros de cada operação seguem o contrato gerado pelo servidor e serão transcritos para as tabelas de Entrada, Saída e Erros depois da aprovação editorial das regras RN-ORG-021 a RN-ORG-056, RN-ORG-100 a RN-ORG-114 e RN-ORG-150 a RN-ORG-208 e RN-ORG-220 a RN-ORG-259 e RN-ORG-300 a RN-ORG-313.
Valem as mesmas convenções das rotas anteriores. Toda escrita é POST, exige o cabeçalho Idempotency-Key e devolve o resultado do ato, com avisos e fatos. Datas trafegam como AAAA-MM-DD. O valor-alvo trafega como texto decimal com ponto, por exemplo "1250.50", nunca como número (RN-ORG-304).
Catálogo e regra configurável
Catálogo
O que guarda
goal-indicators
Nome, unidade de medida, sentido (higher-is-better ou lower-is-better) e casas decimais de 0 a 4, com 0 como padrão (RN-ORG-301). Definido, versionado e aposentado pelo administrador do cliente.
Regra configurável
Verificação
goals.period.calendar
Ao criar a meta, o período é um mês, trimestre, semestre ou ano inteiro do calendário, dentre os configurados; avisa ou barra conforme o modo (RN-ORG-303).
Metas
Método
Caminho
Finalidade
Código de ação
POST
/v1/goals
Criar meta de unidade ou de pessoa; note opcional (até 500 caracteres) vira o motivo da versão 1
goals.goal.create
POST
/v1/goals/:id/revisions
Revisar o valor-alvo a partir de uma data, com motivo
goals.goal.revise
POST
/v1/goals/:id/close
Encerrar a meta antes do fim do período, com motivo
goals.goal.close
POST
/v1/goals/:id/reverse
Estornar meta criada por engano, com motivo
goals.goal.reverse
GET
/v1/units/:id/goals?on=
Metas vigentes da unidade na data
goals.read
GET
/v1/people/:id/goals?on=
Metas vigentes da pessoa na data
goals.read; goals.own.read para a própria pessoa
GET
/v1/goals/:id
Meta com o histórico de versões do valor-alvo
goals.read; goals.own.read para a própria pessoa
Fatos publicados: goal.created, goal.revised, goal.closed e goal.reversed (RN-ORG-313).
Datas no passado
Criação (periodStart), revisão (validFrom) e encerramento (closedOn) com data anterior à véspera de hoje são recusados com 422 DATE_IN_PAST, salvo se o corpo trouxer retroactive: true e um motivo. Na criação o motivo vai em reason; na revisão e no encerramento, o próprio reason do ato serve de motivo da retroatividade. retroactive: false ou ausente não basta.
Listas de metas vigentes
GET /v1/units/:id/goals e GET /v1/people/:id/goals aceitam limit (1 a 200, padrão 50) e cursor. A próxima página vem no cabeçalho Next-Cursor, vazio na última; o cursor é opaco. Cursor malformado, com caractere nulo ou vazio responde 400 CURSOR_INVALID. A ordem é por código do indicador e, depois, por identificador da meta.
Erros das metas
Recusas de negócio respondem 422 com o código abaixo e ficam registradas como recusa do ato.
Código
Quando
GOAL_TARGET_REQUIRED
Sem alvo, ou com unidade e pessoa ao mesmo tempo.
GOAL_PERIOD_INVALID
Fim do período anterior ao início.
GOAL_UNIT_NOT_ACTIVE
Unidade não ativa no início ou no fim do período.
GOAL_PERSON_WITHOUT_BOND
Pessoa sem vínculo vigente no início do período.
GOAL_TARGET_INVALID
Valor-alvo com mais casas do que o indicador permite.
GOAL_OVERLAP
Já existe meta não estornada do mesmo alvo e indicador em período que se cruza.
GOAL_NOT_FOUND
Meta inexistente em escrita (403 para quem não tem permissão ampla).
GOAL_REVERSED
Revisão ou encerramento de meta estornada.
GOAL_CLOSED
Revisão ou encerramento de meta já encerrada.
GOAL_ALREADY_REVERSED
Estorno de meta já estornada.
GOAL_REASON_REQUIRED
Motivo com menos de 3 caracteres após aparar.
GOAL_REVISION_OUTSIDE_PERIOD
Revisão que começa depois do fim do período.
GOAL_REVISION_UNCHANGED
Valor-alvo igual ao da versão vigente.
GOAL_REVISION_DATE_NOT_AFTER
Revisão que não começa depois do início da versão vigente.
GOAL_CLOSE_NOT_EARLIER
Encerramento em data igual ou posterior ao fim do período.
GOAL_CLOSE_BEFORE_VERSION
Encerramento anterior ao início da versão vigente.
DATE_IN_PAST
Data no passado sem retroactive: true e motivo.
goals.period.calendar
Período fora do calendário configurado, quando a regra está em modo que barra.
PERSON_MERGE_CONFLICT
União de cadastros com metas do mesmo indicador em períodos que se cruzam.
Formato do valor-alvo: até 14 dígitos inteiros e até 4 decimais, em texto. Número JSON, vírgula e expoente respondem 400; casas além das do indicador respondem 422 GOAL_TARGET_INVALID.
GET /v1/goals/:id devolve o histórico da meta: goalId, targetKind, unitId, personId, indicatorCode, indicatorName, measureUnit, direction, scale, periodStart, periodEnd, closedOn, closeReason, reversedAt, reverseReason e versions[], cada versão com version, target, reason, validFrom e validTo. Meta de outro cliente ou inexistente responde 404.
Este sistema guarda só o alvo. O Hub e o nead-hub-api leem as metas vigentes e medem o realizado
com as métricas deles.
Ler GET /v1/units/:id/goals?on=AAAA-MM-DD ou GET /v1/people/:id/goals?on=AAAA-MM-DD. Cada
item traz goalId, targetKind, unitId ou personId, indicatorCode, indicatorName,
measureUnit, direction, scale, periodStart, periodEnd, closedOn, effectiveEnd,
target, version e versionValidFrom.
O nead-hub-api mantém a correspondência entre o código do indicador, definido no catálogo do
cliente, e a métrica que ele mede. Indicador sem correspondência fica sem estado de meta.
A janela do realizado vai de periodStart até effectiveEnd (o encerramento, se houver, senão
o fim do período), com os dois dias incluídos.
O estado final usa o alvo vigente em effectiveEnd (ler com on=effectiveEnd). Antes disso, a
meta está em andamento.
target e o realizado se comparam como decimais exatos, nunca como números em ponto flutuante:
higher-is-better → batida se realizado ≥ alvo; lower-is-better → batida se realizado ≤ alvo.
Igual ao alvo é batida.
Os fatos goal.created, goal.revised, goal.closed e goal.reversed avisam mudanças para
quem guarda cópia.
Valem as mesmas convenções das rotas da base de cadastro.
Criação de cliente com modelo
Método
Caminho
Finalidade
Acesso
POST
/v1/platform/tenants
Criar cliente a partir de um modelo
Administrador da plataforma
O corpo aceita templateOn, data no formato AAAA-MM-DD, opcional. O modelo é aplicado com vigência desde essa data; sem ela, desde o dia da criação (RN-ORG-321). Data em outro formato devolve 400.
Leituras de integração
Leituras para o servidor do Hub (RN-ORG-333). Todas exigem people.read. As três últimas usam o dia de hoje quando on não é informado.
Método
Caminho
Finalidade
Código de ação
GET
/v1/external-accounts/person?system=&code=
Encontrar a pessoa pela conta em outro sistema; devolve { personId }, ou 404 se não houver
people.read, sobre todo o cliente
GET
/v1/units/:id/members?on=
Listar os membros vigentes da unidade na data
people.read, sobre a unidade
GET
/v1/designations?on=&rankCode=&unitId=
Listar as designações vigentes na data, filtradas por degrau e unidade
people.read, sobre a unidade se informada; senão sobre todo o cliente
GET
/v1/bonds?on=
Listar os vínculos vigentes na data
people.read, sobre todo o cliente
Lista de todo o cliente só é permitida a quem tem a permissão configurada sem depender de unidade.