Lịch sử

Điểm cuối history cung cấp thông tin về chất lượng không khí theo giờ trước đây cho một vị trí cụ thể, trong một phạm vi thời gian nhất định, tối đa là 30 ngày. Bạn có thể kiểm soát chỉ số chất lượng không khí (AQI) và thông tin liên quan được trả về (chẳng hạn như nồng độ các chất gây ô nhiễm và các đề xuất về sức khoẻ).

Bạn có thể yêu cầu nhật ký chất lượng không khí hằng giờ qua điểm cuối history bằng cách gửi yêu cầu POST qua HTTP đến:

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

Hãy đưa các lựa chọn yêu cầu của bạn vào nội dung yêu cầu JSON. Nội dung yêu cầu chứa vị trí và khoảng thời gian mà bạn muốn lấy nhật ký chất lượng không khí hằng giờ. Báo cáo này cũng có thể bao gồm nhiều tuỳ chọn để kiểm soát thông tin về chất lượng không khí cần đưa vào phản hồi.

Ví dụ về yêu cầu một giờ

Nội dung yêu cầu một giờ

Mã sau đây cho biết cách tạo nội dung yêu cầu cho một yêu cầu nhật ký trong một giờ bằng phương thức history. Trong ví dụ này, bạn thiết lập vị trí và dấu thời gian trong quá khứ.

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'

Phản hồi trong 1 giờ

Lệnh gọi trên tạo ra phản hồi JSON sau đây. Để biết thêm thông tin chi tiết về dữ liệu phản hồi, hãy xem bài viết Dữ liệu phản hồi.

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

Ví dụ về yêu cầu phạm vi thời gian

Yêu cầu phạm vi thời gian

Mã sau đây cho biết cách tạo nội dung yêu cầu cho một history trả về nhiều bản ghi chất lượng không khí theo giờ trước đây.

Bạn có thể yêu cầu nhiều bản ghi bằng cách chỉ định một phạm vi thời gian, nghĩa là dấu thời gian bắt đầu và kết thúc hoặc bằng cách chỉ định số giờ tính từ thời điểm hiện tại.

Trong ví dụ bên dưới, vì bạn đặt kích thước trang thành 2, nên yêu cầu của bạn về nhật ký chất lượng không khí trong 4 giờ sẽ được trả về trong 2 trang, trong đó mỗi trang chứa dữ liệu trong 2 giờ.

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'

Bạn có thể đưa ra yêu cầu tương tự bằng cách chuyển dấu thời gian bắt đầu và kết thúc:

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'

Phản hồi trong phạm vi thời gian

Các lệnh gọi trên sẽ tạo ra một phản hồi JSON ở dạng dưới đây. Để biết thêm thông tin chi tiết về dữ liệu phản hồi, hãy xem bài viết Dữ liệu phản hồi.

Cả hai cuộc gọi ở trên đều yêu cầu dữ liệu về chất lượng không khí trong 4 giờ. Tuy nhiên, vì bạn đã đặt thuộc tính pageSize thành 2 trong yêu cầu, nên phản hồi chỉ bao gồm kết quả trong 2 giờ gần đây nhất.

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

Xin lưu ý rằng phản hồi cũng bao gồm thuộc tính nextPageToken. Hãy sử dụng thuộc tính này để truy cập vào trang tiếp theo của kết quả, chứa dữ liệu của 2 giờ tiếp theo.

Để truy cập vào trang kết quả tiếp theo, hãy gửi yêu cầu thứ hai đến điểm cuối history, nhưng lần này hãy đặt thuộc tính pageToken thành giá trị nextPageToken từ phản hồi đầu tiên.

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'