forecast.days エンドポイントは、特定の位置の予報情報を現在の日から最大 10 日間返します。API は次の値を返します。
- 日中(午前 7 時~午後 7 時)と夜間(午後 7 時~午前 7 時)の天気の説明と、対応するアイコン
- 1 日の最高気温と最低気温
- 1 日の最高体感温度と最低体感温度
- 暑さ指数
- 相対湿度
- UV 指数
- 降水確率、降水量の割合、降水量、降水の種類
- 雷雨の確率
- 海面気圧
- 風冷指数
- 風の向き、風速、突風
- 氷の厚さ
- 視程と雲量
- 毎日の日の出、日の入り、月の出、月の入りの時刻
API Explorer を使用すると、ライブ リクエストを行って、API と API オプションを理解できます。
1 日の予測リクエストについて
現在の状況をリクエストするには、次の URL に HTTP GET リクエストを送信します。
https://weather.googleapis.com/v1/forecast/days:lookup?key=YOUR_API_KEY&location.latitude=LATITUDE&location.longitude=LONGITUDE
リクエスト URL のパラメータに、位置情報の緯度と経度の座標を含めます。
毎日の天気予報リクエストの例
デフォルトでは、forecast.days エンドポイントは、現在の時間から始まる 10 日間のデータを返します。days
パラメータを使用すると、リクエストの範囲を特定の日数に設定できます。
次の例では、カリフォルニア州マウンテン ビューの今後 2 日間の毎日の天気予報情報をリクエストしています。
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"
レスポンスの interval
オブジェクトは、各日の情報を示します。
{ "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" } }
1 ページあたりで返す日数を指定する
pageSize
URL パラメータを使用して、ページごとに返すデータの日数を指定できます。デフォルト値は、1 ページあたり 5 日間の天気予報情報です。
複数のページの情報を含むレスポンスには nextPageToken
が含まれます。次のページの情報を見るには、リクエストの pageToken
パラメータに nextPageToken
の値を渡します。
次の例では、カリフォルニア州マウンテンビューの 6 日間の天気予報データをリクエストし、1 ページあたり 3 日間のデータを取得します。
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"
最初の 3 日間のデータを含むレスポンスは、次の形式になります。
{ "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=" }
次のページのデータにアクセスするには、リクエストの pageToken
パラメータに nextPageToken
値を渡します。
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="
レスポンスの形式は次のとおりです。
{ "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" } }
試してみよう:
API Explorer を使用すると、サンプル リクエストを作成して、API と API オプションを理解できます。
ページの右側にある API アイコン api を選択します。
必要に応じてリクエスト パラメータを編集します。
[Execute] ボタンを選択します。ダイアログで、リクエストに使用するアカウントを選択します。
API Explorer パネルで、全画面アイコン fullscreen を選択して API Explorer ウィンドウを拡大します。