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-000001Balise Ecole Hyvert cantine 89 Avenue George V
06000 Nice
7.269421
43.713661
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000002Balise Ecole Rothschlid cantine Rue Pierre Dévoluy
06000 Nice
7.273529
43.702613
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000003Balise Ecole Pasteur 23 Rue du professeur Delvalle
06300 Nice
7.283737063
43.722009456
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000004Balise Ecole Righi cantine 189 Avenue de Pessicart
06100 Nice
7.2502462
43.715646
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000005Balise Ecole Ronchèse cantine Rue Spitalieri
06000 Nice
7.268572
43.702102
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000006Balise Ecole Pierre Merle cantine 33 Rue Barla
06300 Nice
7.2840294
43.7012513
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000007Balise Avenue Reine Victoria 47 Avenue Reine Victoria
06000 Nice
7.273392
43.723834
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000008Balise Vieux Chemin de Gairaut 20 Vieux Chemin de Gairaut
06100 Nice
7.2597644
43.7260851
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000009Balise Avenue Saint-Jean-Baptiste 14 Avenue Saint-Jean-Baptiste
06000 Nice
7.2756247
43.702077
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000010Balise Boulevard Auguste Raynaud 43 Boulevard Auguste Raynaud
06100 Nice
7.2560446
43.7136899
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000011Balise Boulevard du Souvenir Français 32 Boulevard du Souvenir Français
06200 Nice
7.2157584
43.6774483
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000012Balise Rue Arson 31 Rue Arson
06300 Nice
7.287801
43.702556
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000013Balise Boulevard Dubouchage 8-10 Boulevard Dubouchage
06000 Nice
7.2699094
43.7024408
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000014Balise Boulevard Lech Walesa 5 Boulevard Lech Walesa
06300 Nice
7.287455
43.699591
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000015Balise Rue Catherine Segurane 28 Rue Catherine Segurane
06300 Nice
7.2798954
43.6979132
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved
Device:SENSIBEL-NOISELO-000016Balise Rue de Roquebillière 83-81 Rue de Roquebillière
06300 Nice
7.285269
43.706649
01/01/2017
  • LAeq
  • LCPeak
  • LCeq
  • NoiseLevelObserved

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);
        }
    }
}