Usuários

5. Usuários#

POST/v1/users#

Cria um novo usuário na empresa.

Auth: Owner

Request:

json
{
  "email": "agente@empresa.com",
  "name": "Maria Souza",
  "password": "Senha1234",
  "role": "agent"
}
Campo Tipo Obrigatório Descricao
email string sim Email único
name string sim Nome do usuário
password string sim Senha (mínimo 12 caracteres)
role string não owner, admin ou agent. Padrão: agent

Resposta 201:

json
{
  "user_id": 3,
  "email": "agente@empresa.com",
  "role": "agent"
}

GET/v1/users#

Lista todos os usuários da empresa.

Auth: Owner

Resposta 200:

json
[
  {
    "id": 1,
    "email": "dono@empresa.com",
    "name": "Joao Silva",
    "role": "owner"
  },
  {
    "id": 3,
    "email": "agente@empresa.com",
    "name": "Maria Souza",
    "role": "agent"
  }
]

PATCH/v1/users/{userId}/role#

Altera o role de um usuário.

Auth: Owner

Request:

json
{
  "role": "admin"
}

Resposta 200:

json
{
  "user_id": 3,
  "role": "admin",
  "message": "role updated"
}

POST/v1/feedback#

Envia um feedback / relato de bug / solicitacao do Console para a caixa de suporte (via BiaMail). Não ha persistencia em banco — o email e o registro. O email do remetente e nome são obtidos do usuário autenticado (pelo user_id do JWT), entao a equipe de suporte pode responder direto.

Auth: Todos autenticados (qualquer role). Não exige email verificado.

Request:

json
{
  "category": "bug",
  "message": "Descricao detalhada do problema com pelo menos 10 caracteres."
}
Campo Tipo Obrigatório Descricao
category string sim Um de feedback, bug, request (case-insensitive)
message string sim Texto livre, entre 10 e 5000 caracteres (após trim)

Resposta 202:

json
{
  "message": "feedback sent"
}

Erros:

Status error_code Quando
400 INVALID_JSON Corpo JSON inválido
400 FEEDBACK_INVALID Categoria inválida, ou mensagem curta/longa demais
401 UNAUTHORIZED Sem sessão autenticada
401 TOKEN_INVALID Usuário do token não existe mais
500 INTERNAL Falha ao carregar o usuário
502 FEEDBACK_FAILED Falha ao entregar o email de feedback
503 FEEDBACK_FAILED Serviço de email não configurado