Lịch sử

Điểm cuối history cung cấp thông tin về chất lượng không khí trước đây theo giờ 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ố AQI và thông tin liên quan nào được trả về (chẳng hạn như mức nồng độ 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í theo giờ qua điểm cuối history bằng cách gửi yêu cầu POST qua HTTP tới:

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

Đưa các tuỳ 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 thông tin vị trí và khoảng thời gian mà bạn muốn xem nhật ký chất lượng không khí hằng giờ. Ứng dụng này cũng có nhiều lựa chọn để kiểm soát thông tin về chất lượng không khí cần đưa vào câu trả lời.

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

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

Đoạn 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ý theo giờ bằng phương thức history. Trong ví dụ này, bạn đặt 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. Để biết thêm thông tin chi tiết về dữ liệu phản hồi, hãy xem phần 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 về phạm vi thời gian

Đoạn mã sau đây cho biết cách tạo nội dung yêu cầu cho history (trả về nhiều bản ghi chất lượng không khí hằng 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 khoảng 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ụ dưới đây, 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 2 giờ dữ liệu.

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ể thực hiện một yêu cầu tương tự bằng cách truyề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 trong biểu mẫu dưới đây. Để biết thêm thông tin chi tiết về dữ liệu phản hồi, hãy xem phần Dữ liệu phản hồi.

Cả hai cuộc gọi trên đều yêu cầu dữ liệu 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ả cho 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 cho hai giờ tiếp theo.

Để truy cập vào trang kết quả tiếp theo, hãy thực hiện 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ị của nextPageToken trong 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'