Ir para o conteúdo

Autenticação ​

Entrar, renovar e encerrar sessões; convite, primeiro acesso, troca e recuperação de senha.

Aceita o convite e define a senha ​

POST /auth/aceitar-convite

Acesso: Pública (sem login). Limite: até 10 chamadas a cada 60 s por origem. Status de sucesso: 200.

Cabeçalhos

ParâmetroTipoObrigatórioRestriçõesDescrição
user-agentstringnãoIdentificação do aplicativo cliente; guardada para a lista de conexões.

Corpo da requisição (AceitarConviteInput)

CampoTipoObrigatórioRestriçõesDescrição
tokenstringsim20–200 caracteres
senhaSenhasim
nationalitystringnão2–2 caracteres; ^[A-Za-z]{2}$
locale"pt-BR" | "es" | "en-US"não
aceiteslista de objectnão0–4 itens; padrão: []Termos aceitos (versão do documento vigente).
aceites[].documento"TERMO_USO" | "POLITICA_PRIVACIDADE"sim
aceites[].versaostringsim1–20 caracteres

Resposta

Sessao

CampoTipoObrigatórioRestriçõesDescrição
accessTokenstringsim
refreshTokenstringsim
expiresInintegersimValidade do token de acesso, em segundos.
usuarioMesim

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X POST "$API/auth/aceitar-convite" -H "Content-Type: application/json" -d '{"token":"texto","senha":"texto"}'

Pede o e-mail de recuperação de senha ​

POST /auth/esqueci-senha

Responde sempre da mesma forma, exista ou não o e-mail, para não revelar quem tem cadastro.

Acesso: Pública (sem login). Limite: até 5 chamadas a cada 60 s por origem. Status de sucesso: 202.

Corpo da requisição (EsqueciSenhaInput)

CampoTipoObrigatórioRestriçõesDescrição
emailEmailsim

Resposta

Sem corpo na resposta.

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X POST "$API/auth/esqueci-senha" -H "Content-Type: application/json" -d '{"email":"texto"}'

Entra com e-mail e senha ​

POST /auth/login

Devolve accessToken (válido por 15 minutos) e refreshToken (uso único, até 30 dias). Cinco falhas seguidas em 15 minutos bloqueiam a tentativa com 429 e retryAfterSeg.

Acesso: Pública (sem login). Limite: até 20 chamadas a cada 60 s por origem. Status de sucesso: 200.

Cabeçalhos

ParâmetroTipoObrigatórioRestriçõesDescrição
user-agentstringnãoIdentificação do aplicativo cliente; guardada para a lista de conexões.

Corpo da requisição (LoginInput)

CampoTipoObrigatórioRestriçõesDescrição
emailEmailsim
senhaSenhasim

Resposta

Sessao

CampoTipoObrigatórioRestriçõesDescrição
accessTokenstringsim
refreshTokenstringsim
expiresInintegersimValidade do token de acesso, em segundos.
usuarioMesim

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X POST "$API/auth/login" -H "Content-Type: application/json" -d '{"email":"texto","senha":"texto"}'

Encerra a sessão do token de renovação ​

POST /auth/logout

Acesso: Pública (sem login). Limite: até 60 chamadas a cada 60 s por origem. Status de sucesso: 204.

Corpo da requisição (LogoutInput)

CampoTipoObrigatórioRestriçõesDescrição
refreshTokenstringsim20–200 caracteres
dispositivoTokenstringnão8–4096 caracteres; ^[\x21-\x7E]+$

Resposta

Sem corpo na resposta.

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X POST "$API/auth/logout" -H "Content-Type: application/json" -d '{"refreshToken":"texto"}'

Encerra todas as sessões da conta ​

POST /auth/logout-todas

Acesso: Qualquer pessoa autenticada. Status de sucesso: 204.

Resposta

Sem corpo na resposta.

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X POST "$API/auth/logout-todas" -H "Authorization: Bearer $TOKEN"

Dados da pessoa autenticada e seus vínculos ​

GET /auth/me

Acesso: Qualquer pessoa autenticada. Status de sucesso: 200.

Resposta

Me

CampoTipoObrigatórioRestriçõesDescrição
idstring (uuid)sim
emailstringsim
nomestringsim
locale"pt-BR" | "es" | "en-US"sim
nationalitystring ou nulosim
vinculoslista de VinculoDtosim

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X GET "$API/auth/me" -H "Authorization: Bearer $TOKEN"

Pede o código do primeiro acesso ​

POST /auth/primeiro-acesso/codigo

Acesso: Pública (sem login). Limite: até 5 chamadas a cada 60 s por origem. Status de sucesso: 202.

Corpo da requisição (PrimeiroAcessoSolicitarInput)

CampoTipoObrigatórioRestriçõesDescrição
emailEmailsim

Resposta

Sem corpo na resposta.

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X POST "$API/auth/primeiro-acesso/codigo" -H "Content-Type: application/json" -d '{"email":"texto"}'

Confirma o primeiro acesso com o código ​

POST /auth/primeiro-acesso/confirmar

Acesso: Pública (sem login). Limite: até 10 chamadas a cada 60 s por origem. Status de sucesso: 200.

Cabeçalhos

ParâmetroTipoObrigatórioRestriçõesDescrição
user-agentstringnãoIdentificação do aplicativo cliente; guardada para a lista de conexões.

Corpo da requisição (PrimeiroAcessoConfirmarInput)

CampoTipoObrigatórioRestriçõesDescrição
emailEmailsim
codigostringsim^\d{6}$
senhaSenhasim

Resposta

Sessao

CampoTipoObrigatórioRestriçõesDescrição
accessTokenstringsim
refreshTokenstringsim
expiresInintegersimValidade do token de acesso, em segundos.
usuarioMesim

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X POST "$API/auth/primeiro-acesso/confirmar" -H "Content-Type: application/json" -d '{"email":"texto","codigo":"texto","senha":"texto"}'

Redefine a senha com o token do e-mail ​

POST /auth/redefinir-senha

Acesso: Pública (sem login). Limite: até 10 chamadas a cada 60 s por origem. Status de sucesso: 204.

Corpo da requisição (RedefinirSenhaInput)

CampoTipoObrigatórioRestriçõesDescrição
tokenstringsim20–200 caracteres
senhaSenhasim

Resposta

Sem corpo na resposta.

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X POST "$API/auth/redefinir-senha" -H "Content-Type: application/json" -d '{"token":"texto","senha":"texto"}'

Troca o token de renovação por uma sessão nova ​

POST /auth/refresh

O token de renovação é de uso único: reusar um token já usado encerra todas as sessões da conta. Guarde sempre o novo par devolvido.

Acesso: Pública (sem login). Limite: até 60 chamadas a cada 60 s por origem. Status de sucesso: 200.

Cabeçalhos

ParâmetroTipoObrigatórioRestriçõesDescrição
user-agentstringnãoIdentificação do aplicativo cliente; guardada para a lista de conexões.

Corpo da requisição (RefreshInput)

CampoTipoObrigatórioRestriçõesDescrição
refreshTokenstringsim20–200 caracteres

Resposta

Sessao

CampoTipoObrigatórioRestriçõesDescrição
accessTokenstringsim
refreshTokenstringsim
expiresInintegersimValidade do token de acesso, em segundos.
usuarioMesim

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X POST "$API/auth/refresh" -H "Content-Type: application/json" -d '{"refreshToken":"texto"}'

Troca a própria senha ​

POST /auth/trocar-senha

Acesso: Qualquer pessoa autenticada. Status de sucesso: 200.

Cabeçalhos

ParâmetroTipoObrigatórioRestriçõesDescrição
user-agentstringnãoIdentificação do aplicativo cliente; guardada para a lista de conexões.

Corpo da requisição (TrocarSenhaInput)

CampoTipoObrigatórioRestriçõesDescrição
senhaAtualSenhasim
novaSenhaSenhasim

Resposta

Sessao

CampoTipoObrigatórioRestriçõesDescrição
accessTokenstringsim
refreshTokenstringsim
expiresInintegersimValidade do token de acesso, em segundos.
usuarioMesim

Em caso de erro: modelo ErroApi.

Exemplo

bash
curl -X POST "$API/auth/trocar-senha" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{"senhaAtual":"texto","novaSenha":"texto"}'

contato@presente.app.br