Ir para o conteúdo

Usuários e vínculos ​

Pessoas e papéis de uma instituição: cadastro, convite e vínculos.

Lista as pessoas da instituição ​

GET /instituicoes/{instituicaoId}/usuarios

Acesso: Exige a capacidade ADMINISTRAR sobre instituição (params.instituicaoId). Status de sucesso: 200.

Parâmetros de caminho

ParâmetroTipoObrigatórioRestriçõesDescrição
instituicaoIdstring (uuid)simId da instituição.

Parâmetros de consulta

ParâmetroTipoObrigatórioRestriçõesDescrição
buscastringnãoa 100 caracteresTexto para buscar (nome ou e-mail, conforme a rota).
limiteintegernão1…200; padrão: 50Quantos itens por página (1 a 200; o padrão varia por rota, em geral 50).
deslocamentointegernão0…100000; padrão: 0Quantos itens pular, para paginar (até 100000).
inativos"true" | "false"nãopadrão: "false"true inclui também os registros inativos.
tipo"equipe" | "alunos"nãoFiltra por tipo.
papel"CURADOR" | "PRECEPTOR" | "COORDENADOR" | "PROFESSOR" | "AUXILIAR" | "ALUNO"nãoFiltra pelo papel (ex.: PROFESSOR).
status"CONVIDADO" | "ATIVO" | "SUSPENSO"nãoFiltra pela situação.

Resposta

UsuarioLista

CampoTipoObrigatórioRestriçõesDescrição
itemslista de UsuarioDtosim
totalintegersim0…
contagensUsuarioContagensnão

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X GET "$API/instituicoes/{instituicaoId}/usuarios" -H "Authorization: Bearer $TOKEN"

Cria uma pessoa da equipe e dá o vínculo ​

POST /instituicoes/{instituicaoId}/usuarios

Acesso: Exige a capacidade ADMINISTRAR sobre instituição (params.instituicaoId). Limite: até 120 chamadas a cada 60 s por origem. Status de sucesso: 201.

Parâmetros de caminho

ParâmetroTipoObrigatórioRestriçõesDescrição
instituicaoIdstring (uuid)simId da instituição.

Corpo da requisição (EquipeCriar)

CampoTipoObrigatórioRestriçõesDescrição
emailEmailsim
nomestringsim1–200 caracteres
nationalitystring ou nulonão2–2 caracteres; ^[A-Za-z]{2}$
locale"pt-BR" | "es" | "en-US" ou nulonão
papel"CURADOR" | "PRECEPTOR" | "COORDENADOR" | "PROFESSOR" | "AUXILIAR"sim
disciplinaIdstring (uuid) ou nulonão
turmaIdstring (uuid) ou nulonão
podeAvaliarbooleannãopadrão: false
podeCadastrarbooleannãopadrão: false

Resposta

UsuarioDto

CampoTipoObrigatórioRestriçõesDescrição
idstring (uuid)sim
emailstringsim
nomestringsim
status"CONVIDADO" | "ATIVO" | "SUSPENSO"sim
nationalitystring ou nulosim
locale"pt-BR" | "es" | "en-US" ou nulosim
compartilhadobooleansimTem vínculo ou matrícula em outra instituição: só a plataforma altera nome e status.
jaExistiabooleannãoSó na resposta de criar: o e-mail já tinha conta e a pessoa foi vinculada a ela.

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X POST "$API/instituicoes/{instituicaoId}/usuarios" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{"email":"texto","nome":"texto","papel":"CURADOR"}'

Lê uma pessoa da instituição ​

GET /instituicoes/{instituicaoId}/usuarios/{usuarioId}

Acesso: Exige a capacidade ADMINISTRAR sobre instituição (params.instituicaoId). Status de sucesso: 200.

Parâmetros de caminho

ParâmetroTipoObrigatórioRestriçõesDescrição
usuarioIdstring (uuid)simId da pessoa.
instituicaoIdstring (uuid)simId da instituição.

Resposta

UsuarioDto

CampoTipoObrigatórioRestriçõesDescrição
idstring (uuid)sim
emailstringsim
nomestringsim
status"CONVIDADO" | "ATIVO" | "SUSPENSO"sim
nationalitystring ou nulosim
locale"pt-BR" | "es" | "en-US" ou nulosim
compartilhadobooleansimTem vínculo ou matrícula em outra instituição: só a plataforma altera nome e status.
jaExistiabooleannãoSó na resposta de criar: o e-mail já tinha conta e a pessoa foi vinculada a ela.

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X GET "$API/instituicoes/{instituicaoId}/usuarios/{usuarioId}" -H "Authorization: Bearer $TOKEN"

Atualiza uma pessoa da instituição ​

PATCH /instituicoes/{instituicaoId}/usuarios/{usuarioId}

Acesso: Exige a capacidade ADMINISTRAR sobre instituição (params.instituicaoId). Status de sucesso: 200.

Parâmetros de caminho

ParâmetroTipoObrigatórioRestriçõesDescrição
usuarioIdstring (uuid)simId da pessoa.
instituicaoIdstring (uuid)simId da instituição.

Corpo da requisição (UsuarioAtualizar)

CampoTipoObrigatórioRestriçõesDescrição
nomestringnão1–200 caracteres
nationalitystring ou nulonão2–2 caracteres; ^[A-Za-z]{2}$
locale"pt-BR" | "es" | "en-US" ou nulonão
status"ATIVO" | "SUSPENSO"não

Resposta

UsuarioDto

CampoTipoObrigatórioRestriçõesDescrição
idstring (uuid)sim
emailstringsim
nomestringsim
status"CONVIDADO" | "ATIVO" | "SUSPENSO"sim
nationalitystring ou nulosim
locale"pt-BR" | "es" | "en-US" ou nulosim
compartilhadobooleansimTem vínculo ou matrícula em outra instituição: só a plataforma altera nome e status.
jaExistiabooleannãoSó na resposta de criar: o e-mail já tinha conta e a pessoa foi vinculada a ela.

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X PATCH "$API/instituicoes/{instituicaoId}/usuarios/{usuarioId}" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{}'

Reenvia o convite por e-mail ​

POST /instituicoes/{instituicaoId}/usuarios/{usuarioId}/convite

Acesso: Exige a capacidade ADMINISTRAR sobre instituição (params.instituicaoId). Limite: até 30 chamadas a cada 60 s por origem. Status de sucesso: 204.

Parâmetros de caminho

ParâmetroTipoObrigatórioRestriçõesDescrição
usuarioIdstring (uuid)simId da pessoa.
instituicaoIdstring (uuid)simId da instituição.

Resposta

Sem corpo na resposta.

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X POST "$API/instituicoes/{instituicaoId}/usuarios/{usuarioId}/convite" -H "Authorization: Bearer $TOKEN"

Lista os vínculos da instituição ​

GET /instituicoes/{instituicaoId}/vinculos

Acesso: Exige a capacidade ADMINISTRAR sobre instituição (params.instituicaoId). Status de sucesso: 200.

Parâmetros de caminho

ParâmetroTipoObrigatórioRestriçõesDescrição
instituicaoIdstring (uuid)simId da instituição.

Parâmetros de consulta

ParâmetroTipoObrigatórioRestriçõesDescrição
buscastringnãoa 100 caracteresTexto para buscar (nome ou e-mail, conforme a rota).
limiteintegernão1…200; padrão: 50Quantos itens por página (1 a 200; o padrão varia por rota, em geral 50).
deslocamentointegernão0…100000; padrão: 0Quantos itens pular, para paginar (até 100000).
inativos"true" | "false"nãopadrão: "false"true inclui também os registros inativos.
usuarioIdstring (uuid)nãoId da pessoa.

Resposta

lista de VinculoItem (+ total)

CampoTipoObrigatórioRestriçõesDescrição
idstring (uuid)sim
usuarioIdstring (uuid)sim
nomestringsim
emailstringsim
papel"ADMIN_PLATAFORMA" | "CURADOR" | "PRECEPTOR" | "COORDENADOR" | "PROFESSOR" | "AUXILIAR"sim
instituicaoIdstring (uuid) ou nulosim
disciplinaIdstring (uuid) ou nulosim
turmaIdstring (uuid) ou nulosim
podeAvaliarbooleansim
podeCadastrarbooleansim
ativobooleansim

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X GET "$API/instituicoes/{instituicaoId}/vinculos" -H "Authorization: Bearer $TOKEN"

Cria um vínculo (papel e escopo) para uma pessoa ​

POST /instituicoes/{instituicaoId}/vinculos

Acesso: Exige a capacidade ADMINISTRAR sobre instituição (params.instituicaoId). Limite: até 120 chamadas a cada 60 s por origem. Status de sucesso: 201.

Parâmetros de caminho

ParâmetroTipoObrigatórioRestriçõesDescrição
instituicaoIdstring (uuid)simId da instituição.

Corpo da requisição (VinculoCriar)

CampoTipoObrigatórioRestriçõesDescrição
usuarioIdstring (uuid)sim
papel"CURADOR" | "PRECEPTOR" | "COORDENADOR" | "PROFESSOR" | "AUXILIAR"sim
disciplinaIdstring (uuid) ou nulonão
turmaIdstring (uuid) ou nulonão
podeAvaliarbooleannãopadrão: false
podeCadastrarbooleannãopadrão: false

Resposta

VinculoItem

CampoTipoObrigatórioRestriçõesDescrição
idstring (uuid)sim
usuarioIdstring (uuid)sim
nomestringsim
emailstringsim
papel"ADMIN_PLATAFORMA" | "CURADOR" | "PRECEPTOR" | "COORDENADOR" | "PROFESSOR" | "AUXILIAR"sim
instituicaoIdstring (uuid) ou nulosim
disciplinaIdstring (uuid) ou nulosim
turmaIdstring (uuid) ou nulosim
podeAvaliarbooleansim
podeCadastrarbooleansim
ativobooleansim

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X POST "$API/instituicoes/{instituicaoId}/vinculos" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{"usuarioId":"0198a000-0000-7000-8000-000000000001","papel":"CURADOR"}'

Atualiza um vínculo ​

PATCH /instituicoes/{instituicaoId}/vinculos/{vinculoId}

Acesso: Exige a capacidade ADMINISTRAR sobre instituição (params.instituicaoId). Status de sucesso: 200.

Parâmetros de caminho

ParâmetroTipoObrigatórioRestriçõesDescrição
vinculoIdstring (uuid)simId do vínculo.
instituicaoIdstring (uuid)simId da instituição.

Corpo da requisição (VinculoAtualizar)

CampoTipoObrigatórioRestriçõesDescrição
podeAvaliarbooleannão
podeCadastrarbooleannão
ativobooleannão

Resposta

VinculoItem

CampoTipoObrigatórioRestriçõesDescrição
idstring (uuid)sim
usuarioIdstring (uuid)sim
nomestringsim
emailstringsim
papel"ADMIN_PLATAFORMA" | "CURADOR" | "PRECEPTOR" | "COORDENADOR" | "PROFESSOR" | "AUXILIAR"sim
instituicaoIdstring (uuid) ou nulosim
disciplinaIdstring (uuid) ou nulosim
turmaIdstring (uuid) ou nulosim
podeAvaliarbooleansim
podeCadastrarbooleansim
ativobooleansim

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X PATCH "$API/instituicoes/{instituicaoId}/vinculos/{vinculoId}" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{}'

contato@presente.app.br