Autenticação e Perfil
Este módulo gerencia o acesso ao sistema, registro de novos usuários e a manutenção do perfil do usuário autenticado.
[GET] /
Endpoint de verificação do módulo de acesso.
Response (200 OK)
"access"Registro de Usuários
[POST] /register
Realiza o cadastro simplificado de um novo usuário.
Request Body
{
"name": "Novo Usuário",
"email": "novo@exemplo.com",
"password": "senha123",
"password_confirmation": "senha123"
}Response (201 Created)
{
"message": "Usuário registrado com sucesso!",
"user": {
"id": 10,
"name": "Novo Usuário",
"email": "novo@exemplo.com",
"created_at": "2024-12-26T17:30:00.000000Z"
}
}[POST] /register-full
Realiza o cadastro completo de um usuário "Master", incluindo dados da conta/empresa.
Request Body
{
"name": "Empresário Exemplo",
"email": "master@empresa.com",
"document": "12345678000199",
"password": "senha_segura",
"account_name": "Minha Empresa LTDA"
}Gestão de Acesso (API & Login)
[POST] /auth/login
Autentica um usuário e retorna um Bearer Token (Sanctum).
Variante 1: Login Web (Dashboard)POST /auth/login com device_name: "dashboard_sass"
Response (200 OK)
{
"token": "1|abc123token...",
"session_duration": 240,
"expires_at": "2024-12-27 12:00:00",
"user": {
"id": 1,
"name": "Admin",
"email": "admin@fastgivemoney.com",
"email_verified_at": "2024-01-01 10:00:00",
"status": "active"
},
"roles": [
{ "id": 1, "name": "admin", "permissions": [] }
]
}[POST] /account/get-token
Gera um token de curta duração (10 min) para acesso via API externa utilizando as credenciais da conta.
Request Body
{
"email": "usuario@exemplo.com",
"token": "ACCOUNT_STATIC_TOKEN"
}Response (200 OK)
{
"success": true,
"data": {
"token": "2|apiKeyToken...",
"token_type": "Bearer",
"expires_at": "2024-12-26T17:40:00+00:00",
"permissions": [
{ "id": 1, "name": "view-charges", "guard_name": "web" }
]
},
"message": "Autenticado com sucesso"
}Perfil e Sessão (Autenticado)
[GET] /auth/me
Retorna os dados do usuário logado e da conta ativa no contexto da sessão.
Response (200 OK)
{
"account": {
"id": 5,
"name": "Minha Conta",
"email": "conta@exemplo.com",
"document": "12345678000199",
"agency": "0001",
"account": "12345",
"status": "active"
},
"user": {
"id": 1,
"name": "Usuário Teste",
"email": "teste@exemplo.com",
"phone": "11988887777"
},
"permissions": [
{ "id": 1, "name": "charges.index", "slug": "listar-cobrancas" }
],
"role": { "id": 2, "name": "gerente", "guard_name": "web" },
"accounts": [
{
"account": { "id": 5, "name": "Minha Conta" },
"role": { "id": 2, "name": "gerente" }
}
]
}[PUT] /auth/edit
Atualiza os dados cadastrais do usuário autenticado.
Request Body
{
"name": "Nome Atualizado",
"phone": "11900000000",
"current_password": "SUA_SENHA_ATUAL",
"new_password": "NOVA_SENHA_OPCIONAL",
"new_password_confirmation": "NOVA_SENHA_OPCIONAL"
}Response (200 OK)
{
"success": true,
"data": {
"id": 1,
"name": "Nome Atualizado",
"email": "teste@exemplo.com",
"phone": "11900000000",
"email_verified_at": "..."
},
"message": "Usuário atualizado com sucesso"
}[POST] /auth/logout
Invalida o token de acesso atual.
Response (200 OK)
{
"message": "Successfully logged out"
}Verificação e Segurança
[POST] /auth/send-verification-code
Envia um código de 6 dígitos para o e-mail do usuário para fins de verificação.
Request Body
{
"email": "teste@exemplo.com"
}Response (200 OK)
{
"success": true,
"data": null,
"message": "Código de verificação enviado com sucesso"
}[POST] /auth/verify-email
Valida o código de verificação recebido por e-mail.
Request Body
{
"email": "teste@exemplo.com",
"verification_code": "123456"
}Response (200 OK)
{
"message": "E-mail verificado com sucesso!"
}[POST] /auth/forgot
Inicia o fluxo de recuperação de senha.
Request Body
{
"email": "teste@exemplo.com"
}Response (200 OK)
{
"message": "E-mail de recuperação enviado."
}[POST] /account/pin
Atualiza o PIN de segurança da conta.
Request Body
{
"pin": "1234",
"current_pin": "0000"
}(Response 200 OK ou 401)