Données relatives aux observations hydrologiques
Les données relatives aux observation hydrologiques des cours d'eau sont disponibles dans l’entrepôt de données de la métropole Nice Côte d’Azur. Le modèle de données WaterObserved est utilisé pour représenter les données liées aux observations hydrologiques.
Liste des capteurs
ID | Name | Adresse | Localisation | Date de mise en service | Propriétés | Assets |
---|---|---|---|---|---|---|
Device:EPG-MULTIFLOW-MAGLIM050101 | Station Magnan amont | 500 Boulevard de la Madeleine 06000 Nice | 7.222632436 43.72995728 | 11/04/2025 |
|
|
Device:EPG-MULTIFLOW-MAGLIM060101 | Station Magnan médian | 327 Boulevard de la Madeleine 06000 Nice | 7.223438665 43.71868093 | 11/04/2025 |
|
|
Device:EPG-MULTIFLOW-MAGLIM070101 | Station Magnan aval | 211 Boulevard de la Madeleine 06000 Nice | 7.229547993 43.70907171 | 11/04/2025 |
|
|
Device:EPG-MULTIFLOW-PAILIM010101 | D2204 | D2204 06440 L'Escarène | 7.35425 43.836 | 28/01/2025 |
|
|
Device:EPG-MULTIFLOW-SACCAG01 | Station Pont des Salles | 191 Chemin des Salles 06800 Cagnes-sur-Mer | 7.14218862 43.69979078 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACCAG02 | Station Pont des Moulins | 489 Chemin de Sainte Colombe 06640 Saint-Jeannet | 7.13406444 43.74455973 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACCAG03 | Station Pont de la Lubiane | 280 avenue Maréchal Joffre 06140 Vence | 7.10573392 43.72659474 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACCAG05 | Station Deffoussat - Leclerc | Rue Grange Rimade 06800 Cagnes-sur-Mer | 7.123439 43.67262466 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACCAG06 | Station Pont Saint-Paul | Chemin de la Pounchounière 06570 Saint-Paul-de-Vence | 7.12535463 43.68978971 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACCAG09 | Station Cagne couverture amont | 13 avenue Marcel Pagnol 06800 Cagnes-sur-Mer | 7.15071593 43.66605675 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACCAG10 | Station Malvan avenue des Alpes | 82 avenue des Alpes 06800 Cagnes-sur-Mer | 7.13348544 43.66117967 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACCAG11 | Station Cagne aval | 727 rue Bir Hakeim 06800 Cagnes-sur-Mer | 7.15404635 43.65598389 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACMAG01 | Station Aqueduc Magnan | 209 boulevard de la Madeleine 06000 Nice | 7.22951356 43.70895543 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACMAG03 | Station Pont du Génie | Intersection du boulevard de la Madeleine et du chemin du Génie 06000 Nice | 7.22167511 43.73871935 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACPAI01 | Station Passerelle | 35 avenue Maréchal Lyautey 06300 Nice | 7.2827209 43.71265867 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACPAI02 | Station Abattoirs | Boulevard Jean Baptiste Vérany 06300 Nice | 7.28472419 43.71865344 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACPAI03 | Station Coty | Pont René Coty 06300 Nice | 7.28856943 43.72314955 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACPAI04 | Station Saint-André | RG de la Banquière, Quartier Le Château 06730 Saint-André-de-la-Roche | 7.28813068 43.74476164 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACPAI05 | Station Plan de Revel | Avenue du Haut Pays, Lieu-dit Plan de Revel 06690 Tourrette-Levens | 7.27951698 43.76999528 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACPAI06 | Station La Trinité | Pont Anatole France 06300 Nice | 7.31007595 43.74116229 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACPAI07 | Station La Condamine | Route RD2204, Rive gauche du pont 06440 Blaussasc | 7.33258282 43.77057673 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACPAI08 | Station Contes | Quartier le Gheit D15 06390 Contes | 7.284724193 43.80554578 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACPAI10 | Station Paillon Laghet | 20 route de Laghet 06340 La Trinité | 7.32328515 43.74496766 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-SACPAI12 | Station Moulin de Peillon | Quartier les Près Moulin de Peillon 06440 Peillon | 7.37213171 43.77220455 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-TINLIM010101 | Ardon aval rive droite à Saint-Étienne-de-Tinée | 1 Chemin de l'Ardon 06660 Saint-Étienne-de-Tinée | 6.922125 44.256836 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-TINLIM010102 | Ardon aval rive gauche à Saint-Étienne-de-Tinée | 1 Chemin de l'Ardon 06660 Saint-Étienne-de-Tinée | 6.922125 44.256836 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-TINLIM020201 | Tinée digue rive droite ville de Saint-Étienne-de-Tinée Chenal ouvert | Boulevard Napoléon III 06660 Saint-Étienne-de-Tinée | 6.927193 44.256153 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-TINLIM020202 | Tinée digue rive droite ville de Saint-Étienne-de-Tinée Chenal couvert | Pont Tinée M2205 06660 Saint-Étienne-de-Tinée | 6.925664 44.258286 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-TINLIM030101 | Tinée Pont de Louch a Isola | Pont de Louch 06660 Saint-Étienne-de-Tinée | 7.051704 44.184429 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-TINLIM040101 | Guercha Pont aval M2205 à Isola | Pont Guercha sur M97 06420 Isola | 7.053528 44.186028 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-VARLIM010101 | Chemin de la Glacière | Chemin de la Glacière 06200 Nice | 7.191078 43.718953 | 28/01/2025 |
|
|
Device:EPG-MULTIFLOW-VESLIM010101 | Pont de la Madone de Fenestre | Route de la Vésubie 06450 Saint-Martin-Vésubie | 7.2572 44.06693333 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-VESLIM020101 | Pont provisoire Boréon | Route de la Vésubie 06450 Saint-Martin-Vésubie | 7.250861111 44.07395833 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-VESLIM030101 | Pont de Roquebillière | M63 06450 Roquebillière | 7.310641667 44.01885833 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-VESLIM040101 | Couverture Riou Lantosque | Lantosque 06450 Lantosque | 7.310686111 43.97489444 | 01/01/2019 |
|
|
Device:EPG-MULTIFLOW-VESLIM050101 | Route provisoire Vésubie | Route de la Vésubie 06450 Utelle | 7.215472222 43.86979167 | 01/01/2019 |
|
|
Emplacement des capteurs
Modèle de données
Le modèle de données permet de structurer les informations selon le schéma ci-dessous :{
"id": "WaterObserved:EPG-MULTIFLOW-SACCAG01",
"type": "WaterObserved",
"address": {
"type": "PostalAddress",
"value": {
"addressCountry": "FR",
"streetAddress": "191 Chemin des Salles",
"postalCode": "06800",
"addressLocality": "Cagnes-sur-Mer"
}
},
"dataProvider": {
"type": "Text",
"value": "Métropole Nice Côte d%27Azur"
},
"dateModified": {
"type": "DateTime",
"value": "2024-07-04T08:48:40.765Z"
},
"dateObserved": {
"type": "DateTime",
"value": "2024-07-04T08:48:00.000Z"
},
"flow": {
"type": "Number",
"value": 0,
"metadata": {
"timestamp": {
"type": "DateTime",
"value": "2024-07-04T08:48:00.000Z"
},
"unitCode": {
"type": "Text",
"value": "MQS"
}
}
},
"height": {
"type": "Number",
"value": 0.200830091,
"metadata": {
"timestamp": {
"type": "DateTime",
"value": "2024-07-04T08:48:00.000Z"
},
"unitCode": {
"type": "Text",
"value": "MTR"
}
}
},
"location": {
"type": "geo:json",
"value": {
"coordinates": [
7.14218862,
43.69979078
],
"type": "Point"
}
},
"name": {
"type": "Text",
"value": "Station Pont des Salles"
},
"refDevice": {
"type": "Text",
"value": "Device:EPG-MULTIFLOW-SACCAG01"
},
"source": {
"type": "Text",
"value": "EPG"
}
}
Documentation relative à l'API
La documentation est utile aux développeurs désirant utiliser l'API fournie par la Métropole Nice Côte d'Azur.
Ci-dessous, vous trouverez la description de l'utilisation de l'API ainsi que la possibilité d'effectuer des tests de requêtes API (certaines API nécessitent une clé, voir Public Access Level et Right dans la description du jeu de données.)Vous pouvez demander une clé d'API en cliquant ici.
Exemple de code
Afin de faciliter la prise en main de l'API, plusieurs exemples d'extraction des données stockées par la métropole sur son entrepôt « Temps Réel » et « Historique » sont mis à disposition des développeurs.Ces exemples ne prennent pas en compte la globalité des cas d'usage et des attributs décrits dans le dataModel. Il est possible de les adapter pour répondre à un besoin plus spécifique. Afin d'avoir plus de détails sur la liste complète des attributs, nous vous conseillons de vous reporter à la documentation de l'API.
Les exemples sont proposés dans les langages suivants « Curl / Java / Javascript / Python / C# », avec les cas d'usage suivants :
- Temps réel – Dernière valeur reçue au moment de la requête
- Cas d'usage 1 : Renvoie les mesures de type "WaterObserved"
- Cas d'usage 2 : Renvoie les données d'un ID donné
- Cas d'usage 3 : Renvoie les valeurs des attributs passés en paramètre pour un ID donné
- Historique
- Cas d'usage 4 : Renvoie une liste de valeurs horodatées d'un attribut passé en paramètre pour un ID donné
Curl
- Temps réel - Cas d'usage 1 : Renvoie les mesures de type "WaterObserved"
curl -X GET "https://api.nicecotedazur.org/nca/environment/water/observation?idPattern=^WaterObserved:EPG-MULTIFLOW&api_key=API_KEY"
- Temps réel - Cas d'usage 2 : Renvoie les données d'un ID donné
curl -X GET "https://api.nicecotedazur.org/nca/environment/water/observationWaterObserved:EPG-MULTIFLOW-SACCAG01?api_key=API_KEY"
- Temps réel - Cas d'usage 3 : Renvoie les valeurs des attributs passés en paramètre pour un ID donné
curl -X GET "https://api.nicecotedazur.org/nca/environment/water/observationWaterObserved:EPG-MULTIFLOW-SACCAG01?attrs=flow&api_key=API_KEY"
- Historique - Cas d'usage 4 : Renvoie une liste de valeurs horodatées d'un attribut passé en paramètre pour un ID donné
curl -X GET "https://api.nicecotedazur.org/nca/environment/water/observation/histo/WaterObserved:EPG-MULTIFLOW-SACCAG01?attrs=flow&fromDate=2023-07-01T09:00:00&toDate=2023-07-31T09:00:00&api_key=API_KEY"
Java
- Temps réel - Cas d'usage 1 : Renvoie les mesures de type "WaterObserved"
import java.io.IOException;
import java.net.URI;
import java.net.URLEncoder;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.http.HttpResponse.BodyHandlers;
public class case1 {
public static void main(String[] args) throws IOException, InterruptedException {
String urlencode = "https://api.nicecotedazur.org/nca/environment/water/observation?idPattern=^WaterObserved:EPG-MULTIFLOW&api_key=API_KEY";
HttpRequest request = HttpRequest.newBuilder()
.version(HttpClient.Version.HTTP_2)
.uri(URI.create(
urlencode))
.GET()
.build();
HttpClient client = HttpClient.newHttpClient();
HttpResponse response = client.send(request, BodyHandlers.ofString());
System.out.println(response.body());
}
}
- Temps réel - Cas d'usage 2 : Renvoie les données d'un ID donné
import java.io.IOException;
import java.net.URI;
import java.net.URLEncoder;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.http.HttpResponse.BodyHandlers;
public class case2 {
public static void main(String[] args) throws IOException, InterruptedException {
String urlencode = "https://api.nicecotedazur.org/nca/environment/water/observationWaterObserved:EPG-MULTIFLOW-SACCAG01?api_key=API_KEY";
HttpRequest request = HttpRequest.newBuilder()
.version(HttpClient.Version.HTTP_2)
.uri(URI.create(
urlencode))
.GET()
.build();
HttpClient client = HttpClient.newHttpClient();
HttpResponse response = client.send(request, BodyHandlers.ofString());
System.out.println(response.body());
}
}
- Temps réel - Cas d'usage 3 : Renvoie les valeurs des attributs passés en paramètre pour un ID donné
import java.io.IOException;
import java.net.URI;
import java.net.URLEncoder;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.http.HttpResponse.BodyHandlers;
public class case3 {
public static void main(String[] args) throws IOException, InterruptedException {
String urlencode = "https://api.nicecotedazur.org/nca/environment/water/observationWaterObserved:EPG-MULTIFLOW-SACCAG01?attrs=flow&api_key=API_KEY";
HttpRequest request = HttpRequest.newBuilder()
.version(HttpClient.Version.HTTP_2)
.uri(URI.create(
urlencode))
.GET()
.build();
HttpClient client = HttpClient.newHttpClient();
HttpResponse response = client.send(request, BodyHandlers.ofString());
System.out.println(response.body());
}
}
- Historique - Cas d'usage 4 : Renvoie une liste de valeurs horodatées d'un attribut passé en paramètre pour un ID donné
import java.io.IOException;
import java.net.URI;
import java.net.URLEncoder;
import java.net.http.HttpClient;
import java.net.http.HttpRequest;
import java.net.http.HttpResponse;
import java.net.http.HttpResponse.BodyHandlers;
public class case4 {
public static void main(String[] args) throws IOException, InterruptedException {
String urlencode = "https://api.nicecotedazur.org/nca/environment/water/observation/histo/WaterObserved:EPG-MULTIFLOW-SACCAG01?attrs=flow&fromDate=2023-07-01T09:00:00&toDate=2023-07-31T09:00:00&api_key=API_KEY";
HttpRequest request = HttpRequest.newBuilder()
.version(HttpClient.Version.HTTP_2)
.uri(URI.create(
urlencode))
.GET()
.build();
HttpClient client = HttpClient.newHttpClient();
HttpResponse response = client.send(request, BodyHandlers.ofString());
System.out.println(response.body());
}
}
Javascript
- Temps réel - Cas d'usage 1 : Renvoie les mesures de type "WaterObserved"
const url = "https://api.nicecotedazur.org/nca/environment/water/observation"
const params = {
idPattern: '^WaterObserved:EPG-MULTIFLOW',
api_key: 'API_KEY'
}
const searchParams = new URLSearchParams(params)
var requestOptions = {
method: 'GET',
redirect: 'follow'
};
fetch(url + '?' + searchParams, requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));
- Temps réel - Cas d'usage 2 : Renvoie les données d'un ID donné
const url = "https://api.nicecotedazur.org/nca/environment/water/observationWaterObserved:EPG-MULTIFLOW-SACCAG01"
const params = {
api_key: 'API_KEY'
}
const searchParams = new URLSearchParams(params)
var requestOptions = {
method: 'GET',
redirect: 'follow'
};
fetch(url + '?' + searchParams, requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));
- Temps réel - Cas d'usage 3 : Renvoie les valeurs des attributs passés en paramètre pour un ID donné
const url = "https://api.nicecotedazur.org/nca/environment/water/observationWaterObserved:EPG-MULTIFLOW-SACCAG01"
const params = {
attrs: 'flow',
api_key: 'API_KEY'
}
const searchParams = new URLSearchParams(params)
var requestOptions = {
method: 'GET',
redirect: 'follow'
};
fetch(url + '?' + searchParams, requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));
- Historique - Cas d'usage 4 : Renvoie une liste de valeurs horodatées d'un attribut passé en paramètre pour un ID donné
const url = "https://api.nicecotedazur.org/nca/environment/water/observation/histo/WaterObserved:EPG-MULTIFLOW-SACCAG01"
const params = {
attrs: 'flow',
fromDate: '2023-07-01T09:00:00',
toDate: '2023-07-31T09:00:00',
api_key: 'API_KEY'
}
const searchParams = new URLSearchParams(params)
var requestOptions = {
method: 'GET',
redirect: 'follow'
};
fetch(url + '?' + searchParams, requestOptions)
.then(response => response.text())
.then(result => console.log(result))
.catch(error => console.log('error', error));
Python
- Temps réel - Cas d'usage 1 : Renvoie les mesures de type "WaterObserved"
import requests
import urllib.parse
url = "https://api.nicecotedazur.org/nca/environment/water/observation"
searchParams = {
'idPattern': "^WaterObserved:EPG-MULTIFLOW",
'api_key': 'API_KEY'
}
response = requests.request("GET", url, params=searchParams)
print(response.text)
- Temps réel - Cas d'usage 2 : Renvoie les données d'un ID donné
import requests
import urllib.parse
url = "https://api.nicecotedazur.org/nca/environment/water/observationWaterObserved:EPG-MULTIFLOW-SACCAG01"
searchParams = {
'api_key': 'API_KEY'
}
response = requests.request("GET", url, params=searchParams)
print(response.text)
- Temps réel - Cas d'usage 3 : Renvoie les valeurs des attributs passés en paramètre pour un ID donné
import requests
import urllib.parse
url = "https://api.nicecotedazur.org/nca/environment/water/observationWaterObserved:EPG-MULTIFLOW-SACCAG01"
searchParams = {
'attrs': 'flow',
'api_key': 'API_KEY'
}
response = requests.request("GET", url, params=searchParams)
print(response.text)
- Historique - Cas d'usage 4 : Renvoie une liste de valeurs horodatées d'un attribut passé en paramètre pour un ID donné
import requests
import urllib.parse
url = "https://api.nicecotedazur.org/nca/environment/water/observation/histo/WaterObserved:EPG-MULTIFLOW-SACCAG01"
searchParams = {
'attrs': 'flow',
'fromDate': '2023-07-01T09:00:00',
'toDate': '2023-07-31T09:00:00',
'api_key': 'API_KEY'
}
response = requests.request("GET", url, params=searchParams)
print(response.text)
C#
- Temps réel - Cas d'usage 1 : Renvoie les mesures de type "WaterObserved"
using System;
using System.Net;
using static System.Web.HttpUtility;
namespace Case1
{
class Program
{
static async Task Main(string[] args)
{
string URL = "https://api.nicecotedazur.org/nca/environment/water/observation";
using var client = new HttpClient();
var builder = new UriBuilder(URL)
{
Query = "idPattern=^WaterObserved:EPG-MULTIFLOW&api_key=API_KEY"
}
var url = builder.ToString();
var res = await client.GetAsync(url);
var content = await res.Content.ReadAsStringAsync();
Console.WriteLine(content);
}
}
}
- Temps réel - Cas d'usage 2 : Renvoie les données d'un ID donné
using System;
using System.Net;
using static System.Web.HttpUtility;
namespace Case2
{
class Program
{
static async Task Main(string[] args)
{
string URL = "https://api.nicecotedazur.org/nca/environment/water/observationWaterObserved:EPG-MULTIFLOW-SACCAG01";
using var client = new HttpClient();
var builder = new UriBuilder(URL)
{
Query = "api_key=API_KEY"
}
var url = builder.ToString();
var res = await client.GetAsync(url);
var content = await res.Content.ReadAsStringAsync();
Console.WriteLine(content);
}
}
}
- Temps réel - Cas d'usage 3 : Renvoie les valeurs des attributs passés en paramètre pour un ID donné
using System;
using System.Net;
using static System.Web.HttpUtility;
namespace Case3
{
class Program
{
static async Task Main(string[] args)
{
string URL = "https://api.nicecotedazur.org/nca/environment/water/observationWaterObserved:EPG-MULTIFLOW-SACCAG01";
using var client = new HttpClient();
var builder = new UriBuilder(URL)
{
Query = "attrs=flow&api_key=API_KEY"
}
var url = builder.ToString();
var res = await client.GetAsync(url);
var content = await res.Content.ReadAsStringAsync();
Console.WriteLine(content);
}
}
}
- Historique - Cas d'usage 4 : Renvoie une liste de valeurs horodatées d'un attribut passé en paramètre pour un ID donné
using System;
using System.Net;
using static System.Web.HttpUtility;
namespace Case4
{
class Program
{
static async Task Main(string[] args)
{
string URL = "https://api.nicecotedazur.org/nca/environment/water/observation/histo/WaterObserved:EPG-MULTIFLOW-SACCAG01";
using var client = new HttpClient();
var builder = new UriBuilder(URL)
{
Query = "attrs=flow&fromDate=2023-07-01T09:00:00&toDate=2023-07-31T09:00:00&api_key=API_KEY"
}
var url = builder.ToString();
var res = await client.GetAsync(url);
var content = await res.Content.ReadAsStringAsync();
Console.WriteLine(content);
}
}
}