Skip to main content

Visão geral

O OmniDom usa JWT via cookies HttpOnly para autenticação. O fluxo é:
  1. POST /auth/login → recebe accessToken e refreshToken em cookies.
  2. Todas as requisições protegidas enviam os cookies automaticamente.
  3. Quando o accessToken expira, use POST /auth/refresh para renová-lo.
  4. POST /auth/logout invalida a sessão no servidor e limpa os cookies.
Os cookies são HttpOnly e Secure. Você não precisa (e não consegue) lê-los via JavaScript no frontend — o navegador os envia automaticamente.

Endpoints

Registrar usuário

Body:
Resposta 200: Usuário criado. Os cookies accessToken e refreshToken são definidos.

Login

Body:
Resposta 200:
Os cookies accessToken e refreshToken são definidos na resposta.

Dados do usuário autenticado

Requer cookie accessToken válido. Resposta 200:

Renovar token de acesso

Usa o cookie refreshToken para emitir um novo accessToken. Resposta 200: Novo cookie accessToken definido. Erro 401: Refresh token ausente ou inválido.

Logout

Requer cookie accessToken válido. Invalida a sessão no servidor e limpa ambos os cookies. Resposta 200:

Gestão de sessões

Listar sessões ativas

Rate limit: 10 requisições por minuto. Retorna todas as sessões ativas do usuário no tenant atual.

Revogar uma sessão

Rate limit: 10 requisições por minuto.

Recuperação de senha

Solicitar redefinição

Rate limit: 3 requisições por hora por IP. Body:
Um e-mail com link de redefinição é enviado se o endereço existir no sistema.

Redefinir senha

Body:

Estrutura do JWT

O accessToken contém os seguintes campos no payload:
Não use o campo tenantId do lado do cliente para lógica de autorização. O backend valida o tenant em cada requisição via TenantGuard.