Données environnementales sur le bruit
Définition à venir.
Liste des capteurs
| ID | Name | Adresse | Localisation | Date de mise en service | Propriétés | Assets |
|---|---|---|---|---|---|---|
| Device:SENSIBEL-NOISELO-000001 | Balise Ecole Hyvert cantine | 89 Avenue George V 06000 Nice | 7.269421 43.713661 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000002 | Balise Ecole Rothschlid cantine | Rue Pierre Dévoluy 06000 Nice | 7.273529 43.702613 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000003 | Balise Ecole Pasteur | 23 Rue du professeur Delvalle 06300 Nice | 7.283737063 43.722009456 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000004 | Balise Ecole Righi cantine | 189 Avenue de Pessicart 06100 Nice | 7.2502462 43.715646 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000005 | Balise Ecole Ronchèse cantine | Rue Spitalieri 06000 Nice | 7.268572 43.702102 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000006 | Balise Ecole Pierre Merle cantine | 33 Rue Barla 06300 Nice | 7.2840294 43.7012513 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000007 | Balise Avenue Reine Victoria | 47 Avenue Reine Victoria 06000 Nice | 7.273392 43.723834 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000008 | Balise Vieux Chemin de Gairaut | 20 Vieux Chemin de Gairaut 06100 Nice | 7.2597644 43.7260851 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000009 | Balise Avenue Saint-Jean-Baptiste | 14 Avenue Saint-Jean-Baptiste 06000 Nice | 7.2756247 43.702077 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000010 | Balise Boulevard Auguste Raynaud | 43 Boulevard Auguste Raynaud 06100 Nice | 7.2560446 43.7136899 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000011 | Balise Boulevard du Souvenir Français | 32 Boulevard du Souvenir Français 06200 Nice | 7.2157584 43.6774483 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000012 | Balise Rue Arson | 31 Rue Arson 06300 Nice | 7.287801 43.702556 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000013 | Balise Boulevard Dubouchage | 8-10 Boulevard Dubouchage 06000 Nice | 7.2699094 43.7024408 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000014 | Balise Boulevard Lech Walesa | 5 Boulevard Lech Walesa 06300 Nice | 7.287455 43.699591 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000015 | Balise Rue Catherine Segurane | 28 Rue Catherine Segurane 06300 Nice | 7.2798954 43.6979132 | 01/01/2017 |
|
|
| Device:SENSIBEL-NOISELO-000016 | Balise Rue de Roquebillière | 83-81 Rue de Roquebillière 06300 Nice | 7.285269 43.706649 | 01/01/2017 |
|
|
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": "NoiseLevelObserved:SENSIBEL-NOISELO-000004",
"type": "NoiseLevelObserved",
"LAeq": {
"type": "Number",
"value": 50.7,
"metadata": {
"timestamp": {
"type": "DateTime",
"value": "2024-07-02T12:40:53.000Z"
},
"unitCode": {
"type": "Text",
"value": "2N"
}
}
},
"address": {
"type": "PostalAddress",
"value": {
"addressCountry": "FR",
"streetAddress": "189 Avenue de Pessicart",
"postalCode": "06100",
"addressLocality": "Nice"
}
},
"dataProvider": {
"type": "Text",
"value": "Métropole Nice Côte d%27Azur"
},
"dateModified": {
"type": "DateTime",
"value": "2024-07-02T15:03:46.715Z"
},
"dateObserved": {
"type": "DateTime",
"value": "2024-07-02T12:40:53.000Z"
},
"location": {
"type": "geo:json",
"value": {
"coordinates": [
7.2502462,
43.715646
],
"type": "Point"
}
},
"name": {
"type": "Text",
"value": "Balise Ecole Righi cantine"
},
"refDevice": {
"type": "Text",
"value": "Device:SENSIBEL-NOISELO-000004"
},
"source": {
"type": "Text",
"value": "Sensibel"
}
}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 "NoiseLevelObserved"
- 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 "NoiseLevelObserved"
curl -X GET "https://api.nicecotedazur.org/nca/environment/air/noiselevel/?idPattern=^NoiseLevelObserved:SENSIBEL-NOISELO&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/air/noiselevel/NoiseLevelObserved:SENSIBEL-NOISELO-000004?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/air/noiselevel/NoiseLevelObserved:SENSIBEL-NOISELO-000004?attrs=dateObserved,LAeq&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/air/noiselevel/histo/NoiseLevelObserved:SENSIBEL-NOISELO-000004?attrs=LAeq&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 "NoiseLevelObserved"
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/air/noiselevel/?idPattern=^NoiseLevelObserved:SENSIBEL-NOISELO&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/air/noiselevel/NoiseLevelObserved:SENSIBEL-NOISELO-000004?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/air/noiselevel/NoiseLevelObserved:SENSIBEL-NOISELO-000004?attrs=dateObserved,LAeq&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/air/noiselevel/histo/NoiseLevelObserved:SENSIBEL-NOISELO-000004?attrs=LAeq&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 "NoiseLevelObserved"
const url = "https://api.nicecotedazur.org/nca/environment/air/noiselevel/"
const params = {
idPattern: '^NoiseLevelObserved:SENSIBEL-NOISELO',
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/air/noiselevel/NoiseLevelObserved:SENSIBEL-NOISELO-000004"
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/air/noiselevel/NoiseLevelObserved:SENSIBEL-NOISELO-000004"
const params = {
attrs: 'dateObserved,LAeq',
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/air/noiselevel/histo/NoiseLevelObserved:SENSIBEL-NOISELO-000004"
const params = {
attrs: 'LAeq',
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 "NoiseLevelObserved"
import requests
import urllib.parse
url = "https://api.nicecotedazur.org/nca/environment/air/noiselevel/"
searchParams = {
'idPattern': "^NoiseLevelObserved:SENSIBEL-NOISELO",
'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/air/noiselevel/NoiseLevelObserved:SENSIBEL-NOISELO-000004"
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/air/noiselevel/NoiseLevelObserved:SENSIBEL-NOISELO-000004"
searchParams = {
'attrs': 'dateObserved,LAeq',
'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/air/noiselevel/histo/NoiseLevelObserved:SENSIBEL-NOISELO-000004"
searchParams = {
'attrs': 'LAeq',
'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 "NoiseLevelObserved"
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/air/noiselevel/";
using var client = new HttpClient();
var builder = new UriBuilder(URL)
{
Query = "idPattern=^NoiseLevelObserved:SENSIBEL-NOISELO&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/air/noiselevel/NoiseLevelObserved:SENSIBEL-NOISELO-000004";
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/air/noiselevel/NoiseLevelObserved:SENSIBEL-NOISELO-000004";
using var client = new HttpClient();
var builder = new UriBuilder(URL)
{
Query = "attrs=dateObserved,LAeq&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/air/noiselevel/histo/NoiseLevelObserved:SENSIBEL-NOISELO-000004";
using var client = new HttpClient();
var builder = new UriBuilder(URL)
{
Query = "attrs=LAeq&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);
}
}
}