ElantarLTD API

Documentación de endpoints – Autenticación con Laravel Sanctum

Base URL: http://localhost/api

Autenticación

Las rutas protegidas requieren el header:

Authorization: Bearer {token}

Obtén el token con POST /api/login o POST /api/register.

Endpoints públicos

POST /api/login

Inicia sesión y obtiene un token. Rate limit: 5 intentos por minuto.

Body (JSON)
{
  "email": "usuario@ejemplo.com",
  "password": "password123",
  "device_name": "Postman"
}
Respuesta 200
{
  "success": true,
  "message": "Login exitoso",
  "user": { "id": 1, "name": "...", "email": "...", "created_at": "..." },
  "token": "1|..."
}
POST /api/register

Registra un nuevo usuario y devuelve un token.

Body (JSON)
{
  "name": "Nombre",
  "email": "nuevo@ejemplo.com",
  "password": "password123",
  "password_confirmation": "password123",
  "device_name": "Postman"
}

Endpoints protegidos (requieren token)

GET /api/user Bearer token

Devuelve el usuario autenticado.

GET /api/verify-token Bearer token

Comprueba si el token es válido y devuelve datos del token y del usuario.

GET /api/tokens Bearer token

Lista los tokens activos del usuario.

POST /api/logout Bearer token

Cierra la sesión actual (revoca el token en uso).

POST /api/logout-all Bearer token

Cierra todas las sesiones del usuario (revoca todos los tokens).

DELETE /api/tokens/{tokenId} Bearer token

Revoca un token concreto por su ID.

GET /api/ordenes-instalacion Bearer token

Lista órdenes de instalación del usuario (plomero o manager). Consulta directa a la BD.

Query params (opcionales)
ParamDescripción
pagePágina (default: 1)
per_pageRegistros por página (default: 15, máx: 100)
fechaInicioFecha inicio (m/d/Y)
fechaFinFecha fin (m/d/Y)
co_estatus_ordenID de estatus
order0=at_update DESC, 1=estatus+orden, 2=fecha instalación, 3=estatus DESC
all1 = devolver todas las órdenes (sin filtrar por usuario)
debug1 = incluir diagnóstico (BD, conteo c038t_ordenes)
Ejemplo URL
http://localhost/api/ordenes-instalacion?page=1&per_page=15&all=1
GET /api/ordenes-servicio Bearer token

Lista órdenes de servicio del usuario (creador, plomero o manager). Consulta directa a la BD (c058t_ordenes_servicio).

Query params (opcionales)
ParamDescripción
pagePágina (default: 1)
per_pageRegistros por página (default: 15, máx: 100)
fechaInicioFecha inicio (m/d/Y)
fechaFinFecha fin (m/d/Y)
co_estatus_ordenID de estatus
tx_origen_de_la_ordenU=Usuario, A=Administrativo, S=Sistema
order0=at_update DESC, 1=estatus+orden, 2=fecha instalación, 3=estatus DESC
all1 = devolver todas las órdenes
debug1 = incluir diagnóstico (BD, conteo c058t_ordenes_servicio)
Ejemplo URL
http://localhost/api/ordenes-servicio?page=1&per_page=15&all=1

Notificaciones

Consulta directa a c036t_usuarios_notificacion_his. Se resuelve co_usuario por email en c002t_usuarios.

GET /api/notifications Bearer token

1. Lista notificaciones del usuario (paginado).

ParamDescripción
pagePágina (default: 1)
per_pagePor página (default: 10, máx: 50)
unread_only1 = solo no leídas
http://localhost/api/notifications?page=1&per_page=10
GET /api/notifications/count Bearer token

2. Conteo de no leídas para el badge. Respuesta: { "success": true, "count": N }

http://localhost/api/notifications/count
GET /api/notifications/recent Bearer token

3. Últimas notificaciones no leídas (dropdown). Respuesta: { "success": true, "notifications": [...] }

Query: limit (default: 5, máx: 20).

http://localhost/api/notifications/recent?limit=5