Referensi API
Sensor
Setiap sensor di peta Atmy dengan lokasi, jaringan, pemeriksaan kualitas, dan bacaan: PM1, PM2.5, PM10, suhu, kelembapan, tekanan, dan kanal lain dari perangkat. Tanpa pendaftaran dan tanpa kunci: permintaan GET biasa.
Daftar sensor
GEThttps://api.atmy.ai/v1/sensors
Sensor dengan bacaan terakhir, kualitas, dan peringkatnya, 100 per halaman
Parameter kueri
city string opsional
Id atau slug kota, misalnya serbia/belgrade
country string opsional
Slug negara, misalnya serbia
bbox string opsional
min_lon,min_lat,max_lon,max_lat
lat number opsional
Sensor di sekitar titik, hingga 50 km
lon number opsional
Sensor di sekitar titik, hingga 50 km
radius_km number opsional
Sensor di sekitar titik, hingga 50 km
Bawaan: 5
network string opsional
sensor_community, airgradient, atau atmy
quality string opsional
All atau passed
Bawaan: all
min_rating number opsional
Hanya sensor dengan peringkat minimal ini, dari 0 sampai 10
sort string opsional
Id atau rating: sensor paling andal lebih dulu
Bawaan: id
page integer opsional
Halaman hingga 500 sensor
Bawaan: 1
limit integer opsional
Halaman hingga 500 sensor
Bawaan: 100
curl "https://api.atmy.ai/v1/sensors?city=serbia/belgrade&sort=rating&limit=10"const response = await fetch("https://api.atmy.ai/v1/sensors?city=serbia/belgrade&sort=rating&limit=10");
const data = await response.json();import requests
data = requests.get("https://api.atmy.ai/v1/sensors?city=serbia/belgrade&sort=rating&limit=10").json(){
"api_version": "2.0",
"total": 31,
"page": 1,
"limit": 2,
"sensors": [
{
"id": 41504,
"uuid": "b4e7f10c-bd0b-4234-aff9-41d9222affd0",
"name": "Belgrade BIG Fashion Park",
"network": "AirGradient",
"network_id": "airgradient",
"license": "CC BY-SA 4.0",
"location": {
"lat": 44.81659101498,
"lon": 20.511912304712
},
"city": {
"id": 50068,
"slug": "serbia/belgrade",
"name": "Belgrade",
"country": "Serbia"
},
"quality": {
"status": "good",
"date": "2026-10-26",
"pm_eligible": true,
"rating": 10,
"rating_7d": 10,
"scores": {
"pm": 10,
"transport": 10,
"meteo": 10
},
"reasons": []
},
"latest": {
"time": "2026-10-27T11:03:35+00:00",
"pm1": 8.4,
"pm25": 13.8,
"pm10": 14.5,
"temperature_c": 14.4,
"humidity_percent": 47
}
},
{
"id": 41752,
"uuid": "611c7e92-5462-4f8c-8766-7cfaf69fba84",
"name": "for map",
"network": "AirGradient",
"network_id": "airgradient",
"license": "CC BY-SA 4.0",
"location": {
"lat": 44.790233610673,
"lon": 20.470308143789
},
"city": {
"id": 50068,
"slug": "serbia/belgrade",
"name": "Belgrade",
"country": "Serbia"
},
"quality": {
"status": "good",
"date": "2026-10-26",
"pm_eligible": true,
"rating": 10,
"rating_7d": 10,
"scores": {
"pm": 10,
"transport": 10,
"meteo": 10
},
"reasons": []
},
"latest": {
"time": "2026-10-27T11:03:34+00:00",
"pm1": 3,
"pm25": 6,
"pm10": 7,
"temperature_c": 17.7,
"humidity_percent": 40,
"tvoc": 117.4
}
}
],
"attribution": "Sensor data: Atmy (atmy.ai), from the networks named in each sensor's \"network\", under that network's license.",
"terms": "https://atmy.ai/legal/data/"
}Sensor satu jaringan
GEThttps://api.atmy.ai/v1/networks/{network}/sensors
Daftar yang sama hanya untuk satu jaringan, dengan filter yang sama.
Parameter jalur
network string wajib
sensor_community, airgradient, atau atmy.
Parameter kueri
city string opsional
Id atau slug kota, misalnya serbia/belgrade
country string opsional
Slug negara, misalnya serbia
bbox string opsional
min_lon,min_lat,max_lon,max_lat
lat number opsional
Sensor di sekitar titik, hingga 50 km
lon number opsional
Sensor di sekitar titik, hingga 50 km
radius_km number opsional
Sensor di sekitar titik, hingga 50 km
Bawaan: 5
quality string opsional
All atau passed
Bawaan: all
min_rating number opsional
Hanya sensor dengan peringkat minimal ini, dari 0 sampai 10
sort string opsional
Id atau rating: sensor paling andal lebih dulu
Bawaan: id
page integer opsional
Halaman hingga 500 sensor
Bawaan: 1
limit integer opsional
Halaman hingga 500 sensor
Bawaan: 100
curl "https://api.atmy.ai/v1/networks/atmy/sensors?sort=rating"const response = await fetch("https://api.atmy.ai/v1/networks/atmy/sensors?sort=rating");
const data = await response.json();import requests
data = requests.get("https://api.atmy.ai/v1/networks/atmy/sensors?sort=rating").json(){
"api_version": "2.0",
"total": 31,
"page": 1,
"limit": 2,
"sensors": [
{
"id": 41504,
"uuid": "b4e7f10c-bd0b-4234-aff9-41d9222affd0",
"name": "Belgrade BIG Fashion Park",
"network": "AirGradient",
"network_id": "airgradient",
"license": "CC BY-SA 4.0",
"location": {
"lat": 44.81659101498,
"lon": 20.511912304712
},
"city": {
"id": 50068,
"slug": "serbia/belgrade",
"name": "Belgrade",
"country": "Serbia"
},
"quality": {
"status": "good",
"date": "2026-10-26",
"pm_eligible": true,
"rating": 10,
"rating_7d": 10,
"scores": {
"pm": 10,
"transport": 10,
"meteo": 10
},
"reasons": []
},
"latest": {
"time": "2026-10-27T11:03:35+00:00",
"pm1": 8.4,
"pm25": 13.8,
"pm10": 14.5,
"temperature_c": 14.4,
"humidity_percent": 47
}
},
{
"id": 41752,
"uuid": "611c7e92-5462-4f8c-8766-7cfaf69fba84",
"name": "for map",
"network": "AirGradient",
"network_id": "airgradient",
"license": "CC BY-SA 4.0",
"location": {
"lat": 44.790233610673,
"lon": 20.470308143789
},
"city": {
"id": 50068,
"slug": "serbia/belgrade",
"name": "Belgrade",
"country": "Serbia"
},
"quality": {
"status": "good",
"date": "2026-10-26",
"pm_eligible": true,
"rating": 10,
"rating_7d": 10,
"scores": {
"pm": 10,
"transport": 10,
"meteo": 10
},
"reasons": []
},
"latest": {
"time": "2026-10-27T11:03:34+00:00",
"pm1": 3,
"pm25": 6,
"pm10": 7,
"temperature_c": 17.7,
"humidity_percent": 40,
"tvoc": 117.4
}
}
],
"attribution": "Sensor data: Atmy (atmy.ai), from the networks named in each sensor's \"network\", under that network's license.",
"terms": "https://atmy.ai/legal/data/"
}Ambil satu sensor
GEThttps://api.atmy.ai/v1/sensors/{id}
Satu sensor
Parameter jalur
id string wajib
Id sensor, seperti dalam daftar sensor.
curl "https://api.atmy.ai/v1/sensors/41504"const response = await fetch("https://api.atmy.ai/v1/sensors/41504");
const data = await response.json();import requests
data = requests.get("https://api.atmy.ai/v1/sensors/41504").json(){
"api_version": "2.0",
"sensor": {
"id": 41504,
"uuid": "b4e7f10c-bd0b-4234-aff9-41d9222affd0",
"name": "Belgrade BIG Fashion Park",
"network": "AirGradient",
"network_id": "airgradient",
"license": "CC BY-SA 4.0",
"location": {
"lat": 44.81659101498,
"lon": 20.511912304712
},
"city": {
"id": 50068,
"slug": "serbia/belgrade",
"name": "Belgrade",
"country": "Serbia"
},
"quality": {
"status": "good",
"date": "2026-10-26",
"pm_eligible": true,
"rating": 10,
"rating_7d": 10,
"scores": {
"pm": 10,
"transport": 10,
"meteo": 10
},
"reasons": []
},
"latest": {
"time": "2026-10-27T11:03:35+00:00",
"pm1": 8.4,
"pm25": 13.8,
"pm10": 14.5,
"temperature_c": 14.4,
"humidity_percent": 47
}
},
"attribution": "Sensor data: Atmy (atmy.ai), from the networks named in each sensor's \"network\", under that network's license.",
"terms": "https://atmy.ai/legal/data/"
}