Perfil e sessões
Perfil da própria pessoa, foto, conexões ativas, termos e a pesquisa de satisfação do aplicativo.
Envia a resposta da pesquisa de satisfação
POST /feedback
Acesso: Qualquer pessoa autenticada. Limite: até 10 chamadas a cada 60 s por origem. Status de sucesso: 201.
Corpo da requisição (SusRespostaInput)
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
respostas | lista de integer | sim | 10–10 itens | Os 10 itens da versão positiva, na ordem, escala 1–5. |
observacoes | string | não | a 2000 caracteres |
Resposta
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
id | string (uuid) | sim | ||
pontuacao | number | sim |
Em caso de erro: modelo ErroApi.
Exemplo
curl -X POST "$API/feedback" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{"respostas":[1]}'Resumo da pesquisa de satisfação
GET /feedback/resumo
Acesso: Exige a capacidade PLATAFORMA. Status de sucesso: 200.
Resposta
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
total | integer | sim | ||
media | number ou nulo | sim | Média da pontuação SUS; nula sem respostas. | |
porItem | lista de number | sim | Média de cada item (1–5), na ordem; vazia sem respostas. |
Em caso de erro: modelo ErroApi.
Exemplo
curl -X GET "$API/feedback/resumo" -H "Authorization: Bearer $TOKEN"Atualiza o próprio perfil
PATCH /me
Acesso: Qualquer pessoa autenticada. Status de sucesso: 200.
Corpo da requisição (PerfilAtualizar)
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
nome | string | não | 1–200 caracteres | |
nationality | string ou nulo | não | 2–2 caracteres; ^[A-Za-z]{2}$ | |
locale | "pt-BR" | "es" | "en-US" ou nulo | não | ||
lattesUrl | "" | string | não | Endereço do currículo Lattes (https). | |
conselhoCodigo | string ou nulo | não | a 60 caracteres | Número no conselho de classe. Só a própria pessoa vê. |
anoGraduacao | integer ou nulo | não | 1930…2100 | |
residencia | boolean | não | ||
especializacao | boolean | não | ||
mestrado | boolean | não | ||
doutorado | boolean | não | ||
minibio | string ou nulo | não | a 2000 caracteres |
Resposta
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
id | string (uuid) | sim | ||
email | string | sim | ||
nome | string | sim | ||
locale | "pt-BR" | "es" | "en-US" | sim | ||
nationality | string ou nulo | sim | ||
vinculos | lista de VinculoDto | sim |
Em caso de erro: modelo ErroApi.
Exemplo
curl -X PATCH "$API/me" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{}'Baixa a foto do próprio perfil
GET /me/foto
Acesso: Qualquer pessoa autenticada. Status de sucesso: 200.
Resposta
Imagem (bytes).
Em caso de erro: modelo ErroApi.
Exemplo
curl -X GET "$API/me/foto" -H "Authorization: Bearer $TOKEN"Envia a foto do próprio perfil
PUT /me/foto
Acesso: Qualquer pessoa autenticada. Limite: até 20 chamadas a cada 60 s por origem. Status de sucesso: 200.
Corpo da requisição (arquivo): image/jpeg, image/png ou image/webp
Resposta
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
nome | string | sim | ||
email | string | sim | ||
nationality | string ou nulo | sim | ||
locale | "pt-BR" | "es" | "en-US" ou nulo | sim | ||
lattesUrl | string ou nulo | sim | ||
conselhoCodigo | string ou nulo | sim | ||
anoGraduacao | integer ou nulo | sim | ||
residencia | boolean | sim | ||
especializacao | boolean | sim | ||
mestrado | boolean | sim | ||
doutorado | boolean | sim | ||
minibio | string ou nulo | sim | ||
temFoto | boolean | sim | Há foto de perfil? A foto em si vem de GET /me/foto. | |
fotoEm | string ou nulo | sim | Muda a cada troca de foto (serve para renovar o cache do avatar). |
Em caso de erro: modelo ErroApi.
Exemplo
curl -X PUT "$API/me/foto" -H "Authorization: Bearer $TOKEN"Remove a foto do próprio perfil
DELETE /me/foto
Acesso: Qualquer pessoa autenticada. Status de sucesso: 204.
Resposta
Sem corpo na resposta.
Em caso de erro: modelo ErroApi.
Exemplo
curl -X DELETE "$API/me/foto" -H "Authorization: Bearer $TOKEN"Lê o próprio perfil completo
GET /me/perfil
Acesso: Qualquer pessoa autenticada. Status de sucesso: 200.
Resposta
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
nome | string | sim | ||
email | string | sim | ||
nationality | string ou nulo | sim | ||
locale | "pt-BR" | "es" | "en-US" ou nulo | sim | ||
lattesUrl | string ou nulo | sim | ||
conselhoCodigo | string ou nulo | sim | ||
anoGraduacao | integer ou nulo | sim | ||
residencia | boolean | sim | ||
especializacao | boolean | sim | ||
mestrado | boolean | sim | ||
doutorado | boolean | sim | ||
minibio | string ou nulo | sim | ||
temFoto | boolean | sim | Há foto de perfil? A foto em si vem de GET /me/foto. | |
fotoEm | string ou nulo | sim | Muda a cada troca de foto (serve para renovar o cache do avatar). |
Em caso de erro: modelo ErroApi.
Exemplo
curl -X GET "$API/me/perfil" -H "Authorization: Bearer $TOKEN"Lista as conexões ativas da pessoa
GET /me/sessoes
Acesso: Qualquer pessoa autenticada. Status de sucesso: 200.
Cabeçalhos
| Parâmetro | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
x-refresh-token | string | não | Token de renovação da sessão atual (para marcar qual conexão é a atual). |
Resposta
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
items | lista de SessaoAtivaDto | sim |
Em caso de erro: modelo ErroApi.
Exemplo
curl -X GET "$API/me/sessoes" -H "Authorization: Bearer $TOKEN"Encerra uma conexão
DELETE /me/sessoes/{id}
Acesso: Qualquer pessoa autenticada. Status de sucesso: 204.
Parâmetros de caminho
| Parâmetro | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
id | string (uuid) | sim | Id do recurso. |
Resposta
Sem corpo na resposta.
Em caso de erro: modelo ErroApi.
Exemplo
curl -X DELETE "$API/me/sessoes/{id}" -H "Authorization: Bearer $TOKEN"Encerra todas as outras conexões
POST /me/sessoes/encerrar-outras
Acesso: Qualquer pessoa autenticada. Limite: até 10 chamadas a cada 60 s por origem. Status de sucesso: 200.
Cabeçalhos
| Parâmetro | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
x-refresh-token | string | não | Token de renovação da sessão atual (para marcar qual conexão é a atual). |
Resposta
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
encerradas | integer | sim | 0… |
Em caso de erro: modelo ErroApi.
Exemplo
curl -X POST "$API/me/sessoes/encerrar-outras" -H "Authorization: Bearer $TOKEN"Termos e políticas vigentes das minhas instituições
GET /me/termos
Acesso: Qualquer pessoa autenticada. Status de sucesso: 200.
Resposta
| Campo | Tipo | Obrigatório | Restrições | Descrição |
|---|---|---|---|---|
items | lista de object | sim | ||
items[].instituicao | object | sim | ||
items[].instituicao.id | string (uuid) | sim | ||
items[].instituicao.sigla | string | sim | ||
items[].instituicao.nome | string | sim | ||
items[].termo | TermoDto | sim | ||
items[].politica | TermoDto | sim | ||
items[].urlPublica | string | sim | ||
items[].privacidade | PrivacidadeDto | sim |
Em caso de erro: modelo ErroApi.
Exemplo
curl -X GET "$API/me/termos" -H "Authorization: Bearer $TOKEN"