Données ouvertes
Chaque coupure confirmée est gardée : début, confirmation, retour, durée, nombre de signalements. Journalistes, chercheurs, élus : servez-vous.
Licence CC-BY 4.0 : citez « Courant (courant.zaleo.dev) ». Les contours des quartiers viennent d'OpenStreetMap (ODbL). Ce sont des données citoyennes, pas des chiffres officiels ; lisez la méthode avant de conclure.
Télécharger
API
Lecture seule, sans clé, CORS ouvert. Merci de ne pas interroger plus d'une fois par minute.
GET https://courant.zaleo.dev/api/v1/live
état en direct : quartiers en signalement, coupés, revenus ;
sentinelles en ligne ; coupures annoncées ; alerte Internet
GET https://courant.zaleo.dev/api/v1/outages?from=2026-10-01&to=2026-11-01&area=medina&format=csv
historique des coupures (json par défaut, 5000 lignes max)
GET https://courant.zaleo.dev/api/v1/areas
liste des quartiers (slug, nom, commune, centre)Widget pour votre site
Un encart léger qui montre l'état d'un quartier, ou de toute la ville, et se met à jour tout seul.
<iframe src="https://courant.zaleo.dev/embed" width="100%" height="150" style="border:0" title="Coupures à Dakar en direct, par Courant"></iframe> <!-- un quartier --> <iframe src="https://courant.zaleo.dev/embed/medina" width="100%" height="150" style="border:0" title="Coupures à Médina, par Courant"></iframe>
Capteurs (API d'écriture)
Pour brancher un ESP32, une prise connectée ou tout autre capteur de secteur. Inscription une fois, puis un battement par minute. Détails et exemple Arduino dans le dépôt (docs/DATA.md).
POST https://courant.zaleo.dev/api/v1/sensors
{ "area": "medina", "type": "esp32", "label": "atelier" }
-> { "sensorId": "s_...", "token": "..." } // le jeton n'est montré qu'une fois
POST https://courant.zaleo.dev/api/v1/heartbeat // toutes les ~60 s
{ "sensorId": "s_...", "token": "...", "powered": true,
"battery": 87, "changedAt": 1793400000000 } // changedAt : heure de la bascule, si envoyée en retardpowered: false compte comme un signal fort de coupure. Un capteur qui se tait est « hors ligne », jamais « coupé ».