Method: forecast.days.lookup

從當天起算,傳回指定地點最多 10 天的每日預報。

HTTP 要求

GET https://weather.googleapis.com/v1/forecast/days:lookup

這個網址使用 gRPC 轉碼語法。

查詢參數

參數
location

object (LatLng)

必要欄位。取得每日天氣預報的位置。

unitsSystem

enum (UnitsSystem)

(選用步驟) 用於傳回天氣狀況的單位系統。如未提供,傳回的天氣狀況將採用公制單位 (預設值 = METRIC)。

pageSize

integer

(選用步驟) 每頁傳回的每日預報記錄數量上限,值介於 1 到 10 (含)。預設值為 5。

pageToken

string

(選用步驟) 先前要求傳回的頁面符記。用於擷取後續網頁。

days

integer

(選用步驟) 限制從當天起可擷取的總天數,值介於 1 到 10 (含)。預設值為允許的最大值 10。

languageCode

string

(選用步驟) 允許用戶端選擇回覆的語言。如果無法提供該語言的資料,API 會使用最接近的語言。有效值須符合 IETF BCP-47 標準。預設值為「en」。

要求主體

要求主體必須為空白。

回應主體

days.lookup RPC 的回應。

如果成功,回應主體會含有以下結構的資料:

JSON 表示法
{
  "forecastDays": [
    {
      object (ForecastDay)
    }
  ],
  "timeZone": {
    object (TimeZone)
  },
  "nextPageToken": string
}
欄位
forecastDays[]

object (ForecastDay)

每日預測記錄,視要求中指定的天數和網頁大小而定。

timeZone

object (TimeZone)

要求位置的時區。

nextPageToken

string

用於擷取下一頁的權杖。

授權範圍

需要下列 OAuth 範圍:

  • https://www.googleapis.com/auth/cloud-platform

ForecastDay

代表特定地點的每日預報記錄。

JSON 表示法
{
  "interval": {
    object (Interval)
  },
  "displayDate": {
    object (Date)
  },
  "daytimeForecast": {
    object (ForecastDayPart)
  },
  "nighttimeForecast": {
    object (ForecastDayPart)
  },
  "maxTemperature": {
    object (Temperature)
  },
  "minTemperature": {
    object (Temperature)
  },
  "feelsLikeMaxTemperature": {
    object (Temperature)
  },
  "feelsLikeMinTemperature": {
    object (Temperature)
  },
  "maxHeatIndex": {
    object (Temperature)
  },
  "sunEvents": {
    object (SunEvents)
  },
  "moonEvents": {
    object (MoonEvents)
  }
}
欄位
interval

object (Interval)

這個預測日期的開始 (含) 和結束 (不含) 世界標準時間間隔。注意:一天的開始時間為當地時間上午 7 點,結束時間為隔天上午 7 點。舉例來說,如果當地時區為 UTC-7,間隔就會從 14:00:00.000Z 開始,並在隔天同一時間結束。

displayDate

object (Date)

計算每日預報時,該地點所在時區的當地日期 (民用時間)。此欄位可能會用於在用戶端上顯示。

daytimeForecast

object (ForecastDayPart)

預測白天時段 (當地時間上午 7 點至下午 7 點) 的天氣狀況。

nighttimeForecast

object (ForecastDayPart)

預測當天夜間 (當地時間下午 7 點至次日早上 7 點) 的天氣狀況。

maxTemperature

object (Temperature)

當天的最高溫度。

minTemperature

object (Temperature)

當天的最低溫度。

feelsLikeMaxTemperature

object (Temperature)

全天最高體感溫度。

feelsLikeMinTemperature

object (Temperature)

全天最低體感溫度。

maxHeatIndex

object (Temperature)

當天最高體感溫度。

sunEvents

object (SunEvents)

與太陽相關的事件 (例如日出、日落)。

moonEvents

object (MoonEvents)

與月亮相關的事件 (例如月出、月落)。

日期

表示完整或部分的日曆日期,例如生日。您可以視重要性決定是否要在別處指定時段和時區。日期以公曆為主,這可以代表下列其中一項:

  • 完整日期,具有非零的年、月和日值。
  • 月和日,年值為零 (例如週年紀念日)。
  • 只有年,月和日值為零。
  • 年和月,日值為零 (例如信用卡到期日)。

相關類型:

JSON 表示法
{
  "year": integer,
  "month": integer,
  "day": integer
}
欄位
year

integer

日期年份。必須為 1 到 9999;如要指定不含年份的日期,請輸入 0。

month

integer

一年中的月份。必須為 1 到 12;如要指定不含日期的年份,請輸入 0。

day

integer

當月第幾日。必須為 1 到 31,並屬於有效的年和月;如果只指定年份,或只指定年份和月份,而不指定當月第幾日的話,請輸入 0。

ForecastDayPart

代表一天中某個時段的預測記錄。

JSON 表示法
{
  "interval": {
    object (Interval)
  },
  "weatherCondition": {
    object (WeatherCondition)
  },
  "precipitation": {
    object (Precipitation)
  },
  "wind": {
    object (Wind)
  },
  "iceThickness": {
    object (IceThickness)
  },
  "relativeHumidity": integer,
  "uvIndex": integer,
  "thunderstormProbability": integer,
  "cloudCover": integer
}
欄位
interval

object (Interval)

這段時間的開始 (含) 和結束 (不含) 世界標準時間日期和時間。注意:一天中的某個時段是指當地時間當天上午 7 點到下午 7 點。舉例來說,如果當地時區為 UTC-7,則白天時段會從 14:00:00.000Z 開始,並於隔天的 02:00:00.000Z 結束;夜間時段則會從隔天的 02:00:00.000Z 開始,並於當天的 14:00:00.000Z 結束。

weatherCondition

object (WeatherCondition)

天氣預報狀況。

precipitation

object (Precipitation)

預測降水量。

wind

object (Wind)

平均風向、最大風速和陣風。

iceThickness

object (IceThickness)

當天累積的結冰量。

relativeHumidity

integer

預測的相對濕度百分比 (值介於 0 到 100 之間)。

uvIndex

integer

預測的最高紫外線指數。

thunderstormProbability

integer

平均雷雨機率。

cloudCover

integer

平均雲量百分比。

SunEvents

代表與太陽相關的事件 (例如日出、日落)。

JSON 表示法
{
  "sunriseTime": string,
  "sunsetTime": string
}
欄位
sunriseTime

string (Timestamp format)

太陽升起的時間。

注意:在某些特殊情況下 (例如北極圈以北),當天可能沒有日出時間。在這些情況下,這個欄位會保持未設定狀態。

使用 RFC 3339,產生的輸出內容一律會經過 Z 標準化,並使用 0、3、6 或 9 個小數位數。系統也接受「Z」以外的偏移量。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

sunsetTime

string (Timestamp format)

太陽下山的時間。

注意:在某些特殊情況下 (例如北極圈以北),一天可能沒有日落時間。在這些情況下,這個欄位會保持未設定狀態。

使用 RFC 3339,產生的輸出內容一律會經過 Z 標準化,並使用 0、3、6 或 9 個小數位數。系統也接受「Z」以外的偏移量。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

MoonEvents

代表與月亮相關的事件 (例如月出、月落)。

JSON 表示法
{
  "moonriseTimes": [
    string
  ],
  "moonsetTimes": [
    string
  ],
  "moonPhase": enum (MoonPhase)
}
欄位
moonriseTimes[]

string (Timestamp format)

月球上肢出現在地平線上的時間 (請參閱 https://en.wikipedia.org/wiki/Moonrise_and_moonset)

注意:在大多數情況下,每天只會顯示一次月出時間。在其他情況下,清單可能會空白 (例如月亮在隔天午夜後升起)。不過,在特殊情況下 (例如極地地區),清單可能包含多個值。在這些情況下,值會以遞增順序排序。

使用 RFC 3339,產生的輸出內容一律會經過 Z 標準化,並使用 0、3、6 或 9 個小數位數。系統也接受「Z」以外的偏移量。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

moonsetTimes[]

string (Timestamp format)

月球上緣消失在地平線下的時間 (請參閱 https://en.wikipedia.org/wiki/Moonrise_and_moonset)

注意:在大多數情況下,每天只會有一段月出時間。在其他情況下,清單可能會是空白 (例如月亮在隔天午夜後落下)。不過,在特殊情況下 (例如極地地區),清單可能包含多個值。在這些情況下,值會以遞增順序排序。

使用 RFC 3339,產生的輸出內容一律會經過 Z 標準化,並使用 0、3、6 或 9 個小數位數。系統也接受「Z」以外的偏移量。例如:"2014-10-02T15:01:23Z""2014-10-02T15:01:23.045123456Z""2014-10-02T15:01:23+05:30"

moonPhase

enum (MoonPhase)

月相。

MoonPhase

標示月相。

列舉
MOON_PHASE_UNSPECIFIED 未指定月相。
NEW_MOON 月球未受到太陽照射。
WAXING_CRESCENT 在北半球,月球右側的亮面為 0% 至 50% 🌒;在南半球,月球左側的亮面為 0% 至 50% 🌘。
FIRST_QUARTER 在北半球,月球右側有 50.1% 的面積受到照亮 🌓;在南半球,月球左側有 50.1% 的面積受到照亮 🌗。
WAXING_GIBBOUS 北半球的月亮右側會亮起 50% 至 100% 的光芒 🌔,南半球的月亮左側則會亮起 50% 至 100% 的光芒 🌖。
FULL_MOON 月亮完全被照亮。
WANING_GIBBOUS 北半球的月亮左側有 50% 至 100% 的面積受到照亮 🌖,南半球的月亮右側有 50% 至 100% 的面積受到照亮 🌔。
LAST_QUARTER 北半球的月球左側有 50.1% 的面積受到照亮 🌗,南半球的月球右側有 50.1% 的面積受到照亮 🌓。
WANING_CRESCENT 北半球的月亮左側有 0% 至 50% 的部分會亮起 🌘,南半球則為右側 🌒。