Skip to main content
POST
/
api
/
autenticacion
/
iniciar-sesion
Iniciar Sesión
curl --request POST \
  --url https://api.example.com/api/autenticacion/iniciar-sesion \
  --header 'Content-Type: application/json' \
  --data '
{
  "email": "<string>",
  "password": "<string>"
}
'
{
  "200": {},
  "401": {},
  "422": {},
  "estado": "<string>",
  "mensaje": "<string>",
  "data": {
    "usuario": "<string>",
    "roles": [
      {}
    ],
    "token": "<string>"
  }
}

Endpoint

POST /api/autenticacion/iniciar-sesion
Este endpoint permite a los usuarios autenticarse en el sistema GIMA. Al autenticarse exitosamente, el sistema genera un token de acceso (Bearer token) que debe ser incluido en las solicitudes a endpoints protegidos.

Request Body

email
string
required
Dirección de correo electrónico del usuario. Debe ser un email válido registrado en el sistema.Validación: required|email
password
string
required
Contraseña del usuario.Validación: required

Response

estado
string
Estado de la operación. Valores posibles: "exito" o "error"
mensaje
string
Mensaje descriptivo del resultado de la operación
data
object
Objeto que contiene la información del usuario autenticado y el token de acceso
usuario
string
Nombre del usuario autenticado
roles
array
Lista de roles asignados al usuario (ej: ["admin"], ["tecnico", "supervisor"])
token
string
Token de acceso (Bearer token) que debe ser incluido en las solicitudes a endpoints protegidos

Status Codes

200
Success
Login exitoso. El usuario ha sido autenticado correctamente y se ha generado un token de acceso.
401
Unauthorized
Credenciales inválidas. El email o la contraseña son incorrectos.
422
Validation Error
Error de validación. Los datos proporcionados no cumplen con los requisitos (ej: email inválido, campos faltantes).

Examples

Successful Login

cURL
curl -X POST http://127.0.0.1:8000/api/autenticacion/iniciar-sesion \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "email": "[email protected]",
    "password": "12345678"
  }'
Response (200 OK)
{
  "estado": "exito",
  "mensaje": "Login correcto",
  "data": {
    "usuario": "Admin User",
    "roles": ["admin"],
    "token": "1|a8K9mN3vR7xY2qW5eT4pL6jH8dF1sA0cX9bV7nM3"
  }
}

Invalid Credentials

cURL
curl -X POST http://127.0.0.1:8000/api/autenticacion/iniciar-sesion \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "email": "[email protected]",
    "password": "wrongpassword"
  }'
Response (401 Unauthorized)
{
  "estado": "error",
  "mensaje": "Credenciales inválidas"
}

Validation Error

cURL
curl -X POST http://127.0.0.1:8000/api/autenticacion/iniciar-sesion \
  -H "Content-Type: application/json" \
  -H "Accept: application/json" \
  -d '{
    "email": "invalid-email",
    "password": "12345678"
  }'
Response (422 Validation Error)
{
  "message": "The email field must be a valid email address.",
  "errors": {
    "email": [
      "The email field must be a valid email address."
    ]
  }
}

Notes

  • El token generado debe ser guardado en el cliente y enviado en el header Authorization: Bearer {token} para acceder a endpoints protegidos.
  • Los tokens de acceso son generados usando Laravel Sanctum.
  • El nombre del dispositivo/token en el sistema es token-acceso-api.

Build docs developers (and LLMs) love