Xem thông tin dự báo hằng ngày

Điểm cuối forecast.days trả về thông tin dự báo trong tối đa 10 ngày cho một vị trí cụ thể, bắt đầu từ ngày hiện tại. API này trả về kết quả sau:

  • Nội dung mô tả về điều kiện thời tiết ban ngày (7:00 sáng đến 7:00 tối) và ban đêm (7:00 tối đến 7:00 sáng) kèm theo biểu tượng tương ứng
  • Nhiệt độ cao nhất và thấp nhất hằng ngày
  • Nhiệt độ biểu kiến ("cảm giác như") cao nhất và thấp nhất hằng ngày
  • Chỉ số nhiệt
  • Độ ẩm tương đối
  • Chỉ số UV
  • Xác suất, tỷ lệ phần trăm, lượng và loại mưa
  • Xác suất có giông bão
  • Áp suất mực nước biển
  • Gió lạnh
  • Hướng, tốc độ và gió giật
  • Độ dày của băng
  • Tầm nhìn và mây che phủ
  • Thời gian mặt trời mọc, mặt trời lặn, mặt trăng mọc và mặt trăng lặn hằng ngày

APIs Explorer cho phép bạn đưa ra các yêu cầu trực tiếp để có thể làm quen với API và các tuỳ chọn API:

Giới thiệu về yêu cầu dự báo hằng ngày

Để yêu cầu thông tin về tình trạng hiện tại, hãy gửi yêu cầu HTTP GET đến:

https://weather.googleapis.com/v1/forecast/days:lookup?key=YOUR_API_KEY&location.latitude=LATITUDE&location.longitude=LONGITUDE

Thêm toạ độ vĩ độ và kinh độ của vị trí vào tham số URL của yêu cầu.

Ví dụ về yêu cầu dự báo hằng ngày

Theo mặc định, điểm cuối forecast.days sẽ trả về dữ liệu của 10 ngày, bắt đầu từ giờ hiện tại. Bạn có thể đặt phạm vi cho yêu cầu của mình trong một số ngày cụ thể bằng cách sử dụng tham số days.

Ví dụ sau đây yêu cầu thông tin dự báo hằng ngày cho hai ngày tiếp theo cho Mountain View, CA:

curl -X GET "https://weather.googleapis.com/v1/forecast/days:lookup?key=YOUR_API_KEY&location.latitude=37.4220&location.longitude=-122.0841&days=2"

Trong phản hồi, đối tượng interval cho biết thông tin của từng ngày:

{
  "forecastDays": [
    {
      "interval": {
        "startTime": "2025-02-10T15:00:00Z",
        "endTime": "2025-02-11T15:00:00Z"
      },
      "displayDate": {
        "year": 2025,
        "month": 2,
        "day": 10
      },
      "daytimeForecast": {
        "interval": {
          "startTime": "2025-02-10T15:00:00Z",
          "endTime": "2025-02-11T03:00:00Z"
        },
        "weatherCondition": {
          "iconBaseUri": "https://maps.gstatic.com/weather/v1/partly_cloudy",
          "description": {
            "text": "Partly sunny",
            "languageCode": "en"
          },
          "type": "PARTLY_CLOUDY"
        },
        "relativeHumidity": 54,
        "uvIndex": 3,
        "precipitation": {
          "probability": {
            "percent": 5,
            "type": "RAIN"
          },
          "qpf": {
            "quantity": 0,
            "unit": "MILLIMETERS"
          }
        },
        "thunderstormProbability": 0,
        "wind": {
          "direction": {
            "degrees": 280,
            "cardinal": "WEST"
          },
          "speed": {
            "value": 6,
            "unit": "KILOMETERS_PER_HOUR"
          },
          "gust": {
            "value": 14,
            "unit": "KILOMETERS_PER_HOUR"
          }
        },
        "cloudCover": 53
      },
      "nighttimeForecast": {
        "interval": {
          "startTime": "2025-02-11T03:00:00Z",
          "endTime": "2025-02-11T15:00:00Z"
        },
        "weatherCondition": {
          "iconBaseUri": "https://maps.gstatic.com/weather/v1/partly_clear",
          "description": {
            "text": "Partly cloudy",
            "languageCode": "en"
          },
          "type": "PARTLY_CLOUDY"
        },
        "relativeHumidity": 85,
        "uvIndex": 0,
        "precipitation": {
          "probability": {
            "percent": 10,
            "type": "RAIN_AND_SNOW"
          },
          "qpf": {
            "quantity": 0,
            "unit": "MILLIMETERS"
          }
        },
        "thunderstormProbability": 0,
        "wind": {
          "direction": {
            "degrees": 201,
            "cardinal": "SOUTH_SOUTHWEST"
          },
          "speed": {
            "value": 6,
            "unit": "KILOMETERS_PER_HOUR"
          },
          "gust": {
            "value": 14,
            "unit": "KILOMETERS_PER_HOUR"
          }
        },
        "cloudCover": 70
      },
      "maxTemperature": {
        "degrees": 13.3,
        "unit": "CELSIUS"
      },
      "minTemperature": {
        "degrees": 1.5,
        "unit": "CELSIUS"
      },
      "feelsLikeMaxTemperature": {
        "degrees": 13.3,
        "unit": "CELSIUS"
      },
      "feelsLikeMinTemperature": {
        "degrees": 1.5,
        "unit": "CELSIUS"
      },
      "sunEvents": {
        "sunriseTime": "2025-02-10T15:02:35.703929582Z",
        "sunsetTime": "2025-02-11T01:43:00.762932858Z"
      },
      "moonEvents": {
        "moonPhase": "WAXING_GIBBOUS",
        "moonriseTimes": [
          "2025-02-10T23:54:17.713157984Z"
        ],
        "moonsetTimes": [
          "2025-02-10T14:13:58.625181191Z"
        ]
      },
      "maxHeatIndex": {
        "degrees": 13.3,
        "unit": "CELSIUS"
      },
      "iceThickness": {
        "thickness": 0,
        "unit": "MILLIMETERS"
      }
    },
    {
      "interval": {
        "startTime": "2025-02-11T15:00:00Z",
        "endTime": "2025-02-12T15:00:00Z"
      },
      "displayDate": {
        "year": 2025,
        "month": 2,
        "day": 11
      },
      "daytimeForecast": {
        "interval": {
          "startTime": "2025-02-11T15:00:00Z",
          "endTime": "2025-02-12T03:00:00Z"
        },
        "weatherCondition": {
          "iconBaseUri": "https://maps.gstatic.com/weather/v1/scattered_showers",
          "description": {
            "text": "Scattered showers",
            "languageCode": "en"
          },
          "type": "SCATTERED_SHOWERS"
        },
      /.../
      }
    }
  ],
  "timeZone": {
    "id": "America/Los_Angeles"
  }
}

Chỉ định số ngày cần trả về trên mỗi trang

Bạn có thể chỉ định số ngày dữ liệu cần trả về trên mỗi trang bằng cách sử dụng tham số URL pageSize. Giá trị mặc định là 5 ngày thông tin dự báo trên mỗi trang.

Câu trả lời có nhiều trang thông tin sẽ có một nextPageToken. Để xem trang thông tin tiếp theo, hãy chuyển giá trị nextPageToken vào tham số pageToken trong yêu cầu của bạn.

Ví dụ sau đây yêu cầu dữ liệu dự báo thời tiết trong 6 ngày cho Mountain View, CA, với 3 ngày dữ liệu trên mỗi trang:

curl -X GET "https://weather.googleapis.com/v1/forecast/days:lookup?key=YOUR_API_KEY&location.latitude=37.4220&location.longitude=-122.0841&days=6&pageSize=3"

Phản hồi (bao gồm dữ liệu của 3 ngày đầu tiên) có dạng như sau:

{
  "forecastDays": [
    {
      "interval": {
        "startTime": "2025-02-10T15:00:00Z",
        "endTime": "2025-02-11T15:00:00Z"
      },
      "displayDate": {
        "year": 2025,
        "month": 2,
        "day": 10
      },
      "daytimeForecast": {
        "interval": {
          "startTime": "2025-02-10T15:00:00Z",
          "endTime": "2025-02-11T03:00:00Z"
        },
        "weatherCondition": {
          "iconBaseUri": "https://maps.gstatic.com/weather/v1/partly_cloudy",
          "description": {
            "text": "Partly sunny",
            "languageCode": "en"
          },
          "type": "PARTLY_CLOUDY"
        },
        "relativeHumidity": 52,
        "uvIndex": 3,
        "precipitation": {
          "probability": {
            "percent": 5,
            "type": "RAIN"
          },
          "qpf": {
            "quantity": 0,
            "unit": "MILLIMETERS"
          }
        },
        "thunderstormProbability": 0,
        "wind": {
          "direction": {
            "degrees": 280,
            "cardinal": "WEST"
          },
          "speed": {
            "value": 6,
            "unit": "KILOMETERS_PER_HOUR"
          },
          "gust": {
            "value": 14,
            "unit": "KILOMETERS_PER_HOUR"
          }
        },
        "cloudCover": 53
      },
      "nighttimeForecast": {
        "interval": {
          "startTime": "2025-02-11T03:00:00Z",
          "endTime": "2025-02-11T15:00:00Z"
        },
        "weatherCondition": {
          "iconBaseUri": "https://maps.gstatic.com/weather/v1/partly_clear",
          "description": {
            "text": "Partly cloudy",
            "languageCode": "en"
          },
          "type": "PARTLY_CLOUDY"
        },
        "relativeHumidity": 85,
        "uvIndex": 0,
        "precipitation": {
          "probability": {
            "percent": 10,
            "type": "RAIN_AND_SNOW"
          },
          "qpf": {
            "quantity": 0,
            "unit": "MILLIMETERS"
          }
        },
        "thunderstormProbability": 0,
        "wind": {
          "direction": {
            "degrees": 201,
            "cardinal": "SOUTH_SOUTHWEST"
          },
          "speed": {
            "value": 6,
            "unit": "KILOMETERS_PER_HOUR"
          },
          "gust": {
            "value": 14,
            "unit": "KILOMETERS_PER_HOUR"
          }
        },
        "cloudCover": 69
      },
      "maxTemperature": {
        "degrees": 13.5,
        "unit": "CELSIUS"
      },
      "minTemperature": {
        "degrees": 1.5,
        "unit": "CELSIUS"
      },
      "feelsLikeMaxTemperature": {
        "degrees": 13.5,
        "unit": "CELSIUS"
      },
      "feelsLikeMinTemperature": {
        "degrees": 1.5,
        "unit": "CELSIUS"
      },
      "sunEvents": {
        "sunriseTime": "2025-02-10T15:02:35.703929582Z",
        "sunsetTime": "2025-02-11T01:43:00.762932858Z"
      },
      "moonEvents": {
        "moonPhase": "WAXING_GIBBOUS",
        "moonriseTimes": [
          "2025-02-10T23:54:17.713157984Z"
        ],
        "moonsetTimes": [
          "2025-02-10T14:13:58.625181191Z"
        ]
      },
      "maxHeatIndex": {
        "degrees": 13.5,
        "unit": "CELSIUS"
      },
      "iceThickness": {
        "thickness": 0,
        "unit": "MILLIMETERS"
      }
    },
    {
      "interval": {
        "startTime": "2025-02-11T15:00:00Z",
        "endTime": "2025-02-12T15:00:00Z"
      },
      "displayDate": {
        "year": 2025,
        "month": 2,
        "day": 11
      },
      /.../
    },
    {
      "interval": {
        "startTime": "2025-02-12T15:00:00Z",
        "endTime": "2025-02-13T15:00:00Z"
      },
      "displayDate": {
        "year": 2025,
        "month": 2,
        "day": 12
      },
      /.../
    }
  ],
  "timeZone": {
    "id": "America/Los_Angeles"
  },
  "nextPageToken": "ChYKEgm8dJMYBLZCQBH-ZffkYYVewBAGEAMYAyILCKyAqr0GEKOR6lUqE0FtZXJpY2EvTG9zX0FuZ2VsZXM="
}

Để truy cập vào trang dữ liệu tiếp theo, hãy chuyển giá trị nextPageToken vào tham số pageToken trong yêu cầu của bạn:

curl -X GET "https://weather.googleapis.com/v1/forecast/days:lookup?key=YOUR_API_KEY&location.latitude=37.4220&location.longitude=-122.0841&days=6&pageSize=3&pageToken=ChYKEgm8dJMYBLZCQBH-ZffkYYVewBAGEAMYAyILCKyAqr0GEKOR6lUqE0FtZXJpY2EvTG9zX0FuZ2VsZXM="

Phản hồi có dạng:

{
  "forecastDays": [
    {
      "interval": {
        "startTime": "2025-02-13T15:00:00Z",
        "endTime": "2025-02-14T15:00:00Z"
      },
      "displayDate": {
        "year": 2025,
        "month": 2,
        "day": 13
      },
      "daytimeForecast": {
        "interval": {
          "startTime": "2025-02-13T15:00:00Z",
          "endTime": "2025-02-14T03:00:00Z"
        },
        "weatherCondition": {
          "iconBaseUri": "https://maps.gstatic.com/weather/v1/drizzle",
          "description": {
            "text": "Light rain",
            "languageCode": "en"
          },
          "type": "LIGHT_RAIN"
        },
        "relativeHumidity": 81,
        "uvIndex": 2,
        "precipitation": {
          "probability": {
            "percent": 75,
            "type": "RAIN"
          },
          "qpf": {
            "quantity": 15.588,
            "unit": "MILLIMETERS"
          }
        },
        "thunderstormProbability": 20,
        "wind": {
          "direction": {
            "degrees": 181,
            "cardinal": "SOUTH"
          },
          "speed": {
            "value": 14,
            "unit": "KILOMETERS_PER_HOUR"
          },
          "gust": {
            "value": 32,
            "unit": "KILOMETERS_PER_HOUR"
          }
        },
        "cloudCover": 100
      },
      "nighttimeForecast": {
        "interval": {
          "startTime": "2025-02-14T03:00:00Z",
          "endTime": "2025-02-14T15:00:00Z"
        },
        "weatherCondition": {
          "iconBaseUri": "https://maps.gstatic.com/weather/v1/showers",
          "description": {
            "text": "Rain showers",
            "languageCode": "en"
          },
          "type": "RAIN_SHOWERS"
        },
        "relativeHumidity": 87,
        "uvIndex": 0,
        "precipitation": {
          "probability": {
            "percent": 75,
            "type": "RAIN"
          },
          "qpf": {
            "quantity": 11.3513,
            "unit": "MILLIMETERS"
          }
        },
        "thunderstormProbability": 10,
        "wind": {
          "direction": {
            "degrees": 222,
            "cardinal": "SOUTHWEST"
          },
          "speed": {
            "value": 14,
            "unit": "KILOMETERS_PER_HOUR"
          },
          "gust": {
            "value": 31,
            "unit": "KILOMETERS_PER_HOUR"
          }
        },
        "cloudCover": 95
      },
      "maxTemperature": {
        "degrees": 15.9,
        "unit": "CELSIUS"
      },
      "minTemperature": {
        "degrees": 11.2,
        "unit": "CELSIUS"
      },
      "feelsLikeMaxTemperature": {
        "degrees": 15.9,
        "unit": "CELSIUS"
      },
      "feelsLikeMinTemperature": {
        "degrees": 11,
        "unit": "CELSIUS"
      },
      "sunEvents": {
        "sunriseTime": "2025-02-13T14:59:17.439839464Z",
        "sunsetTime": "2025-02-14T01:46:14.345904643Z"
      },
      "moonEvents": {
        "moonPhase": "WANING_GIBBOUS",
        "moonriseTimes": [
          "2025-02-14T03:08:04.049988754Z"
        ],
        "moonsetTimes": [
          "2025-02-13T15:44:40.326916694Z"
        ]
      },
      "maxHeatIndex": {
        "degrees": 15.9,
        "unit": "CELSIUS"
      },
      "iceThickness": {
        "thickness": 0,
        "unit": "MILLIMETERS"
      }
    },
    {
      "interval": {
        "startTime": "2025-02-14T15:00:00Z",
        "endTime": "2025-02-15T15:00:00Z"
      },
      "displayDate": {
        "year": 2025,
        "month": 2,
        "day": 14
      },
      /.../
    },
    {
      "interval": {
        "startTime": "2025-02-15T15:00:00Z",
        "endTime": "2025-02-16T15:00:00Z"
      },
      "displayDate": {
        "year": 2025,
        "month": 2,
        "day": 15
      },
      /.../
    }
  ],
  "timeZone": {
    "id": "America/Los_Angeles"
  }
}

Hãy dùng thử!

APIs Explorer cho phép bạn tạo các yêu cầu mẫu để bạn có thể làm quen với API và các tuỳ chọn API.

  1. Chọn biểu tượng API api ở bên phải trang.

  2. Chỉnh sửa các tham số yêu cầu (không bắt buộc).

  3. Chọn nút Execute (Thực thi). Trong hộp thoại, hãy chọn tài khoản mà bạn muốn dùng để gửi yêu cầu.

  4. Trong bảng điều khiển APIs Explorer, hãy chọn biểu tượng toàn màn hình fullscreen để mở rộng cửa sổ APIs Explorer.