Documentação da API - Users

Base via proxy no frontend: /api/proxy

Autenticação

Rotas privadas usam JWT via header Authorization.

Authorization: Bearer <seu_token_jwt_aqui>

POST /users/login

Autentica um usuário existente e retorna o token JWT.

POST /api/proxy/users/login
Body:
{
  "email": "usuario@exemplo.com",
  "senha": "senhaDoUsuario123"
}

POST /users

Cria um novo usuário (role padrão: cliente).

  • Campos obrigatórios: nome, email, cpf, telefone, senha, endereço (rua, numero, cidade, estado=UF, cep), consentimentoDados (termosDeUso, politicaDePrivacidade)
  • Validações: nome ≥ 3; email válido; cpf XXX.XXX.XXX-XX; telefone 10-11 dígitos; senha ≥ 8; UF 2 letras; cep XXXXX-XXX; consentimentos true

GET /users

Lista todos os usuários. Requer token de admin.

GET /users/:id

Obtém um usuário por ID. Requer ser o dono ou admin.

PUT /users/:id

Atualiza informações (nome, telefone, endereço). Requer dono ou admin.

DELETE /users/:id

Remove um usuário. Requer dono ou admin.

Usuário Admin de Teste

Para desenvolvimento foi disponibilizado um admin pré-criado:

email: admin@teste.com
senha: outrasenhaforte456

Erros de Validação (400)

Estrutura típica retornada pela API em caso de erro nos campos:

{
  "message": "Erro de validação",
  "errors": [
    {
      "code": "invalid_string",
      "validation": "email",
      "message": "Formato de email inválido.",
      "path": ["body", "email"]
    }
  ]
}