Histori

Endpoint history memberikan informasi histori kualitas udara per jam untuk lokasi tertentu, untuk rentang waktu tertentu, hingga maksimum 30 hari. Anda dapat mengontrol AQI dan informasi terkait yang akan ditampilkan (seperti tingkat konsentrasi polutan dan rekomendasi kesehatan).

Anda dapat meminta histori kualitas udara per jam menggunakan endpoint history dengan mengirimkan permintaan HTTP POST ke:

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

Sertakan opsi permintaan Anda dalam isi permintaan JSON. Isi permintaan berisi lokasi dan rentang waktu yang ingin Anda dapatkan histori kualitas udara per jamnya. Ini juga dapat mencakup berbagai opsi untuk mengontrol informasi kualitas udara yang akan disertakan dalam respons.

Contoh permintaan satu jam

Isi permintaan satu jam

Kode berikut menunjukkan cara membuat isi permintaan untuk permintaan histori satu jam menggunakan metode history. Dalam contoh ini, Anda menetapkan lokasi dan stempel waktu sebelumnya.

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'

Respons satu jam

Panggilan di atas menghasilkan respons JSON berikut. Untuk detail selengkapnya tentang data respons, lihat Data respons.

{
    "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"
}

Contoh permintaan rentang waktu

Permintaan rentang waktu

Kode berikut menunjukkan cara membuat isi permintaan untuk history yang menampilkan beberapa catatan histori kualitas udara per jam.

Anda dapat meminta beberapa data dengan menentukan rentang waktu, yang berarti stempel waktu mulai dan berakhir, atau dengan menentukan jumlah jam mundur dari waktu saat ini.

Pada contoh di bawah, karena Anda menetapkan ukuran halaman ke 2, permintaan Anda untuk histori kualitas udara selama empat jam akan ditampilkan dalam dua halaman, yang setiap halaman berisi data selama dua jam.

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'

Anda dapat membuat permintaan serupa dengan meneruskan stempel waktu awal dan akhir:

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'

Respons rentang waktu

Panggilan di atas menghasilkan respons JSON dalam formulir di bawah. Untuk detail selengkapnya tentang data respons, lihat Data respons.

Kedua panggilan di atas meminta data kualitas udara berdurasi empat jam. Namun, karena Anda menetapkan properti pageSize ke 2 dalam permintaan, respons hanya menyertakan hasil selama dua jam terakhir.

{
    "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"
}

Perhatikan bahwa respons juga menyertakan properti nextPageToken. Gunakan properti ini untuk mengakses halaman hasil berikutnya, yang berisi data selama dua jam ke depan.

Untuk mengakses halaman hasil berikutnya, buat permintaan kedua ke endpoint history, tetapi kali ini tetapkan properti pageToken ke nilai nextPageToken dari respons pertama.

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'