История

Конечная точка history предоставляет историческую ежечасную информацию о качестве воздуха для определенного местоположения в течение заданного диапазона времени, максимум до 30 дней. Вы можете контролировать, какие показатели качества и соответствующую информацию возвращаются (например, уровень концентрации загрязняющих веществ и рекомендации по здоровью).

Вы можете запросить историю почасового качества воздуха, используя конечную точку history , отправив запрос HTTP POST по адресу:

https://airquality.googleapis.com/v1/history:lookup?key=YOUR_API_KEY

Включите параметры запроса в тело запроса JSON. Тело запроса содержит местоположение и временной диапазон, за который вы хотите получить почасовую историю качества воздуха. Он также может включать различные варианты контроля того, какую информацию о качестве воздуха включать в ответ.

Пример запроса на один час

Тело запроса за один час

В следующем коде показано, как создать тело запроса для запроса истории за один час с использованием метода history . В этом примере вы устанавливаете местоположение и прошлую метку времени.

curl -X POST -d '{
  "dateTime": "2023-06-26T15:01:23Z",
  "location": {
    "latitude": 37.419734,
    "longitude": -122.0827784
  }
}' \
-H 'Content-Type: application/json' \
'https://airquality.googleapis.com/v1/history:lookup?key=YOUR_API_KEY'

Ответ за один час

Вызов выше генерирует следующий ответ JSON . Дополнительные сведения о данных ответа см. в разделе Данные ответа .

{
    "hoursInfo": [
        {
            "dateTime": "2023-06-26T15:00:00Z",
            "indexes": [
                {
                    "code": "uaqi",
                    "displayName": "Universal AQI",
                    "aqi": 73,
                    "aqiDisplay": "73",
                    "color": {
                        "red": 118,
                        "green": 202,
                        "blue": 51,
                        "alpha": 255
                    },
                    "category": "Good air quality",
                    "dominantPollutant": "pm10"
                }
            ]
        }
    ],
    "regionCode": "us"
}

Пример запроса временного диапазона

Запрос временного диапазона

Следующий код показывает, как создать тело запроса для history , которое возвращает несколько записей исторического почасового качества воздуха.

Вы можете запросить несколько записей, указав временной диапазон, то есть временную метку начала и окончания, или указав количество часов назад от текущего времени.

В приведенном ниже примере, поскольку вы установили размер страницы 2 , ваш запрос на четырехчасовую историю качества воздуха возвращается на двух страницах, где каждая страница содержит данные за два часа.

curl -X POST -d '{
  "hours": 4,
  "pageSize": 2,
  "pageToken":"",
  "location": {
    "latitude": 37.419734,
    "longitude": -122.0827784
  }
}' \
-H 'Content-Type: application/json' \
'https://airquality.googleapis.com/v1/history:lookup?key=YOUR_API_KEY'

Вы можете сделать аналогичный запрос, передав метки времени начала и окончания:

curl -X POST -d '{
  "period": {
      "startTime":"2023-06-15T08:00:00Z",
      "endTime":"2023-06-15T12:00:00Z"
  },
  "pageSize": 2,
  "pageToken":"",
  "location": {
    "latitude": 37.419734,
    "longitude": -122.0827784
  }
}' \
-H 'Content-Type: application/json' \
'https://airquality.googleapis.com/v1/history:lookup?key=YOUR_API_KEY'

Реакция временного диапазона

Приведенные выше вызовы генерируют ответ JSON в форме ниже. Дополнительные сведения о данных ответа см. в разделе Данные ответа .

Оба вышеуказанных звонка запрашивают данные о качестве воздуха за четыре часа. Однако, поскольку в запросе для свойства pageSize установлено значение 2 , ответ включает результаты только за последние два часа.

{
    "hoursInfo": [
        {
            "dateTime": "2023-06-15T11:00:00Z",
            "indexes": [
                {
                    "code": "uaqi",
                    "displayName": "Universal AQI",
                    "aqi": 83,
                    "aqiDisplay": "83",
                    "color": {
                        "red": 74,
                        "green": 185,
                        "blue": 54,
                        "alpha": 255
                    },
                    "category": "Excellent air quality",
                    "dominantPollutant": "o3"
                }
            ]
        },
        {
            "dateTime": "2023-06-15T10:00:00Z",
            "indexes": [
                {
                    "code": "uaqi",
                    "displayName": "Universal AQI",
                    "aqi": 89,
                    "aqiDisplay": "89",
                    "color": {
                        "red": 48,
                        "green": 175,
                        "blue": 55,
                        "alpha": 255
                    },
                    "category": "Excellent air quality",
                    "dominantPollutant": "o3"
                }
            ]
        }
    ],
    "regionCode": "us",
    "nextPageToken": "ChYaEgl3gv3XubVCQBEsNMY9TTdUMTE6MDA6MDA"
}

Обратите внимание, что ответ также включает свойство nextPageToken . Используйте это свойство для доступа к следующей странице результатов, которая содержит данные за следующие два часа.

Чтобы получить доступ к следующей странице результатов, выполните второй запрос к конечной точке history , но на этот раз установите для свойства pageToken значение nextPageToken из первого ответа.

curl -X POST -d '{
  "hours": 4,
  "pageSize": 2,
  "pageToken":"ChYaEgl3gv3XubVCQBEsNMY9TTdUMTE6MDA6MDA",
  "location": {
    "latitude": 37.419734,
    "longitude": -122.0827784
  }
}' \
-H 'Content-Type: application/json' \
'https://airquality.googleapis.com/v1/history:lookup?key=YOUR_API_KEY'