履歴

history エンドポイントは、特定の場所の過去の 1 時間ごとの大気質情報を、指定された期間(最長 30 日間)で提供します。返される AQI と関連情報(汚染物質の濃度レベルや健康に関する推奨事項など)を制御できます。

history エンドポイントを使用して 1 時間ごとの大気質の履歴をリクエストするには、HTTP POST リクエストを次の場所に送信します。

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

リクエスト オプションを JSON リクエスト本文に含めます。リクエストの本文には、1 時間ごとの大気質の履歴を取得する場所と期間が含まれます。また、レスポンスに含める大気質情報を制御するためのさまざまなオプションも含まれます。

API Explorer では、ライブ リクエストを実行して、API と API オプションを把握できます。

試してみる

1 時間のリクエストの例

1 時間のリクエスト本文

次のコードは、history メソッドを使用して 1 時間の履歴リクエストのリクエスト本文を作成する方法を示しています。この例では、場所と過去のタイムスタンプを設定します。

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'

1 時間以内の対応

上記の呼び出しにより、次の 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"
}

期間リクエストの例

期間のリクエスト

次のコードは、1 時間ごとの大気質に関する複数のレコードを返す history のリクエスト本文を作成する方法を示しています。

複数のレコードをリクエストするには、期間(開始タイムスタンプと終了タイムスタンプ)を指定するか、現在の時刻から遡る時間数を指定します。

次の例では、ページサイズを 2 に設定しているため、4 時間の大気質履歴のリクエストは 2 ページで返されます。各ページには 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 レスポンスを生成します。レスポンス データの詳細については、レスポンス データをご覧ください。

上記の両方の呼び出しは、4 時間の大気質データをリクエストします。ただし、リクエストで pageSize プロパティを 2 に設定しているため、レスポンスには過去 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 プロパティも含まれています。このプロパティを使用して、次の 2 時間のデータを含む結果の次のページにアクセスします。

次のページの結果にアクセスするには、history エンドポイントに 2 回目のリクエストを行います。ただし、今回は 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'