Salut à tous !
Je vous propose aujourd’hui un petit tutoriel pour télécharger un CSV de toutes les valeurs historiques d’un capteur.
Pour cela, nous allons passer par l’API HTTP de Gladys.
Étape n°1 : Télécharger un client HTTP
Je vous conseille Yaak.
Étape n°2 : Récupérer un token
L’API de Gladys étant sécurisée, il va falloir récupérer un token.
Créez une nouvelle requête dans Yaak sur l’URL
Méthode : POST
URL : http://IP_DE_VOTRE_INSTANCE_GLADYS/api/v1/login
Body Type : JSON
Body :
{
"email": "VOTRE_EMAIL",
"password": "VOTRE_MOT_DE_PASSE"
}
Envoyez la requête, vous devriez recevoir un « access_token » à droite, c’est ce qui nous intéresse :
Étape n°3 : Récupérer le selector du capteur qui vous intéresse
Méthode : GET
URL : http://IP_DE_VOTRE_INSTANCE_GLADYS/api/v1/device
Pas de body
Dans l’onglet « Auth », cliquez « Bearer token » et copiez votre access_token :
Envoyez la requête, vous devriez avoir une réponse de ce type :
Vous pouvez utiliser « Ctrl/Cmd + F » pour chercher un appareil.
Ensuite, trouvez le champ « selector » de la « feature » qui vous intéresse.
C’est l’identifiant unique qui va nous permettre de requêter cet appareil.
Étape n°4 : Télécharger tout l’historique de cet appareil
Créez une nouvelle requête dans Yaak :
Méthode : GET
URL : http://IP_DE_VOTRE_INSTANCE_GLADYS/api/v1/device_feature/aggregated_states
Params :
- interval : La durée que vous voulez récupérer en minutes.
(Ex : Pour aller chercher la dernière heure de valeurs, mettez 60)
(Ex : Pour aller chercher la dernière journée, mettez 1440, car 60*24)
- max_states : Le nombre maximal d'états que vous voulez retourner.
Si vous voulez l'exhaustivité de la donnée sans échantillonnage, mettez une valeur énorme (ex : 1000000000000)
- device_features : La liste de selector de feature séparés par des virgules. Vous pouvez en mettre un seul
Dans mon cas, ça donne ça :
Je vais chercher la dernière année de valeurs, avec toutes les valeurs, pour mon capteur d’humidité.
Cliquez sur « Save to file » à droite pour enregistrer les valeurs sur le disque.
Note : Attention de ne pas télécharger la terre entière, votre instance Gladys doit charger en mémoire le JSON et donc si vous téléchargez tous les appareils de votre instance depuis le début, cela peut faire beaucoup ![]()
Étape n°5 : Conversion du JSON en CSV
Pour convertir le JSON en un CSV exploitable dans n’importe quel logiciel d’analyse (ou simplement dans un tableau Excel), j’ai demandé à l’IA de créer un petit site : https://device-json-to-csv.pages.dev/
Le site est simplement un petit client qui effectue la conversion automatiquement côté client (rien ne transite vers un serveur, vous pouvez même télécharger le HTML si vous préférez l’héberger localement chez vous).
Conclusion
Vous récupérez avec ce site un petit CSV que vous pouvez exploiter comme vous voulez !
Exemple chez moi avec un capteur d’humidité :
N’oubliez pas que toute l’API Gladys est documentée ici : https://apidoc.gladysassistant.com/
Vous pouvez faire tout ce que fait le frontend Gladys via l’API !
N’hésitez pas si vous avez des questions.





