Skip to content

Destination Weather API

DestinationWeatherApi (HEREApi)

A python interface into the HERE Destination Weather API

__init__(self, api_key=None, timeout=None) special

Returns a DestinationWeatherApi instance.

Parameters:

Name Type Description Default
api_key str

API key taken from HERE Developer Portal.

None
timeout int

Timeout limit for requests.

None
Source code in herepy/destination_weather_api.py
def __init__(self, api_key: str = None, timeout: int = None):
    """Returns a DestinationWeatherApi instance.
    Args:
      api_key (str):
        API key taken from HERE Developer Portal.
      timeout (int):
        Timeout limit for requests.
    """

    super(DestinationWeatherApi, self).__init__(api_key, timeout)
    self._base_url = "https://weather.cc.api.here.com/weather/1.0/report.json"

weather_for_coordinates(self, latitude, longitude, product, one_observation=True, metric=True)

Request the product for given location name.

Parameters:

Name Type Description Default
latitude float

Latitude.

required
longitude float

Longitude.

required
product WeatherProductType

A WeatherProductType identifying the type of report to obtain.

required
one_observation bool

Limit the result to the best mapped weather station.

True
metric bool

Use the metric system.

True

Returns:

Type Description
Optional[herepy.models.DestinationWeatherResponse]

DestinationWeatherResponse

Source code in herepy/destination_weather_api.py
def weather_for_coordinates(
    self,
    latitude: float,
    longitude: float,
    product: WeatherProductType,
    one_observation: bool = True,
    metric: bool = True,
) -> Optional[DestinationWeatherResponse]:
    """Request the product for given location name.
    Args:
      latitude (float):
        Latitude.
      longitude (float):
        Longitude.
      product (WeatherProductType):
        A WeatherProductType identifying the type of report to obtain.
      one_observation (bool):
        Limit the result to the best mapped weather station.
      metric (bool):
        Use the metric system.
    Returns:
      DestinationWeatherResponse
    Raises:
      HEREError
    """

    data = {
        "apiKey": self._api_key,
        "product": product.__str__(),
        "oneobservation": "true" if one_observation == True else "false",
        "metric": "true" if metric == True else "false",
        "latitude": latitude,
        "longitude": longitude,
    }
    return self._get(data, product)

weather_for_location_name(self, location_name, product, one_observation=True, metric=True)

Request the product for given location name.

Parameters:

Name Type Description Default
location_name str

Location name.

required
product WeatherProductType

A WeatherProductType identifying the type of report to obtain.

required
one_observation bool

Limit the result to the best mapped weather station.

True
metric bool

Use the metric system.

True

Returns:

Type Description
Optional[herepy.models.DestinationWeatherResponse]

DestinationWeatherResponse

Source code in herepy/destination_weather_api.py
def weather_for_location_name(
    self,
    location_name: str,
    product: WeatherProductType,
    one_observation: bool = True,
    metric: bool = True,
) -> Optional[DestinationWeatherResponse]:
    """Request the product for given location name.
    Args:
      location_name (str):
        Location name.
      product (WeatherProductType):
        A WeatherProductType identifying the type of report to obtain.
      one_observation (bool):
        Limit the result to the best mapped weather station.
      metric (bool):
        Use the metric system.
    Returns:
      DestinationWeatherResponse
    Raises:
      HEREError
    """

    data = {
        "apiKey": self._api_key,
        "product": product.__str__(),
        "oneobservation": "true" if one_observation == True else "false",
        "metric": "true" if metric == True else "false",
        "name": location_name,
    }
    return self._get(data, product)

weather_for_zip_code(self, zip_code, product, one_observation=True, metric=True)

Request the product for given location name.

Parameters:

Name Type Description Default
zip_code int

U.S. zip code.

required
product WeatherProductType

A WeatherProductType identifying the type of report to obtain.

required
one_observation bool

Limit the result to the best mapped weather station.

True
metric bool

Use the metric system.

True

Returns:

Type Description
Optional[herepy.models.DestinationWeatherResponse]

DestinationWeatherResponse

Source code in herepy/destination_weather_api.py
def weather_for_zip_code(
    self,
    zip_code: int,
    product: WeatherProductType,
    one_observation: bool = True,
    metric: bool = True,
) -> Optional[DestinationWeatherResponse]:
    """Request the product for given location name.
    Args:
      zip_code (int):
        U.S. zip code.
      product (WeatherProductType):
        A WeatherProductType identifying the type of report to obtain.
      one_observation (bool):
        Limit the result to the best mapped weather station.
      metric (bool):
        Use the metric system.
    Returns:
      DestinationWeatherResponse
    Raises:
      HEREError
    """

    data = {
        "apiKey": self._api_key,
        "product": product.__str__(),
        "oneobservation": "true" if one_observation == True else "false",
        "metric": "true" if metric == True else "false",
        "zipcode": zip_code,
    }
    return self._get(data, product)