Cómo obtener el pronóstico diario

El extremo forecast.days devuelve hasta 10 días de información de previsión para una ubicación específica, comenzando con el día actual. La API devuelve lo siguiente:

  • Una descripción de las condiciones climáticas diurnas (de 7 a.m. a 7 p.m.) y nocturnas (de 7 p.m. a 7 a.m.) con los íconos correspondientes
  • Temperaturas máximas y mínimas diarias
  • Temperaturas aparentes máximas y mínimas diarias ("sensación térmica")
  • Índice de calor
  • Humedad relativa
  • Índice UV
  • Probabilidad, porcentaje, cantidad y tipo de precipitación
  • Probabilidad de tormentas eléctricas
  • Presión a nivel del mar
  • Sensación térmica
  • Dirección, velocidad y ráfagas del viento
  • Grosor del hielo
  • Visibilidad y cobertura de nubes
  • Hora del amanecer, de la puesta de sol, de la salida de la Luna y de la puesta de la Luna

El Explorador de APIs te permite realizar solicitudes en vivo para que puedas familiarizarte con la API y sus opciones:

Acerca de las solicitudes de pronóstico diario

Para solicitar las condiciones actuales, envía una solicitud HTTP GET a la siguiente URL:

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

Incluye las coordenadas de latitud y longitud de la ubicación en los parámetros de la URL de la solicitud.

Ejemplos de solicitudes de pronóstico diario

De forma predeterminada, el extremo forecast.days devuelve datos de 10 días a partir de la hora actual. Puedes definir el alcance de tu solicitud para una cantidad específica de días con el parámetro days.

En el siguiente ejemplo, se solicita información del pronóstico diario para los próximos dos días en Mountain View, California:

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"

En la respuesta, el objeto interval indica cada día de información:

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

Especifica la cantidad de días que se mostrarán por página

Puedes especificar la cantidad de días de datos que se mostrarán por página con el parámetro de URL pageSize. El valor predeterminado es de cinco días de información del pronóstico por página.

Las respuestas con varias páginas de información incluyen un nextPageToken. Para ver la página siguiente de información, pasa el valor de nextPageToken al parámetro pageToken en tu solicitud.

En el siguiente ejemplo, se solicitan datos del pronóstico del clima de seis días para Mountain View, California, con tres días de datos por página:

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"

La respuesta, que incluye los primeros 3 días de datos, tiene el siguiente formato:

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

Para acceder a la siguiente página de datos, pasa el valor de nextPageToken al parámetro pageToken en tu solicitud:

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="

La respuesta tiene el siguiente formato:

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

Pruébalo

El Explorador de APIs te permite realizar solicitudes de ejemplo para que te familiarices con la API y sus opciones.

  1. Selecciona el ícono de la API api en el lado derecho de la página.

  2. De manera opcional, edita los parámetros de la solicitud.

  3. Selecciona el botón Ejecutar. En el diálogo, elige la cuenta que deseas usar para hacer la solicitud.

  4. En el panel del Explorador de APIs, selecciona el ícono de pantalla completa fullscreen para expandir la ventana del Explorador de APIs.