Skip to main content

Overview

The Equipment API allows you to manage TETRA radio equipment (terminals) including creating, retrieving, updating, and deleting equipment records. Each equipment has properties like TEI, ISSI, terminal type, state, warranty information, and more.

Endpoints

List Equipment

Retrieve a paginated list of equipment with search capabilities.
GET /equipos
texto
string
Search term to filter equipment by TEI, ISSI, provider, or owner
page
integer
default:"1"
Page number for pagination (40 items per page)
Response
equipos
array
Array of equipment objects
Example Request
curl -X GET "https://your-domain.com/equipos?texto=1930013250" \
  -H "Cookie: your-session-cookie"

Create Equipment

Create a new equipment record.
POST /equipos
Request Body
terminal
integer
required
Terminal type ID (references tipo_terminal table)
estados
string
required
Equipment state name
tei
string
required
TETRA Equipment Identity (must be unique)
issi
string
Individual Short Subscriber Identity
nombre_issi
string
Descriptive name for the ISSI
propietario
string
Equipment owner
provisto
string
Equipment provider
con_garantia
boolean
Warranty status checkbox
fecha_venc_garantia
date
Warranty expiration date
observaciones
text
Additional observations
Example Request
curl -X POST "https://your-domain.com/equipos" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -H "Cookie: your-session-cookie" \
  -d "terminal=5" \
  -d "estados=Funcional" \
  -d "tei=1930013250" \
  -d "issi=1990001" \
  -d "provisto=PG" \
  -d "con_garantia=1" \
  -d "fecha_venc_garantia=2025-12-31"
Response Redirects to /equipos on success. Error Responses
error
string
“Ya se encuentra un equipo con el mismo TEI” - Equipment with this TEI already exists

Show Equipment

GET /equipos/{id}
id
integer
required
Equipment ID

Update Equipment

Update an existing equipment record.
PUT /equipos/{id}
id
integer
required
Equipment ID to update
Request Body
tei
string
required
TETRA Equipment Identity
estado
integer
State ID
fecha_estado
datetime
State change date
issi
string
Individual Short Subscriber Identity
nombre_issi
string
ISSI name
numero_bateria
string
Primary battery number
numero_segunda_bateria
string
Secondary battery number
provisto
string
Provider
propietario
string
Owner
con_garantia
boolean
Warranty checkbox
fecha_venc_garantia
date
Warranty expiration
observaciones
text
Observations
Example Request
curl -X PUT "https://your-domain.com/equipos/123" \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -H "Cookie: your-session-cookie" \
  -d "tei=1930013250" \
  -d "estado=2" \
  -d "numero_bateria=B001123"

Delete Equipment

Delete an equipment record and all related fleet and history records.
DELETE /equipos/{id}
id
integer
required
Equipment ID to delete
Response Redirects to /equipos with success message. Error Response
error
string
“Equipo no encontrado.” - Equipment not found

Additional Endpoints

View Equipment History

View assignment history for a specific equipment.
GET /ver-historico-desde-equipo/{id}
id
integer
required
Equipment ID
Response Returns a view with historical assignment records including dates, destinations, resources, and movement types.

Export Equipment to Excel

Export all equipment records to an Excel file.
GET /export-equipos
Response Downloads an Excel file named ListadoEquipos_{timestamp}.xlsx. Example Request
curl -X GET "https://your-domain.com/export-equipos" \
  -H "Cookie: your-session-cookie" \
  -o equipos.xlsx

Error Codes

400
error
Bad Request - Missing required fields or validation error
401
error
Unauthorized - Authentication required
403
error
Forbidden - Insufficient permissions (requires ver-equipo, crear-equipo, editar-equipo, or borrar-equipo)
404
error
Not Found - Equipment not found
422
error
Unprocessable Entity - Duplicate TEI or validation failure

Models

Equipment Model

The Equipment model (App\Models\Equipo) represents a TETRA radio terminal. Relationships
  • tipo_terminal - BelongsTo TipoTerminal (brand, model, type)
  • estado - BelongsTo Estado (operational state)
  • flota_general - HasMany FlotaGeneral (fleet assignments)
  • historico - HasMany Historico (assignment history)
  • auditoria - HasMany Auditoria (audit trail)
Source Code Reference Controller: app/Http/Controllers/EquipoController.php Model: app/Models/Equipo.php

Build docs developers (and LLMs) love