El propósito principal de la API de historial de coordenadas de objeto es mostrar los datos historiales (coordenadas) de un objeto. La API de historial de coordenadas de objeto tiene dos puntos finales, así que hay dos tipos de solicitudes. El primer tipo de solicitud es para un objeto y una fecha y hora específica. Solo se muestran datos grabados a una fecha y hora especificada.
Ejemplo de solicitud para una fecha y hora específica:
GET /objects/{object_id}/coordinates/{datetime}?version=1&api_key=<…>
HOST:api.fm-track.com
Content-Type:application/json;charset=UTF-8
Este tipo de solicitud necesita tres parámetros (sin contar el API_key) para que la solicitud de API trabaje:
Parámetro | Tipo | Descripción |
---|---|---|
object_id | Cadena | ID del objeto externo |
datetime | Fecha y hora | El registro solicitado para la fecha y hora especificada. Ejemplo de fecha y hora: “2017-04-13T06:58:48.090Z”, según el estándar ISO-8601 |
version | Cadena | Versión de la API, actualmente solo version=1 está disponible |
api_key | Cadena | Clave de identificación del usuario |
Nota
Se recomienda utilizar el parámetro datetime desde el segundo punto final de API de historial de coordenadas de objeto, porque el parámetro de fecha y hora se específica por el segundo y el sistema no busca datos cerca de la fecha especificada.
Se muestra un ejemplo de respuesta a continuación, cuando todos los parámetros fueron incluidos y el API_key es válido:
{ "object_id" : "abc123", "datetime" : "2017-04-13T06:58:48.090Z", "ignition_status" : "UNKNOWN", "position" : { "altitude" : 0, "direction" : 0, "latitude" : 0, "longitude" : 0, "hdop": 0, "satellites_count" : 0, "speed" : 0 }, "device_inputs" : { "digital_input_1" : true, "digital_input_2" : true, "digital_input_3" : true, "digital_input_4" : true, "power_supply_voltage" : 0, "ibutton" : "xxxxxxxxxx", "first_driver_id" : "xxxxxxxxxx", "second_driver_id" : "xxxxxxxxxx", "temperature_sensor_0": 0, "temperature_sensor_1": 0, "temperature_sensor_2": 0, "temperature_sensor_3": 0, "temperature_sensor_0_id": "xxxxxxxxxx" }, "calculated_inputs":{ "mileage" : 0 } }
Si se ha introducido un parámetro o API_key incorrecto, el sistema responderá con un código de error. Los códigos de errores se describen en API. Los parámetros se describen al final de este capítulo.
El segundo punto final de la API de historial muestra un array de datos historiales para un periódo definido, que se puede usar al enviar el primer tipo de solicitud de API.
Ejemplo de solicitud para un periódo específico:
GET /objects/{object_id}/coordinates?version=1{&from_datetime,to_datetime,continuation_token,limit}&api_key=<…>
HOST:api.fm-track.com
Content-Type:application/json;charset=UTF-8
Este tipo de solicitud necesita tres parámetros (sin contar el API_key) para que la solicitud de API trabaje:
Parámetro | Tipo | Descripción |
---|---|---|
objectId | Cadena | ID del objeto externo |
fromDatetime | Fecha y hora | Encuentra registros desde la fecha y hora especificada. Ejemplo de fecha y hora: “2017-04-13T06:58:48.090Z”, según el estándar ISO-8601 |
version | Cadena | Versión de la API |
api_key | Cadena | Clave de identificación del usuario |
Los parámetros opcionales que no son obligatorios, pero pueden ser incluidos en la solicitud:
Parámetro | Tipo | Descripción |
---|---|---|
toDatetime | Fecha y hora | Encuentra registros hasta la fecha y hora especificada. El sistema buscará registros hasta la fecha actual o hasta que se alcance el límite de registros. Ejemplo de fecha y hora: “2017-04-13T06:58:48.090Z”, según el estándar ISO-8601 |
continuationToken | Fecha y hora | Incluye un símbolo de continuación, mostrará el siguiente conjunto de registros después de alcanzar el límite previo de registros |
limit | Número entero | Fija el límite de registros en la respuesta del sistema (el valor por defecto es 100 registros, el valor máximo es 1000 registros) |
api_key | Cadena | Clave de identificación del usuario |
Ejemplo de respuesta:
{ "continuation_token": "2017-04-13T06:58:48.121Z", "items": [ { "object_id" : "abc123", "datetime" : "2017-04-13T06:58:48.090Z", "ignition_status" : "UNKNOWN", "position" : { "altitude" : 0, "direction" : 0, "latitude" : 0, "longitude" : 0, "hdop": 0, "satellites_count" : 0, "speed" : 0 }, "device_inputs" : { "digital_input_1" : true, "digital_input_2" : true, "digital_input_3" : true, "digital_input_4" : true, "power_supply_voltage" : 0, "ibutton" : "xxxxxxxxxx", "first_driver_id" : "xxxxxxxxxx", "second_driver_id" : "xxxxxxxxxx", "temperature_sensor_0": 0, "temperature_sensor_1": 0, "temperature_sensor_2": 0, "temperature_sensor_3": 0, "temperature_sensor_0_id": "xxxxxxxxxx" }, "calculated_inputs":{ "mileage" : 0 } } ] }
Todos los parámetros de respuesta que se puede recibir:
Parámetro | Tipo | Descripción | Unidades |
---|---|---|---|
continuation_token | Se recibe el símbolo de continuación al solicitar una cantidad grande de registros para períodos largos, así superando el predeterminado límite de registros. El símbolo de continuación se mostrará al final de la respuesta y se puede usarlo para mostrar el siguiente conjunto de registros para el período seleccionado. Si no hay más registros después del símbolo de continuación, la respuesta será vacía. | Fecha y hora | |
items | Array | Contiene todos los parámetros según la solicitud | |
object_id | Cadena | ID del objeto externo | Texto |
datetime | Fecha y hora | La fecha y hora de coordenada, generada en el hardware. Formato: "yyyy-mm-ddThh:mm:ss.sssZ" | Según ISO-8601 |
ignition_status | Enum | Indica el estado de ignición del objeto. "ON" - Ignición encendida "OFF" - Ignición apagada "UNKNOWN" - No hay datos de ignición | ON- OFF |
position | Array | Contiene todos los parámetros de registros GPS | |
latitude | Decimal | Coordenada GPS - valor de latitud | Grados |
longitude | Decimal | Coordenada GPS - valor de longitud | Grados |
altitude | Número entero | Coordenada GPS - valor de altitud | Número |
direction | Número entero | Dirección de movimiento en grados | 0 = norte, creciente en el sentido horario |
speed | Número entero | Velocidad del objeto en movimiento | km/h |
satellites_count | Número entero | Cantidad de visibles satélites GPS o GLONASS (depende de la configuración del dispositivo) al generar el registro en el dispositivo | Número |
device_inputs | Array | Contiene los parámetros recibidos desde el hardware | |
power_supply_voltage | Número entero | Voltaje de fuente de alimentación del dispositivo | mV |
ibutton | Cadena | Código de iButton o tarjeta RFID de un conductor asignado a un vehículo | Texto |
hdop | Decimal | Precisión de coordenada GPS | Número |
first_driver_id | Cadena | Código de tacógrafo del primer conductor | Texto |
second_driver_id | Cadena | Código de tacógrafo del segundo conductor | Texto |
digital_input_1 | Booleano | Estado del objeto configurado o su equipo: True - activo False - inactivo | True - False (Verdadero - Falso) |
digital_input_2 | Booleano | Estado del objeto configurado o su equipo: True - activo False - inactivo | True - False (Verdadero - Falso) |
digital_input_3 | Booleano | Estado del objeto configurado o su equipo: True - activo False - inactivo | True - False (Verdadero - Falso) |
digital_input_4 | Booleano | Estado del objeto configurado o su equipo: True - activo False - inactivo | True - False (Verdadero - Falso) |
temperature_sensor_0 | Decimal | Datos de sensor de temperatura | °C |
temperature_sensor_1 | Decimal | Datos de sensor de temperatura | °C |
temperature_sensor_2 | Decimal | Datos de sensor de temperatura | °C |
temperature_sensor_3 | Decimal | Datos de sensor de temperatura | °C |
temperature_sensor_0_id | Cadena | ID de sensor de temperatura | Texto |
calculated_inputs | Array | Contiene los parámetros calculados en el sistema desde otros parámetros, según la configuración | |
mileage | Decimal | Distancia recorrida por el dispositivo (depende de la configuración del dispositivo) | km |
Se puede ver los puntos finales de API, los parámetros de solicitudes y las respuestas en “Swagger” haciendo clic en este enlace: https://api.fm-track.com