Reporte de Mensajes de Hardware
Mensajes crudos del hardware GPS por dispositivo — posiciones, eventos, sensores y datos de señal.
GET
/apidev/v1/reports/general/hardwarePermisoAPICLI_RPTAVL_HARDWARE
Límite de solicitudes10 req/min
Caché180s (3 min)
Rango máximo7 días
Resumen
Devuelve los mensajes crudos del GPS reportados por un solo dispositivo — cada fila es una transmisión con su posición, tipo de evento, velocidad, odómetro, lecturas de sensores y la dirección a la que se geocodificó. Úsalo para inspeccionar exactamente qué envió un dispositivo durante una ventana de hasta 7 días.
- Un solo dispositivo —
device_ides obligatorio; el reporte cubre un dispositivo a la vez - Filtro de evento —
eventacota los resultados a un código de evento específico - Sub-dispositivo —
dis_idapunta a un sub-ID particular cuando un dispositivo reporta varios
Solicitud
Encabezados de la solicitud
Every request to a protected endpoint requires these headers:
| Header | Required | Description |
|---|---|---|
Authorization | Yes | Bearer token obtained from the Login endpoint. Format: Bearer <token> |
X-API-Key | Yes | Company integration key provided during onboarding. Format: gtk_xxx... |
tenant | Yes | Your assigned tenant domain (default: geotareas.com) — always send your assigned tenant |
Content-Type | Conditional | application/json — required for POST and PUT requests |
Parámetros de consulta
| Parámetro | Tipo | Requerido | Predeterminado | Descripción |
|---|---|---|---|---|
startdate | string | Sí | — | Fecha-hora de inicio en ISO 8601 (ej. 2026-03-15T00:00:00). |
enddate | string | Sí | — | Fecha-hora de fin en ISO 8601. Rango máximo 7 días desde startdate. |
device_id | number | Sí | — | ID único de dispositivo (numérico, mín. 1). Este reporte es por un solo dispositivo. |
dis_id | number | No | — | Sub-ID del dispositivo. |
event | string | No | — | Filtro por código de evento. Longitud máxima 50. |
limit | integer | No | 25 | Cantidad de registros por página (1–100). |
offset | integer | No | 0 | Cantidad de registros a omitir para la paginación. |
Ejemplos de código
- cURL
- JavaScript
- Python
curl -s -H "Authorization: Bearer $TOKEN" \
-H "X-API-Key: $APIKEY" \
-H "tenant: $TENANT" \
"https://$TENANT/apidev/v1/reports/general/hardware?startdate=2026-03-15T00:00:00&enddate=2026-03-18T23:59:59&device_id=105&limit=25"
const res = await fetch(
`https://${TENANT}/apidev/v1/reports/general/hardware?startdate=2026-03-15T00:00:00&enddate=2026-03-18T23:59:59&device_id=105&limit=25`,
{
headers: {
'Authorization': `Bearer ${token}`,
'X-API-Key': apiKey,
'tenant': TENANT,
},
}
);
const data = await res.json();
import requests
response = requests.get(
f"https://{TENANT}/apidev/v1/reports/general/hardware",
headers={"Authorization": f"Bearer {token}", "X-API-Key": api_key, "tenant": TENANT},
params={"startdate": "2026-03-15T00:00:00", "enddate": "2026-03-18T23:59:59", "device_id": 105, "limit": 25},
)
data = response.json()
Respuesta
Campos de la respuesta
| Campo | Tipo | Descripción |
|---|---|---|
received_at | string | null | Marca de tiempo de recepción en el servidor. |
gps_datetime | string | null | Marca de tiempo del GPS. |
imei | string | IMEI del dispositivo. |
person_name | string | Nombre del conductor. |
event_code | string | Código de evento. |
event_name | string | Descripción del evento. |
latitude | number | null | Latitud. |
longitude | number | null | Longitud. |
valid | boolean | null | Fijación GPS válida. |
speed | number | Velocidad (km/h). |
heading | number | Rumbo (0-360). |
odometer | number | Odómetro (km). |
address | string | Dirección geocodificada inversa. |
temperature | number | null | Sensor de temperatura. |
battery | number | null | Voltaje de la batería. |
pois | string | Puntos de interés cercanos. |
geofences | string | Geocercas coincidentes. |
Ejemplo de respuesta
{
"success": true,
"data": [
{
"received_at": "2026-03-15T08:30:15",
"gps_datetime": "2026-03-15T08:30:12",
"imei": "353456789012345",
"person_name": "Carlos Martinez",
"event_code": "01",
"event_name": "Periodic report",
"latitude": 19.4326,
"longitude": -99.1332,
"valid": true,
"speed": 45.2,
"heading": 180,
"odometer": 34521.7,
"address": "Av. Reforma 1234, Col. Centro",
"temperature": 22.5,
"battery": 12.6,
"pois": "Sucursal Centro",
"geofences": "Zone North"
},
{
"received_at": "2026-03-15T08:31:15",
"gps_datetime": "2026-03-15T08:31:13",
"imei": "353456789012345",
"person_name": "Carlos Martinez",
"event_code": "10",
"event_name": "Ignition off",
"latitude": 19.4310,
"longitude": -99.1340,
"valid": true,
"speed": 0,
"heading": 180,
"odometer": 34522.1,
"address": "Calle Madero 456, Col. Centro",
"temperature": 23.0,
"battery": 12.4,
"pois": "",
"geofences": ""
}
],
"meta": {
"total": 2,
"limit": 25,
"offset": 0
}
}
Errores
| Código | HTTP | Descripción |
|---|---|---|
VALIDATION_ERROR | 400 | Parámetros inválidos (ej. falta device_id, el rango de fechas supera los 7 días). |
UNAUTHORIZED | 401 | tenant / Authorization / X-API-Key faltante, inválido o expirado |
FORBIDDEN | 403 | El usuario carece del permiso requerido. |
RATE_LIMITED | 429 | Se superaron las 10 req/min. |
INTERNAL_ERROR | 500 | Error inesperado del servidor. |