Introduzione compatibilità API Trackingram

Questa guida è riservata agli utenti provenienti da Trackingram che sono stati migrati in Flotta in Cloud e che vogliono continuare ad usare la vecchia versione APi in uso in Trackingram.

API Endpoint

https://api.flottaincloud.it/apiPublic/v1_0/

Flotta in Cloud mette a disposizione un servizio REST API, per integrazioni nelle vostre applicazioni.

Questa documentazione fornisce informazioni sugli endpoint disponibili e su come interagire con essi.

Endpoint REST API: https://api.flottaincloud.it/apiPublic/v1_0/

Migrazione da Trackingram

L'unica azione da fare per continuare ad usare le API di Trackingram su Flotte in Cloud consiste nel cambiare l'url base delle chiamate da

https://api-production.trackingram.chat

al nuovo ENDPOINT:

https://api.flottaincloud.it

Non sono richieste altre modifiche per continuare ad usare le REST API nella stessa modalità che usavi in Trackingram

Attivazione API

Per attivare il servizo di REST API di Flotta in Cloud bisogna andare sulle impostazioni del proprio profilo utente in Flotta in Cloud.
Dove sarà possibile abilitare/disabilitare il servizio REST API e ottenere api_token da usare per l'autenticazione.

Autenticazione

Example header Basic Auth

--header 'Authorization: Basic <your_btoa_token>'
        
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function() {
  if(this.readyState === 4) {
    console.log(this.responseText);
  }
});
var token = <email> + ":" + <api_token>
var hash = btoa(token);

xhr.setRequestHeader("Authorization", "Basic " + hash);
        
var request = require('request');
var token = <email> + ":" + <api_token>>
var hash = btoa(token);
var options = {
  'method': 'GET',
  'url': 'https://api.flottaincloud.it/apiPublic/v1_0/<api_path>',
  'headers': {
    'Authorization': 'Basic ' + hash
  }
};
        
import http.client
import base64

conn = http.client.HTTPSConnection("api.flottaincloud.it")
hash = base64.b64encode(b'<email>:<api_token>>')
payload = ''
headers = {
  'Authorization': 'Basic ' + hash
}
conn.request("GET", "/apiPublic/v1_0/<api_path>", payload, headers)
        

Dopo aver attivato il servizio API dal portale, si potrà utilizzare l'api_token in associazione all'email dell'account per autenticare le richieste HTTP.

Questi parametri andranno inseriti all'interno dell'header delle richieste HTTP come Basic Athentication:

  • Username - your email
  • Password - api_token

Se l'autenticazione fallisce, sarà restituito un JSON object di tipo Error e con HTTP status 401.

Versioning

Tutte le chiamate API dovrebbero includere nel path la versione con cui desideri effettuare la richiesta. La versione attuale è la v1_0.

Se non viene passata alcuna versione, verrà utilizzata l'ultima versione dell'API.

Se di usa come versione /latest verrà sempre utilizzata l'ultima versione disponibile.

Example path: https://api.flottaincloud.it/apiPublic/v1_0/<requested_path>

Paginazione

Example request

curl --location --request GET 'https://api.flottaincloud.it/apiPublic/v1_0/<api_path>&skip=0&limit=1500' \
--header 'Authorization: Basic <your_btoa_token>'
        
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function() {
  if(this.readyState === 4) {
    console.log(this.responseText);
  }
});
var token = <email> + ":" + <api_token>
var hash = btoa(token);
xhr.open("GET", "https://api.flottaincloud.it/apiPublic/v1_0/<api_path>&skip=0&limit=1500");
xhr.setRequestHeader("Authorization", "Basic " + hash);
xhr.send();
        
var request = require('request');
var token = <email> + ":" + <api_token>
var hash = btoa(token);
var options = {
  'method': 'GET',
  'url': 'https://api.flottaincloud.it/apiPublic/v1_0/<api_path>&skip=0&limit=1500',
  'headers': {
    'Authorization': 'Basic ' + hash
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
        
import http.client
import base64

conn = http.client.HTTPSConnection("api.flottaincloud.it")
hash = base64.b64encode(b'<email>:<api_token>>')
payload = ''
headers = {
  'Authorization': 'Basic ' + hash
}
conn.request("GET", "/apiPublic/v1_0/<api_path>&skip=0&limit=1500", payload, headers)
res = conn.getresponse()
data = res.read()
        

Tutti gli endpoint GET che restituiscono un elenco di oggetti supportano la paginazione.
Ciò significa che per ottenere tutti gli oggetti, è necessario impaginare i risultati utilizzando sempre gli stessi parametri con il valore di skip che indica quanti elementi saltare nell'elenco.
Tutti i risultati sono reperiti quando has_more della risposta è false. Il numero di elementi massimo in lista è specificato tramite limit ed è impostato su 1500 ma sono consentiti valori fino a 15000. Se non si specifica skip il valore di default è 0 mentre il default di limit è 1500.

Parametri

Parameter Description
limit optional Numero di elementi per chiamata. Valori accettati: 1500 - 15000. Default 1500
skip optional Numero di elementi da saltare ricevuti da chiamata precedente. Default 0

Example response

{
    "object": "list,
    "data": [...] /** 100 elements **/,
    "has_more": true
}
        

Risposta

Parameter Description
object string Tipo di oggetto ritornato, essendo in paginazione sarà sempre list
has_more boolean true se ci sono ancora elementi nella lista richiesta ed è quindi necessaria una chiamata successiva di paginazione.
data array Lista di oggetti nella pagina.

Errori

Error response with HTTP error code

"GENERIC ERROR"
        

Tutti gli errori includono una stringa che ne identifica il tipo e la descrizione dell'errore.

Per ogni chiamata descritta in questa documentazione vengono forniti i codici dei relativi errori ad esclusione di quelli comuni a tutte le chiamate API, che sono:

Errori comuni

Example common error

"AUTHENTICATION INCORRECT"
        
Error code Message Descrizione
400 AUTHENTICATION REQUIRED verificare l'autenticazione delle api, manca email o api_token
400 AUTHENTICATION INCORRECT verificare l'autenticazione delle api, email o api_token invalidi
400 API NOT ENABLE utente non abilitato all'utilizzo delle API
400 GENERIC ERROR Errore generico

TrackerGps

Oggetto che descrive il dispositivo di localizzazione GPS.

TrackerGps resource

{
    "_id": "63cabdfd235c2800139f2427",
    "status": 4,
    "name": "Vehicle 1",
    "label_number": 1,
    "label_string": "Vehicle 1",
    "imei": "359633109558000",
    "last_position": {
        "_id": null,
        "id_trackerGps": "63cabdfd235c2800139f2427",
        "imei": "359633109558000",
        "type": 1,
        "gps_timestamp": 1701667733000,
        "rtc_timestamp": 1701667733000,
        "send_timestamp": 1701667733000,
        "longitude": 13.982689,
        "latitude": 49.907796,
        "heading": 48,
        "odometer": 12609533000,
        "input0": 0,
        "input1": 0,
        "input2": 0,
        "input3": 0,
        "output1": 0,
        "output2": 0,
        "speed_gps": 0,
        "satellite": 12,
        "main_power": 12.2,
        "backup_battery": 3.5,
        "gsm_signal": 18,
        "cell_id": 0,
        "cell_lac": 0,
        "mcc_mnc": 0,
        "can_bus": null
    },
    "last_position_stop": {
        "_id": null,
        "id_trackerGps": "63cabdfd235c2800139f2427",
        "imei": "359633109558000",
        "type": 1,
        "gps_timestamp": 1701667733000,
        "rtc_timestamp": 1701667733000,
        "send_timestamp": 1701667733000,
        "longitude": 13.982689,
        "latitude": 49.907796,
        "heading": 48,
        "odometer": 12538300,
        "input0": 0,
        "input1": 0,
        "input2": 0,
        "input3": 0,
        "output1": 0,
        "output2": 0,
        "speed_gps": 0,
        "satellite": 12,
        "main_power": 12.2,
        "backup_battery": 3.5,
        "gsm_signal": 18,
        "cell_id": 0,
        "cell_lac": 0,
        "mcc_mnc": 0,
        "can_bus": null
    },
    "last_can_bus": null,
    "last_connection": 1701682437
}

        
Field Type Description
_id string ID dell'oggetto
serial string Codice seriale del localizzatore GPS
status numeric, integer Indica lo stato del localizzatore (sempre uguale a 4)
name string nome associato al localizzatore
label_number numeric, integer label numerica assegnata al localizzatore
label_string string label testuale assegnata al localizzatore (uguale a name)
imei string numero imei del localizzatore
last_position object, TrackerGpsData oggetto di tipo TrackerGpsData che rappresenta l'ultima posizione geografica acquisita dal localizzatore
last_position_stop object, TrackerGpsData oggetto di tipo TrackerGpsData che rappresenta l'ultima posizione geografica acquisita dal localizzatore quando era fermo
last_can_bus null Oggetto utiilizzato in vecchia versione, ora sempre null
last_connection numberic, integer UNIX timestamp (in secondi) dell'ultima connessione del localizzatore ai server

Ottenere i trackerGps

Example request

curl --location --request GET 'https://api.flottaincloud.it/apiPublic/v1_0/trackerGps' \
--header 'Authorization: Basic <your_btoa_token>'
        
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function() {
  if(this.readyState === 4) {
    console.log(this.responseText);
  }
});
var token = <email> + ":" + <api_token>
var hash = btoa(token);
xhr.open("GET", "https://api.flottaincloud.it/apiPublic/v1_0/trackerGps");
xhr.setRequestHeader("Authorization", "Basic " + hash);

xhr.send();
        
var request = require('request');
var token = <email> + ":" + <api_token>
var hash = btoa(token);
var options = {
  'method': 'GET',
  'url': 'https://api.flottaincloud.it/apiPublic/v1_0/trackerGps',
  'headers': {
    'Authorization': 'Basic ' + hash
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
        
import http.client
import base64

hash = base64.b64encode(b'<email>:<api_token>>')
conn = http.client.HTTPSConnection("api.flottaincloud.it")
payload = ''
headers = {
  'Authorization': 'Basic ' + hash
}
conn.request("GET", "/apiPublic/v1_0/trackerGps", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
        

Tramite questa API è possibile ottenere l'elenco dei localizzatori GPS disponibili come lista di oggetti JSON di tipo TrackerGps.

HTTP Request

Questa richiesta necessita di autenticazione e la paginazione è opzionale, quindi non specificando skip e limit viene ritornata tutta la lista di localizzatori.

GET https://api.flottaincloud.it/apiPublic/v1_0/trackerGps

Parametri

Parameter Location Description
limit numeric, integer, optional query url Dettagli in Paginazione, se non passato ritorna tutti i localizzatori
skip numeric, integer, optional query url Dettagli in Paginazione, se non passato ritorna tutti i localizzatori

HTTS Response

Example response

{
    "object": "list",
    "has_more": false,
    "count_api": 0,
    "reset_count_api": 0,
    "data": [
        {
            "_id": "63cabdfd235c2800139f2427",
            "status": 4,
            "name": "358887097374084",
            "label_number": 1,
            "label_string": "358887097374084",
            "imei": "358887097374084",
            "last_position": {
                "_id": null,
                "id_trackerGps": "63cabdfd235c2800139f2427",
                "imei": "358887097374084",
                "type": 1,
                "gps_timestamp": 1701667733000,
                "rtc_timestamp": 1701667733000,
                "send_timestamp": 1701667733000,
                "longitude": 13.982689,
                "latitude": 49.907796,
                "heading": 48,
                "odometer": 12609533000,
                "input0": 0,
                "input1": 0,
                "input2": 0,
                "input3": 0,
                "output1": 0,
                "output2": 0,
                "speed_gps": 0,
                "satellite": 12,
                "main_power": 12.2,
                "backup_battery": 3.5,
                "gsm_signal": 18,
                "cell_id": 0,
                "cell_lac": 0,
                "mcc_mnc": 0,
                "can_bus": null
            },
            "last_position_stop": {
                "_id": null,
                "id_trackerGps": "63cabdfd235c2800139f2427",
                "imei": "358887097374084",
                "type": 1,
                "gps_timestamp": 1701667733000,
                "rtc_timestamp": 1701667733000,
                "send_timestamp": 1701667733000,
                "longitude": 13.982689,
                "latitude": 49.907796,
                "heading": 48,
                "odometer": 12538300,
                "input0": 0,
                "input1": 0,
                "input2": 0,
                "input3": 0,
                "output1": 0,
                "output2": 0,
                "speed_gps": 0,
                "satellite": 12,
                "main_power": 12.2,
                "backup_battery": 3.5,
                "gsm_signal": 18,
                "cell_id": 0,
                "cell_lac": 0,
                "mcc_mnc": 0,
                "can_bus": null
            },
            "last_can_bus": null,
            "last_connection": 1701687058
        },
        {
            "_id": "63cff73a6cdd6d00120f9ac3",
            "status": 4,
            "name": "358887097388530",
            "label_number": 2,
            "label_string": "358887097388530",
            "imei": "358887097388530",
            "last_position": {
                "_id": null,
                "id_trackerGps": "63cff73a6cdd6d00120f9ac3",
                "imei": "359633109558000",
                "type": 1,
                "gps_timestamp": 1701668882000,
                "rtc_timestamp": 1701668882000,
                "send_timestamp": 1701668882000,
                "longitude": 9.056886,
                "latitude": 48.538906,
                "heading": 284,
                "odometer": 100,
                "input0": 0,
                "input1": 0,
                "input2": 0,
                "input3": 0,
                "output1": 0,
                "output2": 0,
                "speed_gps": 0,
                "satellite": 12,
                "main_power": 12.5,
                "backup_battery": 3.5,
                "gsm_signal": 30,
                "cell_id": 0,
                "cell_lac": 0,
                "mcc_mnc": 0,
                "can_bus": null
            },
            "last_position_stop": {
                "_id": null,
                "id_trackerGps": "63cff73a6cdd6d00120f9ac3",
                "imei": "359633109558001",
                "type": 1,
                "gps_timestamp": 1701668882000,
                "rtc_timestamp": 1701668882000,
                "send_timestamp": 1701668882000,
                "longitude": 9.056886,
                "latitude": 48.538906,
                "heading": 284,
                "odometer": 100,
                "input0": 0,
                "input1": 0,
                "input2": 0,
                "input3": 0,
                "output1": 0,
                "output2": 0,
                "speed_gps": 0,
                "satellite": 12,
                "main_power": 12.5,
                "backup_battery": 3.5,
                "gsm_signal": 30,
                "cell_id": 0,
                "cell_lac": 0,
                "mcc_mnc": 0,
                "can_bus": null
            },
            "last_can_bus": null,
            "last_connection": 1701687409
        }
    ]
}
        
Parameter Description
object string Tipo di oggetto ritornato, sarà fisso a list
has_more boolean true se ci sono ancora elementi nella lista richiesta ed è quindi necessaria una chiamata successiva di paginazione, se non vengono specificati skip e limit sarà sempre false perchè viene ritornata tutta la lissta di localizzatori.
data array di TrackerGps Lista di localizzatori in formato TrackerGps.

HTTP Errors

Oggetto di tipo Error:

Error code Message Descrizione
400 GENERIC ERROR Errore generico

Ottenere un trackerGps

Example request

curl --location --request GET 'https://api.flottaincloud.it/apiPublic/v1_0/trackerGps/63cabdfd235c2800139f2427' \
--header 'Authorization: Basic <your_btoa_token>'
        
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function() {
  if(this.readyState === 4) {
    console.log(this.responseText);
  }
});
var token = <email> + ":" + <api_token>
var hash = btoa(token);
xhr.open("GET", "https://api.flottaincloud.it/apiPublic/v1_0/trackerGps/63cabdfd235c2800139f2427");
xhr.setRequestHeader("Authorization", "Basic " + hash);

xhr.send();
        
var request = require('request');
var token = <email> + ":" + <api_token>
var hash = btoa(token);
var options = {
  'method': 'GET',
  'url': 'https://api.flottaincloud.it/apiPublic/v1_0/trackerGps/63cabdfd235c2800139f2427',
  'headers': {
    'Authorization': 'Basic ' + hash
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
        
import http.client
import base64

hash = base64.b64encode(b'<email>:<api_token>>')
conn = http.client.HTTPSConnection("api.flottaincloud.it")
payload = ''
headers = {
  'Authorization': 'Basic ' + hash
}
conn.request("GET", "/apiPublic/v1_0/trackerGps/63cabdfd235c2800139f2427", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
        

Ritorna un singolo localizzatore, identificato dal suo id_trackerGps.

HTTP Request

Questa richiesta necessita di autenticazione.

GET https://api.flottaincloud.it/apiPublic/v1_0/trackerGps/:id_trackerGps

Parametri

Parameter Location Description
id_trackerGps string, required params è il campo _id del trackerGps che si vuole ottenere

HTTS Response

Parameter Description
object string Tipo di oggetto ritornato, sarà fisso a trackerGps
data object, TrackerGps Localizzatore in formato TrackerGps.

Example response

{
    "object": "trackerGps",
    "count_api": 0,
    "reset_count_api": 0,
    "data": {
        "_id": "63cabdfd235c2800139f2427",
        "status": 4,
        "name": "358887097374084",
        "label_number": 1,
        "label_string": "358887097374084",
        "imei": "358887097374084",
        "last_position": {
            "_id": null,
            "id_trackerGps": "63cabdfd235c2800139f2427",
            "imei": "358887097374084",
            "type": 1,
            "gps_timestamp": 1701667733000,
            "rtc_timestamp": 1701667733000,
            "send_timestamp": 1701667733000,
            "longitude": 13.982689,
            "latitude": 49.907796,
            "heading": 48,
            "odometer": 12609533000,
            "input0": 0,
            "input1": 0,
            "input2": 0,
            "input3": 0,
            "output1": 0,
            "output2": 0,
            "speed_gps": 0,
            "satellite": 12,
            "main_power": 12.2,
            "backup_battery": 3.5,
            "gsm_signal": 18,
            "cell_id": 0,
            "cell_lac": 0,
            "mcc_mnc": 0,
            "can_bus": null
        },
        "last_position_stop": {
            "_id": null,
            "id_trackerGps": "63cabdfd235c2800139f2427",
            "imei": "358887097374084",
            "type": 1,
            "gps_timestamp": 1701667733000,
            "rtc_timestamp": 1701667733000,
            "send_timestamp": 1701667733000,
            "longitude": 13.982689,
            "latitude": 49.907796,
            "heading": 48,
            "odometer": 12538300,
            "input0": 0,
            "input1": 0,
            "input2": 0,
            "input3": 0,
            "output1": 0,
            "output2": 0,
            "speed_gps": 0,
            "satellite": 12,
            "main_power": 12.2,
            "backup_battery": 3.5,
            "gsm_signal": 18,
            "cell_id": 0,
            "cell_lac": 0,
            "mcc_mnc": 0,
            "can_bus": null
        },
        "last_can_bus": null,
        "last_connection": 1701688319
    }
}
        

HTTP Errors

Oggetto di tipo Error:

Error code Message Descrizione
400 GENERIC ERROR Errore generico
400 TRACKER GPS NOT FOUND trackerGps non trovato, controllare il parametro id_trackerGps

TrackerGpsData

Oggetto che descrive la posizione GPS di un localizzatore.

TrackerGpsData resource

{
    "_id": "656967995c67728ebbcedfa3",
    "id_trackerGps": "63cabdfd235c2800139f2427",
    "imei": "359633109558000",
    "type": 1,
    "gps_timestamp": 1701406616000,
    "rtc_timestamp": 1701406616000,
    "send_timestamp": 1701406616000,
    "longitude": 14.085879,
    "latitude": 49.836496,
    "heading": 150,
    "odometer": 12466800,
    "input0": 1,
    "input1": 0,
    "input2": 0,
    "input3": 0,
    "output1": 0,
    "output2": 0,
    "speed_gps": 1,
    "satellite": 12,
    "main_power": 11.7,
    "backup_battery": 3.5,
    "gsm_signal": 17,
    "cell_id": 0,
    "cell_lac": 0,
    "mcc_mnc": 0,
    "can_bus": null
}
        
Field Type Description
_id string ID dell'oggetto
id_trackerGps string ID dell'oggetto trackerGps a cui è riferita la posizione geografica
imei string imei del localizzatore a cui è riferita la posizione geografica
type numeric, integer numero che identifica la tipologia di posizione GPS (valore sempre 1)
gps_timestamp number, integer UTC UNIX timestamp in secondi dell'ora fornita dal gps
rtc_timestamp number, integer UTC UNIX timestamp in secondi dell'ora fornita dal clock interno del localizzatore
send_timestamp number, integer UTC UNIX timestamp in secondi dell'ora di invio della posizione gps ai server Trackingram
longitude numeric, decimal Longitudine della posizione
latitude numeric, decimal Latitudine della posizione
heading numeric, integer direzione di marcia tra 0 a 360 gradi
odometer numeric, decimal valore in 0.1 km dell'odometro settato dal localizzatore
input0 numeric, integer (solo 0 | 1) valore dell'ingresso 0 digitale
input1 numeric, integer valore sempre 0
input2 numeric, integer valore sempre 0
input3 numeric, integer valore sempre 0
output1 numeric, integer (solo 0 | 1) valore dell'output 1
output2 numeric, integer valore sempre 0
output3 numeric, integer valore sempre 0
speed_gps numeric, decimal velocità in km/h
satellite numeric, integer numero di satelliti gps/glonass
main_power numeric, decimal valore in 0,1V della tensione di alimentazione del localizzatore
backup_battery numeric, decimal valore in 0,1V della tensione della batteria interna di backup del localizzatore
gsm_signal numeric, integer valore del segnale gsm:
- da 2 a 9 segnale scarso
- da 10 a 14 segnale buono
- da 15 a 19 segnale ottimo
- sopra 20 segnale eccellente
cell_id numeric, integer valore sempre 0
cell_lac numeric, integer valore sempre 0
mcc_mnc numeric, integer valore sempre 0
can_bus object valore sempre null

Storico posizioni

Example request

curl --location --request GET 'https://api.flottaincloud.it/apiPublic/v1_0/trackerGpsData/359633109558000?start=1637756247000&stop=1637842647000&skip=0&limit=1500&filter_type=1&filter_type=2' \
--header 'Authorization: Basic <your_btoa_token>'
        
var xhr = new XMLHttpRequest();
xhr.withCredentials = true;

xhr.addEventListener("readystatechange", function() {
  if(this.readyState === 4) {
    console.log(this.responseText);
  }
});
var token = <email> + ":" + <api_token>
var hash = btoa(token);
xhr.open("GET", "https://api.flottaincloud.it/apiPublic/v1_0/trackerGpsData/359633109558000?start=1637756247000&stop=1637842647000&skip=0&limit=1500&filter_type=1&filter_type=2");
xhr.setRequestHeader("Authorization", "Basic " + hash);

xhr.send();
        
var request = require('request');
var token = <email> + ":" + <api_token>
var hash = btoa(token);
var options = {
  'method': 'GET',
  'url': 'https://api.flottaincloud.it/apiPublic/v1_0/trackerGpsData/359633109558000?start=1637756247000&stop=1637842647000&skip=0&limit=4&filter_type=1&filter_type=2',
  'headers': {
    'Authorization': 'Basic ' + hash
  }
};
request(options, function (error, response) {
  if (error) throw new Error(error);
  console.log(response.body);
});
        
import http.client
import base64

hash = base64.b64encode(b'<email>:<api_token>>')
conn = http.client.HTTPSConnection("api.flottaincloud.it")
payload = ''
headers = {
  'Authorization': 'Basic ' + hash
}
conn.request("GET", "/apiPublic/v1_0/trackerGpsData/359633109558000?start=1637756247000&stop=1637842647000&skip=0&limit=1500&filter_type=1&filter_type=2", payload, headers)
res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))
        

Ritorna un oggetto di tipo Paginazione con una lista di TrackerGpsData, registrate dal dispositivo, in un determinato intervallo temporale ed eventualmente filtrate per tipologia.

I limiti della richiesta sono al massimo 15000 posizioni a chiamata e l'intervallo temporale di richiesta posizioni deve essere minore di 5 giorni.

HTTP Request

Questa richiesta necessita di autenticazione.

GET https://api.flottaincloud.it/apiPublic/v1_0/trackerGpsData/:id_trackerGps

Parametri

Parameter Location Description
id_trackerGps string, required params è il campo _id del trackerGps di cui si vuole ottenere lo storico posizioni
timestampStart numeric, integer, required query url Indica l'UTC UNIX timestamp in secondi della data di inizio della ricerca
timestampStop numeric, integer, required query url Indica l'UTC UNIX timestamp in secondi della data di fine della ricerca
type numeric, integer, optional query url indica il tipo di dato che si vuole reperire, possibili valori:
1 - tutte le posizioni (default)
2 - solo posizioni con eventi di input
limit numeric, integer, optional query url Dettagli in Paginazione (default: 1500, massimo valore consentito: 15000)
skip numeric, integer, optional query url Dettagli in Paginazione (default: 0)

HTTS Response

Parameter Description
object string Tipo di oggetto ritornato, sarà fisso a list essendo paginata
has_more boolean Dice se ci sono ancora elementi da scaricare per la ricerca effettuata come specificato nella paginazione
data arrai di oggetti TrackerGpsData Lista di posizione del localizzatore in formato TrackerGpsData.

Example response

{
    "object": "list",
    "has_more": true,
    "count_api": 0,
    "reset_count_api": 0,
    "data": [
        {
            "_id": "656967995c67728ebbcedfa3",
            "id_trackerGps": "63cabdfd235c2800139f2427",
            "imei": "358887097374084",
            "type": 1,
            "gps_timestamp": 1701406616000,
            "rtc_timestamp": 1701406616000,
            "send_timestamp": 1701406616000,
            "longitude": 14.085879,
            "latitude": 49.836496,
            "heading": 150,
            "odometer": 12466800,
            "input0": 1,
            "input1": 0,
            "input2": 0,
            "input3": 0,
            "output1": 0,
            "output2": 0,
            "speed_gps": 1,
            "satellite": 12,
            "main_power": 11.7,
            "backup_battery": 3.5,
            "gsm_signal": 17,
            "cell_id": 0,
            "cell_lac": 0,
            "mcc_mnc": 0,
            "can_bus": null
        },
        {
            "_id": "656967e15c67728ebbcedfa9",
            "id_trackerGps": "63cabdfd235c2800139f2427",
            "imei": "358887097374084",
            "type": 1,
            "gps_timestamp": 1701406628000,
            "rtc_timestamp": 1701406628000,
            "send_timestamp": 1701406628000,
            "longitude": 14.085877,
            "latitude": 49.836483,
            "heading": 150,
            "odometer": 12466800,
            "input0": 1,
            "input1": 0,
            "input2": 0,
            "input3": 0,
            "output1": 0,
            "output2": 0,
            "speed_gps": 0,
            "satellite": 11,
            "main_power": 14.6,
            "backup_battery": 3.5,
            "gsm_signal": 17,
            "cell_id": 0,
            "cell_lac": 0,
            "mcc_mnc": 0,
            "can_bus": null
        },
        {
            "_id": "656967e45c67728ebbcedfab",
            "id_trackerGps": "63cabdfd235c2800139f2427",
            "imei": "358887097374084",
            "type": 1,
            "gps_timestamp": 1701406658000,
            "rtc_timestamp": 1701406658000,
            "send_timestamp": 1701406658000,
            "longitude": 14.085768,
            "latitude": 49.836474,
            "heading": 150,
            "odometer": 12466800,
            "input0": 1,
            "input1": 0,
            "input2": 0,
            "input3": 0,
            "output1": 0,
            "output2": 0,
            "speed_gps": 0,
            "satellite": 12,
            "main_power": 14.6,
            "backup_battery": 3.5,
            "gsm_signal": 17,
            "cell_id": 0,
            "cell_lac": 0,
            "mcc_mnc": 0,
            "can_bus": null
        }
    ]
}
        
{
    "object": "trackerGps",
    "count_api": 0,
    "reset_count_api": 0,
    "data": {
        "_id": "63cabdfd235c2800139f2427",
        "status": 4,
        "name": "358887097374084",
        "label_number": 1,
        "label_string": "358887097374084",
        "imei": "358887097374084",
        "last_position": {
            "_id": null,
            "id_trackerGps": "63cabdfd235c2800139f2427",
            "imei": "358887097374084",
            "type": 1,
            "gps_timestamp": 1701667733000,
            "rtc_timestamp": 1701667733000,
            "send_timestamp": 1701667733000,
            "longitude": 13.982689,
            "latitude": 49.907796,
            "heading": 48,
            "odometer": 12609533000,
            "input0": 0,
            "input1": 0,
            "input2": 0,
            "input3": 0,
            "output1": 0,
            "output2": 0,
            "speed_gps": 0,
            "satellite": 12,
            "main_power": 12.2,
            "backup_battery": 3.5,
            "gsm_signal": 18,
            "cell_id": 0,
            "cell_lac": 0,
            "mcc_mnc": 0,
            "can_bus": null
        },
        "last_position_stop": {
            "_id": null,
            "id_trackerGps": "63cabdfd235c2800139f2427",
            "imei": "358887097374084",
            "type": 1,
            "gps_timestamp": 1701667733000,
            "rtc_timestamp": 1701667733000,
            "send_timestamp": 1701667733000,
            "longitude": 13.982689,
            "latitude": 49.907796,
            "heading": 48,
            "odometer": 12538300,
            "input0": 0,
            "input1": 0,
            "input2": 0,
            "input3": 0,
            "output1": 0,
            "output2": 0,
            "speed_gps": 0,
            "satellite": 12,
            "main_power": 12.2,
            "backup_battery": 3.5,
            "gsm_signal": 18,
            "cell_id": 0,
            "cell_lac": 0,
            "mcc_mnc": 0,
            "can_bus": null
        },
        "last_can_bus": null,
        "last_connection": 1701688319
    }
}
        

HTTP Errors

Oggetto di tipo Error:

Error code Message Descrizione
400 timestampStart REQUIRED Assicurarsi di aver inserito il parametro timestampStart in query url
400 timestampStop REQUIRED Assicurarsi di aver inserito il parametro timestampStop in query url
400 TRACKER GPS NOT FOUND Il trackerGps in analisi non è corretto
400 GENERIC ERROR Intervallo di richiesta posizioni superiore a 5 giorni o errore generico