Usuários (Gestão)
Este módulo permite aos administradores da conta gerenciar quem tem acesso ao sistema, atribuindo papéis e controlando o status dos colaboradores.
Listar Usuários
[GET] /manager/users
Retorna todos os usuários associados à conta ativa.
Query Params
| Nome | Tipo | Descrição |
|---|---|---|
| search | string | Busca por nome ou e-mail do usuário. |
| per_page | integer | Itens por página (padrão 15). |
| page | integer | Página atual. |
Response (200 OK)
{
"data": [
{
"id": 1,
"user_id": 5,
"account_id": 10,
"user": {
"id": 5,
"name": "Colaborador de Teste",
"email": "colaborador@exemplo.com",
"phone": "11900000000",
"document": "12345678901",
"status": "active"
},
"role": {
"id": 2,
"name": "gerente"
},
"created_at": "2024-12-10T10:00:00.000000Z",
"updated_at": "2024-12-10T10:00:00.000000Z"
}
],
"meta": { "total": 5, "page": 1, "limit": 15 },
"message": "Lista de usuários recuperada com sucesso!"
}Criar Usuário (Convidar)
[POST] /manager/users
Cria um novo usuário e o vincula à conta com um papel específico. Se o e-mail não existir na base global, um novo cadastro é sugerido ou o convite é enviado.
Request Body
{
"name": "Ana Souza",
"email": "ana@empresa.com",
"role_id": 2,
"password": "senha_temporaria",
"password_confirmation": "senha_temporaria"
}Response (201 Created)
{
"data": {
"id": 2,
"user_id": 8,
"account_id": 10,
"user": {
"id": 8,
"name": "Ana Souza",
"email": "ana@empresa.com"
},
"role": { "id": 2, "name": "gerente" },
"created_at": "2024-12-26T17:55:00.000000Z",
"updated_at": "2024-12-26T17:55:00.000000Z"
},
"message": "Usuário criado com sucesso!"
}Detalhes do Usuário
[GET] /manager/users/{id}
Retorna os detalhes de um usuário específico da conta.
Response (200 OK)
{
"data": {
"id": 1,
"user_id": 5,
"user": {
"name": "Colaborador de Teste",
"email": "colaborador@exemplo.com"
},
"role": { "name": "gerente" }
},
"message": "Detalhes do usuário recuperado com sucesso!"
}Atualizar Usuário
[PUT] /manager/users/{id}
Atualiza os dados ou o papel de um usuário na conta.
Request Body
{
"name": "Ana Souza Silva",
"role_id": 1
}Response (200 OK)
{
"data": {
"id": 2,
"user": { "name": "Ana Souza Silva" },
"role": { "name": "admin" }
},
"message": "Usuário atualizado com sucesso!"
}Excluir Usuário (Remover da Conta)
[DELETE] /manager/users/{id}
Remove o vínculo do usuário com a conta. O usuário global permanece existindo, mas perde acesso aos dados desta conta específica.
Response (200 OK)
{
"message": "Usuário removido da conta com sucesso!"
}Listar Papéis (Roles) Disponíveis
[GET] /manager/guard/roles
Retorna a lista de papéis que podem ser atribuídos a usuários na conta.
Response (200 OK)
[
{ "id": 1, "name": "admin", "label": "Administrador" },
{ "id": 2, "name": "gerente", "label": "Gerente" },
{ "id": 3, "name": "vendedor", "label": "Vendedor" }
](Nota: O campo label pode variar conforme a tradução)