Разработчикам

Справочник API

Датчики

Каждый датчик карты Atmy с координатами, сетью, проверкой качества и показаниями: PM1, PM2.5, PM10, температура, влажность, давление и другие каналы, которые передаёт устройство. Без регистрации и ключа: обычные GET-запросы.

Список датчиков

GEThttps://api.atmy.ai/v1/sensors

Датчики с последним показанием, качеством и рейтингом, по 100 на страницу

Параметры запроса

city string необязательный

Id или slug города, например serbia/belgrade

country string необязательный

Slug страны, например serbia

bbox string необязательный

min_lon,min_lat,max_lon,max_lat

lat number необязательный

Датчики вокруг точки, до 50 км

lon number необязательный

Датчики вокруг точки, до 50 км

radius_km number необязательный

Датчики вокруг точки, до 50 км

По умолчанию: 5

network string необязательный

sensor_community, airgradient или atmy

quality string необязательный

All или passed

По умолчанию: all

min_rating number необязательный

Только датчики с рейтингом не ниже заданного, от 0 до 10

sort string необязательный

Id или rating: сначала самые надёжные датчики

По умолчанию: id

page integer необязательный

Страницы до 500 датчиков

По умолчанию: 1

limit integer необязательный

Страницы до 500 датчиков

По умолчанию: 100

GET/sensors?city=serbia/belgrade&sort=rating&limit=10
curl "https://api.atmy.ai/v1/sensors?city=serbia/belgrade&sort=rating&limit=10"
200Ответ
{
  "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/"
}

Датчики одной сети

GEThttps://api.atmy.ai/v1/networks/{network}/sensors

Тот же список только для одной сети, с теми же фильтрами.

Параметры пути

network string обязательный

sensor_community, airgradient или atmy.

Параметры запроса

city string необязательный

Id или slug города, например serbia/belgrade

country string необязательный

Slug страны, например serbia

bbox string необязательный

min_lon,min_lat,max_lon,max_lat

lat number необязательный

Датчики вокруг точки, до 50 км

lon number необязательный

Датчики вокруг точки, до 50 км

radius_km number необязательный

Датчики вокруг точки, до 50 км

По умолчанию: 5

quality string необязательный

All или passed

По умолчанию: all

min_rating number необязательный

Только датчики с рейтингом не ниже заданного, от 0 до 10

sort string необязательный

Id или rating: сначала самые надёжные датчики

По умолчанию: id

page integer необязательный

Страницы до 500 датчиков

По умолчанию: 1

limit integer необязательный

Страницы до 500 датчиков

По умолчанию: 100

GET/networks/atmy/sensors?sort=rating
curl "https://api.atmy.ai/v1/networks/atmy/sensors?sort=rating"
200Ответ
{
  "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/"
}

Один датчик

GEThttps://api.atmy.ai/v1/sensors/{id}

Один датчик

Параметры пути

id string обязательный

id датчика, как в списке датчиков.

GET/sensors/41504
curl "https://api.atmy.ai/v1/sensors/41504"
200Ответ
{
  "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/"
}