history
端點會提供特定位置的歷史資料,包括特定時間範圍內每小時的空氣品質資訊,最長可達 30 天。您可以控制系統傳回哪些空氣品質指標和相關資訊 (例如污染物濃度和健康建議)。
您可以使用 history
端點,透過傳送 HTTP POST 要求至下列位置,要求每小時空氣品質記錄:
https://airquality.googleapis.com/v1/history:lookup?key=YOUR_API_KEY
請在 JSON 要求內文中加入要求選項。要求主體包含您要取得每小時空氣品質記錄的位置和時間範圍。也可能包含各種選項,用於控制回應中包含的空氣品質資訊。
您可以透過 APIs Explorer 提出即時要求,熟悉 API 和 API 選項:
單一小時請求範例
單一小時要求主體
下列程式碼示範如何使用 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'