Cadastrar e manter profissionais
Criar um supervisor
Os supervisores são cadastrados antes dos alunos, pois cada aluno tem ao menos um supervisor.
curl -X POST "https://api.clinicanasnuvens.com.br/clinica-escola/supervisor/novo" \
-H "Authorization: Basic <CREDENCIAIS_EM_BASE64>" \
-H "clinicaNasNuvens-cid: <TOKEN_DA_CLINICA>" \
-H "Content-Type: application/json" \
-d '{
"nome": "Ana Souza",
"emailLogin": "ana.souza@escola.edu.br",
"ativo": true,
"tipoConselhoProfissional": "CRO",
"ufConselhoProfissional": "SC",
"numeroConselhoProfissional": "12345",
"odontologista": true,
"duracaoConsulta": 30
}'
Campos da requisição
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
nome | String | Sim | Nome completo do profissional |
emailLogin | String | Sim | E-mail que será o login de acesso e a chave do registro |
tipoConselhoProfissional | String | Sim | Conselho de classe, por exemplo CRO ou CRM |
ufConselhoProfissional | String | Sim | Unidade federativa do conselho, por exemplo SC |
numeroConselhoProfissional | String | Sim | Número do registro no conselho |
ativo | Boolean | Não | Indica se o profissional fica ativo na clínica. Padrão false |
cpfcnpj | String | Não | CPF do profissional. Aceita máscara |
dataNascimento | String | Não | Data de nascimento, no formato AAAA-MM-DD |
odontologista | Boolean | Não | Marca o profissional como odontologista. Padrão false |
oftalmologista | Boolean | Não | Marca o profissional como oftalmologista. Padrão false |
especialidades | Array | Não | Identificadores das especialidades atendidas, que precisam existir e estar ativas |
duracaoConsulta | Integer | Não | Duração padrão da consulta, em minutos |
contato | Object | Não | Contatos do profissional |
endereco | Object | Não | Endereço do profissional |
Resposta:
{
"idProfissional": 10,
"idPessoaExecutor": 41,
"nome": "Ana Souza",
"emailLogin": "ana.souza@escola.edu.br",
"ativo": true
}
Os três campos de conselho são obrigatórios na criação de supervisor e não fazem parte da criação de aluno.
Criar um aluno
curl -X POST "https://api.clinicanasnuvens.com.br/clinica-escola/aluno/novo" \
-H "Authorization: Basic <CREDENCIAIS_EM_BASE64>" \
-H "clinicaNasNuvens-cid: <TOKEN_DA_CLINICA>" \
-H "Content-Type: application/json" \
-d '{
"nome": "João da Silva",
"emailLogin": "joao.silva@escola.edu.br",
"ativo": true,
"supervisoresEmail": ["ana.souza@escola.edu.br"],
"dataNascimento": "2001-03-15",
"odontologista": true,
"duracaoConsulta": 40
}'
Campos da requisição
| Campo | Tipo | Obrigatório | Descrição |
|---|---|---|---|
nome | String | Sim | Nome completo do aluno |
emailLogin | String | Sim | E-mail que será o login de acesso e a chave do registro |
supervisoresEmail | Array | Sim | E-mails dos supervisores do aluno. Aceita lista vazia |
ativo | Boolean | Não | Indica se o aluno fica ativo na clínica. Padrão false |
cpfcnpj | String | Não | CPF do aluno. Aceita máscara |
dataNascimento | String | Não | Data de nascimento, no formato AAAA-MM-DD |
odontologista | Boolean | Não | Marca o aluno como odontologista. Padrão false |
oftalmologista | Boolean | Não | Marca o aluno como oftalmologista. Padrão false |
especialidades | Array | Não | Identificadores das especialidades atendidas, que precisam existir e estar ativas |
duracaoConsulta | Integer | Não | Duração padrão da consulta, em minutos |
contato | Object | Não | Contatos do aluno |
endereco | Object | Não | Endereço do aluno |
Resposta:
{
"idProfissional": 11,
"idPessoaExecutor": 42,
"nome": "João da Silva",
"emailLogin": "joao.silva@escola.edu.br",
"ativo": true
}
ativo e supervisoresEmailativo tem padrão false. Quando omitido, o profissional é criado inativo, sem acesso ao
sistema e fora da agenda. Para criar o profissional ativo, informe "ativo": true.
supervisoresEmail é obrigatório, e pode ser enviado como lista vazia. Com a lista vazia, o
responsável pela clínica escola é atribuído como supervisor.
O registro no conselho não é exigido para alunos; profissionais com registro são cadastrados como supervisores.
Comportamentos automáticos da criação
Além do profissional, a criação gera automaticamente o usuário de acesso (sem senha) e o
executor de agenda (o idPessoaExecutor do retorno). O sistema envia ao emailLogin um
e-mail com o passo a passo para a definição da senha.
Quando o e-mail já existe
| Cenário | Resultado |
|---|---|
| Já é profissional nesta empresa | Recusado |
| É usuário mas não profissional | O usuário existente é reaproveitado e promovido a profissional |
| Não cadastrado | Usuário e profissional criados |
Alterar um aluno
curl -X PUT "https://api.clinicanasnuvens.com.br/clinica-escola/aluno/joao.silva%40escola.edu.br" \
-H "Authorization: Basic <CREDENCIAIS_EM_BASE64>" \
-H "clinicaNasNuvens-cid: <TOKEN_DA_CLINICA>" \
-H "Content-Type: application/json" \
-d '{ "nome": "João da Silva Santos", "supervisoresEmail": ["ana.souza@escola.edu.br"] }'
Resposta:
{
"idProfissional": 11,
"idPessoaExecutor": 42,
"nome": "João da Silva Santos",
"emailLogin": "joao.silva@escola.edu.br",
"ativo": true
}
A operação se aplica a alunos; para o e-mail de um supervisor, a operação é recusada.
Efeito dos campos omitidos:
| Campo omitido | Efeito |
|---|---|
nome | 400 Bad Request, Campo Obrigatório |
contato | Remove todos os contatos |
endereco | Remove o endereço completo |
cpfcnpj, dataNascimento, duracaoConsulta | Limpam os campos |
especialidades | Mantém as atuais |
supervisoresEmail | Substitui a lista |
emailLogin, ativo | Não pertencem a esta operação e não têm efeito aqui |
A lista de especialidades é substituída apenas quando enviada com itens.
Contato e endereço pertencem ao cadastro da pessoa, que é por empresa, portanto a alteração se aplica a todas as clínicas do grupo.
Ativar e inativar
curl -X PUT "https://api.clinicanasnuvens.com.br/clinica-escola/profissional/ativar/joao.silva%40escola.edu.br" \
-H "Authorization: Basic <CREDENCIAIS_EM_BASE64>" \
-H "clinicaNasNuvens-cid: <TOKEN_DA_CLINICA>"
As duas operações não recebem corpo da requisição e não retornam conteúdo. Aplicam-se a qualquer profissional de saúde da clínica, aluno ou supervisor.
A ativação e a inativação são por clínica:
| Situação | Resultado |
|---|---|
| O profissional atende em outras clínicas do grupo | Perde o perfil apenas nesta; continua ativo nas demais |
| Esta era a única clínica dele | O cadastro do profissional e do usuário são inativados |
idPessoaExecutor após a reativaçãoQuando o profissional não tem atendimentos executados, o registro de executor de agenda é
removido na inativação. Na reativação, o executor é recriado e pode receber um novo
idPessoaExecutor.
Agendamentos futuros, turmas vinculadas e planos em andamento não impedem a inativação: os agendamentos permanecem no sistema, e o profissional deixa de constar na agenda.
Configurar horários e permissões
Define três aspectos independentes: os horários de atendimento, a janela de acesso ao sistema e os grupos de permissão.
curl -X PUT "https://api.clinicanasnuvens.com.br/clinica-escola/profissional/configurar/joao.silva%40escola.edu.br" \
-H "Authorization: Basic <CREDENCIAIS_EM_BASE64>" \
-H "clinicaNasNuvens-cid: <TOKEN_DA_CLINICA>" \
-H "Content-Type: application/json" \
-d '{
"atendimento": {
"tipoAtendimento": "HORARIO_ATENDIMENTO",
"isBloqueiaAtendimentoSemAgendamento": true,
"horariosAtendimento": [
{
"dia": "SEGUNDA",
"diaDisponivel": true,
"periodo1": { "horarioInicial": "08:00:00", "horarioFinal": "12:00:00" },
"periodo2": { "horarioInicial": "13:30:00", "horarioFinal": "18:00:00" }
}
]
},
"horariosAcesso": [
{
"dia": "SEGUNDA",
"diaBloqueado": false,
"periodo1": { "horarioInicial": "07:30:00", "horarioFinal": "12:30:00" },
"periodo2": { "horarioInicial": "13:00:00", "horarioFinal": "18:30:00" }
}
]
}'
Os três blocos são opcionais e independentes: cada bloco enviado altera apenas o aspecto correspondente, e os blocos ausentes são mantidos.
Os dois períodos por dia representam o intervalo entre os turnos: periodo1 pela manhã e
periodo2 à tarde.
Dia da semana nos horários. Os dois blocos indicam, para cada dia da semana, se o dia está liberado, mas com campos de sentido oposto:
| Bloco | Campo | true | false |
|---|---|---|---|
horariosAtendimento | diaDisponivel | O profissional atende no dia, nos períodos informados | Não atende no dia |
horariosAcesso | diaBloqueado | O acesso ao sistema fica bloqueado no dia | O acesso é liberado nos períodos informados |
Quando o dia é liberado, o periodo1 é obrigatório.
Outras regras:
- Informe um único grupo em
gruposUsuario. Identificadores nulos limpam as permissões. - A configuração de atendimento é gravada no vínculo do profissional com a clínica do token. Quando o profissional não tem vínculo com essa clínica, o bloco não é aplicado.
Veja na Referência
Os detalhes de cada operação, campo a campo, estão em Referência › Profissional de saúde escola.