L'API per recuperare i dati di uno o più segnali è
POST https://api.databoom.com/v1/chart/
Per effettuare la chiamata è sufficiente un OAuth token con permessi di Lettura.

E' possibile specificare alcuni parametri per modificare i risultati della chiamata:
- signals è l'array degli id dei segnali da recuperare
- startDate e endDate permettono di specificare un intervallo in cui recuperare i dati. Le date devono essere nel formato YYYY-MM-DDTHH:MM:SS+HH:MM es. 2018-12-31T08:20:00+02:00;
- granularity permette di specificare la granularità dei dati da recuperare:
- a, granularità automatica, fornisce la migliore granularità disponibile in base all'intervallo specificato
- *, ritorna tutti i valori disponibili all'interno dell'intervallo specificato con un massimo di 10080 valori (un valore al minuto per una settimana)
- h, ritorna un valore all'ora all'interno dell'intervallo
- d, ritorna un valore al giorno all'interno dell'intervallo
- m, ritorna un valore al mese all'interno dell'intervallo
La stessa chiamata in cURL si presenta come
curl -X POST \
https://api.databoom.com/v1/chart \
-H 'Authorization: Bearer <OAuth Token>' \
-H 'Content-Type: application/json' \
-d '{
"signals": ["5aa2533bae696741894be82f"],
"startDate": "2019-05-01T00:00:00+02:00",
"endDate": "2019-05-07T12:00:00+02:00",
"granularity": "a"
}'
L'API risponde con la lista dei segnali specificati nella richiesta e i rispettivi dati disponibili all'interno dell'intervallo indicato. Nel campo info della risposta è indicata la granularità applicata ad ogni segnale e se sono stati ritornati tutti i valori disponibili o se è stato superato il limite massimo di valori (overBound).
Un esempio di risposta è il seguente, l'unico segnale presente è la pressione del dispositivo meteo di Trento.
{
"5aa2533bae696741894be82f": [
{
"_id": {
"data": "2019-05-07T09:41:00.000Z"
},
"date": "2019-05-07T09:41:00.000Z",
"mean": 998.3082378029767,
"total_sum": 9596737.090000015,
"value": 1019,
"max_t": 1019,
"min_t": 1019,
"total_t": 1019,
"last_conn": "2019-05-07T09:41:00.000Z",
"full_value": 0
},
{
"_id": {
"data": "2019-05-07T08:41:00.000Z"
},
"date": "2019-05-07T08:41:00.000Z",
"mean": 998.3060851019575,
"total_sum": 9595718.090000015,
"value": 1020,
"max_t": 1020,
"min_t": 1020,
"total_t": 1020,
"last_conn": "2019-05-07T08:41:00.000Z",
"full_value": 0
}
],
"info": {
"5aa2533bae696741894be82f": {
"granularity": "*",
"overBound": false
}
}
}
0 Commenti