🎛️ Referência — Parâmetros
Regras de negócio e controle de acesso da clínica: desconto e alçada, financeiro, orçamento (Farol), estoque, avisos, acolhimento, serviços online, termo e permissões de dashboard.
Esta página cobre 1 grupo(s), 31 caminhos e
45 operações (método + caminho) do Swagger oficial. Todas as rotas usam a base
https://api.rabisistemas.com.br/api/v1/integrations (produção) ou
https://api.hmg.rabisistemas.dev/api/v1/integrations (homologação) e o header
Authorization: Bearer rbk_SEU_TOKEN. Toda rota pode responder também 401
(chave ausente/inválida/revogada/expirada), 403 (sem a permissão) e 503
(não foi possível validar a chave) — veja códigos de resposta.
Campos marcados ✅ são obrigatórios. Valores monetários são sempre em reais (não centavos), salvo onde a rota avisa o contrário.
Sumário
Parâmetros 45 operações
Regras de negócio e controle de acesso do tenant.
A chave de API nunca é tratada como administrador — níveis que exigem aprovação administrativa não são conferidos por estas rotas.
GET /parametros/desconto
Consultar parâmetros de desconto · Permissão: parametro:read
404 se nunca configurado.
Respostas
200— Parâmetros de desconto401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)404— Parâmetros de desconto não configurados503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PUT /parametros/desconto
Atualizar parâmetros de desconto · Permissão: parametro:update
Busca a linha a atualizar com findFirst() sem filtro (pega a primeira que existir, sem checar ativo/deleted). Campo omitido não altera o valor já salvo.
Corpo (application/json)
Nenhum campo obrigatório no nível principal.
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
descontoNivel1 | number | mín. 0; máx. 100 | |
descontoNivel2 | number | mín. 0; máx. 100 | |
descontoNivel3 | number | mín. 0; máx. 100 | |
limiteParcelasDesconto | integer | mín. 0 |
Respostas
200— Row completa (incluideleted, que não aparece no GET desta mesma rota).401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/desconto/colaboradores/{nivel}
Colaboradores com permissão de um nível de desconto · Permissão: parametro:read
nivel: 1, 2 ou 3 — qualquer outro valor (inclusive não numérico) é tratado como nível 0.
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
nivel | caminho | ✅ sim | string |
Respostas
200— Lista de colaboradores com esse nível (só quem já tem login no sistema)401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/desconto/colaborador/{id}
Nível de alçada de desconto de um colaborador · Permissão: parametro:read
Sem DescontoColaborador cadastrado, devolve 200 com nivelAlcada: "NIVEL0" e percentual: 0 — não é 404.
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
id | caminho | ✅ sim | integer | ID do colaborador — mín. 1 |
Respostas
200— Nível de alçada401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)404— Colaborador não encontrado503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
POST /parametros/desconto/colaborador/{id}
Conceder nível de desconto a um colaborador · Permissão: parametro:create
Hoje sempre falha por chave de API: o controller chama o use case com isAdmin fixo em false, e o use case exige isAdmin=true — toda chamada autenticada recebe 401, mesmo com o scope certo. nivel vai por query string, não pelo corpo, apesar de ser POST. Reportado ao time; documentado aqui pra não gerar confusão a mais em cima de um 401 que também é usado (em outras rotas) pra chave inválida.
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
id | caminho | ✅ sim | integer | ID do colaborador — mín. 1 |
nivel | query | ✅ sim | integer |
Respostas
200— Nunca observado hoje via chave de API — ver descrição. Se um dia for liberado, o corpo é vazio (0 bytes, sem JSON).401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/alcada-compra/colaborador/{id}
Alçada de compra de um colaborador · Permissão: parametro:read
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
id | caminho | ✅ sim | integer | ID do colaborador — mín. 1 |
Respostas
200— Alçada de compra — null se nunca configurada. Não existe NIVEL_1 (esse nível aprova sozinho, sem aprovador atribuível).401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)404— Colaborador não encontrado503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
POST /parametros/alcada-compra/colaborador/{id}
Conceder alçada de compra a um colaborador · Permissão: parametro:create
Hoje sempre falha por chave de API — mesmo bug de isAdmin fixo em false da rota de nível de desconto. nivel vai por query string, não pelo corpo.
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
id | caminho | ✅ sim | integer | ID do colaborador — mín. 1 |
nivel | query | não | string | Vazio remove a alçada — valores: NIVEL_2, NIVEL_3, NIVEL_4, |
Respostas
200— Nunca observado hoje via chave de API — ver descrição. Se um dia for liberado, o corpo é o DTO abaixo.400— nivel inválido401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)404— Colaborador não encontrado503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/financeiro
Consultar parâmetros financeiros · Permissão: parametro:read
Sem configuração salva, devolve um objeto reduzido só com os 3 campos numéricos (sem id).
Respostas
200— Parâmetros financeiros401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PUT /parametros/financeiro
Atualizar parâmetros financeiros · Permissão: parametro:update
findFirst() sem filtro (pega a primeira linha que existir). Cuidado com categoriaPagamentoId/centroDeCustoId: omitir, mandar 0, "" ou false força esses dois campos para null, mesmo em cima de um registro que já tinha esses vínculos — diferente dos 3 campos numéricos, que ficam inalterados se omitidos.
Corpo (application/json)
Nenhum campo obrigatório no nível principal.
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
limiteMaximoRecebimento | number | aceita null | |
limiteMaximoPagamento | number | aceita null | |
valorMinimoParcela | number | aceita null | |
categoriaPagamentoId | integer | Falsy (0/""/false/omitido) vira null — aceita null | |
centroDeCustoId | integer | Falsy (0/""/false/omitido) vira null — aceita null |
Respostas
200— Row completa.401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/orcamento
Consultar parâmetros de orçamento · Permissão: parametro:read
Atenção: sem configuração salva, esta rota devolve o número 0 cru como corpo da resposta (não um objeto, não 404) — comportamento real, não documentação errada.
Respostas
200— Parâmetros de orçamento, ou0se nunca configurado401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PUT /parametros/orcamento
Atualizar parâmetros de orçamento · Permissão: parametro:update
Inclui, entre outros, a chave que liga/desliga o bloqueio de criação pelo farol de rentabilidade (desabilitarBloqueioFarol). findFirst({where:{ativo:true}}) — diferente de desconto/financeiro, que não filtram. Nomes de campo do corpo divergem dos nomes na resposta: envie diasVencimento (não diasValidos) e consideracoes (não consideracoesGerais) — os demais batem 1:1. Sempre cria a linha se não existir (nunca devolve 0 no PUT, diferente do GET).
Corpo (application/json)
Nenhum campo obrigatório no nível principal.
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
diasVencimento | integer | Vira diasValidos na resposta — aceita null | |
consideracoes | string | Vira consideracoesGerais na resposta — aceita null | |
parametroVermelho | number | aceita null | |
parametroAmarelo | number | aceita null | |
requerAutorizacaoNivel2Amarelo | boolean | ||
requerAutorizacaoNivel3Vermelho | boolean | ||
requerAutorizacaoNivel3Roxo | boolean | ||
desabilitarBloqueioFarol | boolean |
Respostas
200— Row completa.401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/estoque
Consultar parâmetros de estoque · Permissão: parametro:read
Sem configuração salva, devolve { reservaMedicamentoAtiva: false } sem id.
Respostas
200— Parâmetros de estoque401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PUT /parametros/estoque
Atualizar parâmetros de estoque · Permissão: parametro:update
Inclui, entre outros, se a reserva de medicamento por paciente está ativa. Este modelo não tem campo deleted (diferente de desconto/financeiro/orçamento/termo).
Corpo (application/json)
Nenhum campo obrigatório no nível principal.
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
reservaMedicamentoAtiva | boolean |
Respostas
200— Row completa.401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/avisos
Listar avisos parametrizados · Permissão: parametro:read
Catálogo fixo (hoje 3 chaves: AUTORIZACAO_VENCENDO, GRADE_PENDENTE_GUIA, GRADE_AUTORIZACAO_VENCENDO).
Respostas
200— Lista de avisos401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/avisos/{chave}
Consultar aviso por chave · Permissão: parametro:read
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
chave | caminho | ✅ sim | string |
Respostas
200— Aviso401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)404— Aviso não encontrado503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PUT /parametros/avisos/{chave}
Atualizar aviso · Permissão: parametro:update
chave precisa ser uma das 3 do catálogo fixo (AUTORIZACAO_VENCENDO, GRADE_PENDENTE_GUIA, GRADE_AUTORIZACAO_VENCENDO) — outra chave dá 404. Se o aviso não suporta limiar (temLimiar:false), limiar enviado é descartado silenciosamente (fica null). Efeito colateral sem impacto na resposta: invalida cache Redis para GRADE_PENDENTE_GUIA/GRADE_AUTORIZACAO_VENCENDO.
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
chave | caminho | ✅ sim | string | valores: AUTORIZACAO_VENCENDO, GRADE_PENDENTE_GUIA, GRADE_AUTORIZACAO_VENCENDO |
Corpo (application/json)
Nenhum campo obrigatório no nível principal.
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
habilitado | boolean | ||
limiar | integer | aceita null |
Respostas
200— Mesmo shape do GET — nunca inclui id/createdAt/updatedAt (o aviso não é exposto como row de banco, é reconstruído a partir de um catálogo fixo no código + o que está persistido).401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)404— Aviso não existe503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/acolhimento
Consultar parâmetros de acolhimento · Permissão: parametro:read
Devolve null (200) se nunca configurado.
Respostas
200— Parâmetros de acolhimento, ou null401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PUT /parametros/acolhimento
Atualizar parâmetros de acolhimento · Permissão: parametro:update
Corpo (application/json)
Objeto livre — o Swagger publicado não detalha os campos desta rota. Consulte antes o GET correspondente para ver a estrutura atual e envie só chaves que existam nela.
Respostas
200— Envelope diferente da leitura401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/acolhimento/validar/{pacienteId}
Validar dados de acolhimento de um paciente · Permissão: parametro:read
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
pacienteId | caminho | ✅ sim | integer | |
dataAgendamento | query | não | string (date-time) | ISO 8601 — sem informar, usa agora |
servicoIds | query | não | string | IDs de serviço separados por vírgula |
Respostas
200— Resultado da validação401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)404— Paciente não encontrado503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
POST /parametros/acolhimento/atualizar-validacoes/{pacienteId}
Atualizar validações de acolhimento de um paciente · Permissão: parametro:update
Hoje sempre falha por chave de API: o controller exige req.colaborador?.id, que a autenticação por chave de API nunca popula — toda chamada recebe 401. Reportado ao time. Efeitos (não retornados, hipoteticamente se liberado): grava cpfValidadoEm/rgValidadoEm/enderecoValidadoEm/contatoValidadoEm no paciente e convenioValidadoEm nos vínculos em conveniosConfirmados, cria linhas em histórico de confirmação.
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
pacienteId | caminho | ✅ sim | integer |
Corpo (application/json)
Nenhum campo obrigatório no nível principal.
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
conveniosConfirmados | array<integer> | IDs de vínculo paciente-convênio a marcar como validado |
Respostas
200— Nunca observado hoje via chave de API — ver descrição.400— pacienteId inválido401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/acolhimento/historico-confirmacoes/{pacienteId}
Histórico de confirmações de acolhimento · Permissão: parametro:read
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
pacienteId | caminho | ✅ sim | integer |
Respostas
200— Histórico, mais recente primeiro401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/servicos-online
Consultar parâmetros de agendamento online · Permissão: parametro:read
Devolve null (200) se nunca configurado.
Respostas
200— Parâmetros, ou null401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/servicos-online/link
Gerar link público de agendamento online · Permissão: parametro:read
Respostas
200— Link gerado401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)500— Serviço de agendamento online não configurado no ambiente503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PATCH /parametros/servicos-online/habilitar
Habilitar/desabilitar agendamento online · Permissão: parametro:update
O campo do corpo é habilitar, não habilitado (a spec já documentou o nome errado antes — corrigido aqui). Coerção é Boolean(habilitar) (truthy JS: qualquer string não vazia vira true; só false/0/""/null/undefined viram false). Todas as 6 rotas */habilitar mexem em UM único registro singleton (AgendamentoOnline, id fixo 1) e a resposta é sempre a linha inteira, não só o campo alterado — na primeira chamada de qualquer uma delas, os campos ainda não tocados assumem o default do schema (habilitarEtapaAgendamento começa true; os demais começam false), o que pode surpreender.
Corpo (application/json)
Nenhum campo obrigatório no nível principal.
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
habilitar | boolean |
Respostas
200— Linha completa do singleton AgendamentoOnline (afetahabilitarAgendamentoOnline).401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PATCH /parametros/servicos-online/agendamento/habilitar
Habilitar/desabilitar etapa de agendamento online · Permissão: parametro:update
Campo do corpo é habilitar, não habilitado — ver detalhes em PATCH /parametros/servicos-online/habilitar. Afeta habilitarEtapaAgendamento.
Corpo (application/json)
Nenhum campo obrigatório no nível principal.
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
habilitar | boolean |
Respostas
200— Linha completa do singleton AgendamentoOnline.401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PATCH /parametros/servicos-online/agendamento/mudanca-colaborador/habilitar
Habilitar/desabilitar troca de colaborador no agendamento online · Permissão: parametro:update
Campo do corpo é habilitar, não habilitado — ver detalhes em PATCH /parametros/servicos-online/habilitar. Afeta permitirMudancaColaborador.
Corpo (application/json)
Nenhum campo obrigatório no nível principal.
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
habilitar | boolean |
Respostas
200— Linha completa do singleton AgendamentoOnline.401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PATCH /parametros/servicos-online/confirmacao/habilitar
Habilitar/desabilitar etapa de confirmação no agendamento online · Permissão: parametro:update
Campo do corpo é habilitar, não habilitado — ver detalhes em PATCH /parametros/servicos-online/habilitar. Afeta habilitarEtapaConfirmacao.
Corpo (application/json)
Nenhum campo obrigatório no nível principal.
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
habilitar | boolean |
Respostas
200— Linha completa do singleton AgendamentoOnline.401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PATCH /parametros/servicos-online/prontuario/habilitar
Habilitar/desabilitar etapa de prontuário no agendamento online · Permissão: parametro:update
Campo do corpo é habilitar, não habilitado — ver detalhes em PATCH /parametros/servicos-online/habilitar. Afeta habilitarEtapaProntuario.
Corpo (application/json)
Nenhum campo obrigatório no nível principal.
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
habilitar | boolean |
Respostas
200— Linha completa do singleton AgendamentoOnline.401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PATCH /parametros/servicos-online/lista-medico-convenio/habilitar
Habilitar/desabilitar lista de médico por convênio no agendamento online · Permissão: parametro:update
Campo do corpo é habilitar, não habilitado — ver detalhes em PATCH /parametros/servicos-online/habilitar. Afeta habilitarListaMedicoConvenio.
Corpo (application/json)
Nenhum campo obrigatório no nível principal.
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
habilitar | boolean |
Respostas
200— Linha completa do singleton AgendamentoOnline.401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PATCH /parametros/servicos-online/textos-informativos
Atualizar textos informativos do agendamento online · Permissão: parametro:update
Mesmo singleton AgendamentoOnline das rotas */habilitar — campo omitido fica inalterado (Prisma ignora undefined); na primeira criação, vira null.
Corpo (application/json)
Nenhum campo obrigatório no nível principal.
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
textoEtapaConvenio | string | aceita null | |
textoEtapaEspecialidade | string | aceita null | |
textoEtapaServico | string | aceita null | |
textoEtapaDocumentos | string | aceita null | |
textoEtapaProfissional | string | aceita null | |
textoEtapaData | string | aceita null | |
textoEtapaConfirmacao | string | aceita null |
Respostas
200— Linha completa do singleton AgendamentoOnline — inclui os 6 booleans de habilitação também, não só os textos.401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/servicos-online/agendamento/perguntas
Listar perguntas do agendamento online · Permissão: parametro:read
Respostas
200— Lista de perguntas401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
POST /parametros/servicos-online/agendamento/perguntas
Criar pergunta do agendamento online · Permissão: parametro:create
Corpo (application/json) — obrigatório
Campos obrigatórios: pergunta
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
pergunta | string | ✅ | |
especialidadeIds | array<integer> | Vazio/omitido = pergunta global, sem restrição de especialidade |
Respostas
201— Pergunta criada401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/servicos-online/agendamento/perguntas/por-especialidade
Listar perguntas por especialidade · Permissão: parametro:read
Sem especialidadeIds, só devolve as perguntas globais (sem restrição).
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
especialidadeIds | query | não | string | IDs separados por vírgula |
Respostas
200— Lista de perguntas401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PUT /parametros/servicos-online/agendamento/perguntas/{id}
Atualizar pergunta do agendamento online · Permissão: parametro:update
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
id | caminho | ✅ sim | integer | ID do registro desta rota (o Swagger publicado rotula como "ID do convênio" por engano de rótulo) — mín. 1 |
Corpo (application/json)
Nenhum campo obrigatório no nível principal.
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
pergunta | string | ||
especialidadeIds | array<integer> |
Respostas
200— Pergunta atualizada401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
DELETE /parametros/servicos-online/agendamento/perguntas/{id}
Excluir pergunta do agendamento online · Permissão: parametro:delete
Exclusão lógica (deleted = true).
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
id | caminho | ✅ sim | integer | ID do registro desta rota (o Swagger publicado rotula como "ID do convênio" por engano de rótulo) — mín. 1 |
Respostas
204— Pergunta excluída — sem corpo de resposta401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/servicos-online/agendamento/perguntas/colaborador/{colaboradorId}
Listar perguntas vinculadas a um colaborador · Permissão: parametro:read
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
colaboradorId | caminho | ✅ sim | integer |
Respostas
200— Lista de perguntas401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
POST /parametros/servicos-online/agendamento/perguntas/{perguntaId}/colaborador/{colaboradorId}
Vincular pergunta a um colaborador · Permissão: parametro:update
Idempotente (upsert numa chave composta, sem PK própria e sem timestamps). Não valida antecipadamente se perguntaId/colaboradorId existem — se algum não existir, a violação de FK do Postgres tende a virar um erro não tratado (500), diferente de outras rotas do módulo que checam antes com AppError.
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
perguntaId | caminho | ✅ sim | integer | |
colaboradorId | caminho | ✅ sim | integer |
Respostas
200— Só as duas colunas da chave composta — note que o campo éperguntaAgendamentoId, nãoperguntaIdcomo no path.401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/termo
Consultar parâmetros de termo de consentimento · Permissão: parametro:read
Devolve null (200) se nunca configurado.
Respostas
200— Parâmetros de termo, ou null401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PUT /parametros/termo
Atualizar parâmetros de termo de consentimento · Permissão: parametro:update
Único PUT deste grupo que valida de verdade: conteudo é obrigatório. findFirst({where:{ativo:true, deleted:false}}).
Corpo (application/json) — obrigatório
Campos obrigatórios: conteudo
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
conteudo | string | ✅ |
Respostas
200— Row completa — incluicreatedAt/updatedAt/deleted, que o GET desta mesma rota não lista hoje.400— O conteúdo do termo é obrigatório401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/dashboard-permissoes/graficos
Consultar permissão de gráficos de dashboard · Permissão: parametro:read
Controle de acesso a telas, não parâmetro de negócio. perfilPermissaoId é obrigatório na query.
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
perfilPermissaoId | query | ✅ sim | integer |
Respostas
200— Permissões400— perfilPermissaoId ausente/inválido401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PUT /parametros/dashboard-permissoes/graficos
Atualizar permissão de gráficos de dashboard · Permissão: parametro:update
Controle de acesso: define quem vê quais gráficos.
Corpo (application/json)
Campos obrigatórios: perfilPermissaoId, permissoes
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
perfilPermissaoId | integer | ✅ | |
permissoes | array<object> | ✅ | |
permissoes[].id | string | ||
permissoes[].habilitado | boolean |
Respostas
200— Confirmação, sem devolver os dados salvos401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/dashboard-permissoes/dashboards
Consultar permissão de dashboards · Permissão: parametro:read
Controle de acesso a telas, não parâmetro de negócio. perfilPermissaoId é obrigatório na query.
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
perfilPermissaoId | query | ✅ sim | integer |
Respostas
200— Permissões400— perfilPermissaoId ausente/inválido401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PUT /parametros/dashboard-permissoes/dashboards
Atualizar permissão de dashboards · Permissão: parametro:update
Controle de acesso: define quem vê quais painéis.
Corpo (application/json)
Campos obrigatórios: perfilPermissaoId, permissoes
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
perfilPermissaoId | integer | ✅ | |
permissoes | array<object> | ✅ | |
permissoes[].id | string | ||
permissoes[].habilitado | boolean |
Respostas
200— Confirmação, sem devolver os dados salvos401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
GET /parametros/dashboard-atribuicao
Consultar atribuição de dashboard · Permissão: parametro:read
perfilPermissaoId é obrigatório na query — diferente das duas rotas de permissão acima, esta não ecoa o valor de volta na resposta.
Parâmetros
| Nome | Onde | Obrig. | Tipo | Descrição / restrições |
|---|---|---|---|---|
perfilPermissaoId | query | ✅ sim | integer |
Respostas
200— Atribuições400— perfilPermissaoId ausente401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
PUT /parametros/dashboard-atribuicao
Atualizar atribuição de dashboard · Permissão: parametro:update
Controle de acesso: define qual dashboard cada colaborador/grupo enxerga.
Corpo (application/json)
Campos obrigatórios: perfilPermissaoId, dashboardIds
| Campo | Tipo | Obrig. | Descrição / restrições |
|---|---|---|---|
perfilPermissaoId | integer | ✅ | |
dashboardIds | array<string> | ✅ | |
homeDashboardId | string | aceita null |
Respostas
200— Confirmação, sem devolver os dados salvos401— Token ausente, inválido, revogado ou expirado403— A chave não tem a permissão exigida pela rota (devolvida emescopoFaltante)503— Não foi possível validar a chave no momento — falha de rede/indisponibilidade, não problema com a chave em si
Continue por aqui: Visão geral e autenticação · Implantação pela API · Erros e boas práticas