home-assistant / core

:house_with_garden: Open source home automation that puts local control and privacy first.
https://www.home-assistant.io
Apache License 2.0
74.04k stars 31.07k forks source link

weatherflow_cloud - failed to setup #112030

Closed bacco007 closed 9 months ago

bacco007 commented 9 months ago

The problem

I've tried to add the weatherflow_cloud integration, supplied a valid API key, for it to error out.

What version of Home Assistant Core has the issue?

core-2024.3.0b3

What was the last working version of Home Assistant Core?

No response

What type of installation are you running?

Home Assistant OS

Integration causing the issue

weatherflow_cloud

Link to integration documentation on our website

https://rc.home-assistant.io/integrations/weatherflow_cloud/

Diagnostics information

N/A

Example YAML snippet

N/A Setup from UI

Anything in the logs that might be useful for us?

2024-03-02 18:06:18.463 ERROR (MainThread) [homeassistant.components.weatherflow_cloud] Unexpected error fetching weatherflow_cloud data: 'is_precip_local_yesterday_rain_check'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 318, in _async_refresh
    self.data = await self._async_update_data()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/weatherflow_cloud/coordinator.py", line 35, in _async_update_data
    return await self.weather_api.get_all_data()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/weatherflow4py/api.py", line 99, in get_all_data
    weather=await self.async_get_forecast(station_id=station.station_id),
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/weatherflow4py/api.py", line 82, in async_get_forecast
    return await self._make_request(
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/weatherflow4py/api.py", line 40, in _make_request
    response_model.from_json(data)
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/api.py", line 63, in from_json
    return cls.from_dict(kvs, infer_missing=infer_missing)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/api.py", line 70, in from_dict
    return _decode_dataclass(cls, kvs, infer_missing)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/core.py", line 216, in _decode_dataclass
    value = _decode_dataclass(field_type, field_value,
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/core.py", line 172, in _decode_dataclass
    field_value = kvs[field.name]
                  ~~~^^^^^^^^^^^^
KeyError: 'is_precip_local_yesterday_rain_check'

Additional information

No response

home-assistant[bot] commented 9 months ago

Hey there @jeeftor, mind taking a look at this issue as it has been labeled with an integration (weatherflow_cloud) you are listed as a code owner for? Thanks!

Code owner commands Code owners of `weatherflow_cloud` can trigger bot actions by commenting: - `@home-assistant close` Closes the issue. - `@home-assistant rename Awesome new title` Renames the issue. - `@home-assistant reopen` Reopen the issue. - `@home-assistant unassign weatherflow_cloud` Removes the current integration label and assignees on the issue, add the integration domain after the command. - `@home-assistant add-label needs-more-information` Add a label (needs-more-information, problem in dependency, problem in custom component) to the issue. - `@home-assistant remove-label needs-more-information` Remove a label (needs-more-information, problem in dependency, problem in custom component) on the issue.

(message by CodeOwnersMention)


weatherflow_cloud documentation weatherflow_cloud source (message by IssueLinks)

jeeftor commented 9 months ago

Let's see what's going on! :)

Which weatherflow module do you have?

Do you have one of the older ones that does obs_sky and obs_air or the new one that does obs_st?

jeeftor commented 9 months ago

Most interesting -> this worked great last week (famous last words)..

I just got precip_minutes_local_day missing error today

(different field from what you had)

jeeftor commented 9 months ago

I think I can drop an infer_missing into the backing lib to fix this... will check

jeeftor commented 9 months ago

Problem solved! (PR Coming soon)

jeeftor commented 9 months ago

Not sure how I missed that one 🤦️

jeeftor commented 9 months ago

If you want to test this bump the lib to 0.1.12 in the manifest in your dev branch

jeeftor commented 9 months ago

Fix was merged in

balloob commented 9 months ago

Thanks @jeeftor 🐬

bacco007 commented 9 months ago

Upgraded to 2024.3.0b5 and still getting the same error

Logger: homeassistant.components.weatherflow_cloud
Source: helpers/update_coordinator.py:318
integration: WeatherflowCloud (documentation, issues)
First occurred: 09:20:05 (1 occurrences)
Last logged: 09:20:05

Unexpected error fetching weatherflow_cloud data: 'is_precip_local_yesterday_rain_check'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 318, in _async_refresh
    self.data = await self._async_update_data()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/weatherflow_cloud/coordinator.py", line 35, in _async_update_data
    return await self.weather_api.get_all_data()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/weatherflow4py/api.py", line 137, in get_all_data
    weather=await self.async_get_forecast(station_id=station.station_id),
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/weatherflow4py/api.py", line 85, in async_get_forecast
    return await self._make_request(
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/weatherflow4py/api.py", line 44, in _make_request
    response_model.from_json(data)
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/api.py", line 63, in from_json
    return cls.from_dict(kvs, infer_missing=infer_missing)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/api.py", line 70, in from_dict
    return _decode_dataclass(cls, kvs, infer_missing)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/core.py", line 216, in _decode_dataclass
    value = _decode_dataclass(field_type, field_value,
            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/core.py", line 172, in _decode_dataclass
    field_value = kvs[field.name]
                  ~~~^^^^^^^^^^^^
KeyError: 'is_precip_local_yesterday_rain_check'
jeeftor commented 9 months ago

Do you have the old obs air/sky version?

jeeftor commented 9 months ago

It def works with the newer versions.

bacco007 commented 9 months ago

No, Tempest

I have nearcast rain turned off though

jeeftor commented 9 months ago

Any chance you can pull the better forecast API in point yourself show me the data?

I have done testing on my local unit and works good. I'll push a debug version tomorrow which will print the data

bacco007 commented 9 months ago

Yep - how do I do that?

jeeftor commented 9 months ago

https://weatherflow.github.io/Tempest/api/swagger/#!/forecast/getBetterForecast

We have like 2 days to fix this -> and I have a few ideas but I'm wondering if there is a mismatch int he forecast data.

jeeftor commented 9 months ago

    async def get_all_data(self) -> dict[int, WeatherFlowData]:
        """
        Builds a full data set of stations and forecasts.

        Raises:
            ClientResponseError: If there is a client response error during data retrieval.
        """
        ret: dict[int, WeatherFlowData] = {}
        station_response = await self.async_get_stations()
        for station in station_response.stations:
            device_id = station.outdoor_devices[0].device_id

            ret[station.station_id] = WeatherFlowData(
                weather=await self.async_get_forecast(station_id=station.station_id),
                observation=await self.async_get_observation(
                    station_id=station.station_id
                ),
                station=station,
                device_observations=await self.async_get_device_observations(
                    device_id=device_id
                ),
            )

        return ret

I'm running this in the backing lib and using it in the coordinator. REALLY all we need is

async_get_stations()
await self.async_get_forecast(station_id=station.station_id),

So if any of the other data is bad - mismatch it will throw an error.

I'll eventually need the other - data but in prep for adding sensors I put it in ...

I can simplify the calls

So locally all my code works but there are some variations on the tempest devices... so ... I think I can pull stuff out and we can make just the forecast pass if needed

jeeftor commented 9 months ago

When I pull the dev branch and build:

image

Maybe I need to pull the beta branch?

jeeftor commented 9 months ago

I just tried 2024.3.0b5 and I have a clean startup. (Are you on discord?) - I'd be happy to connect there and if you can get me your data we can look at the difference (or you can post the output of the various endpoints here)

bacco007 commented 9 months ago

https://weatherflow.github.io/Tempest/api/swagger/#!/forecast/getBetterForecast

{
  "current_conditions": {
    "air_density": 1.1,
    "air_temperature": 30,
    "brightness": 34701,
    "conditions": "Clear",
    "delta_t": 9,
    "dew_point": 17,
    "feels_like": 31,
    "icon": "clear-day",
    "is_precip_local_day_rain_check": false,
    "lightning_strike_count_last_1hr": 0,
    "lightning_strike_count_last_3hr": 0,
    "lightning_strike_last_distance": 20,
    "lightning_strike_last_distance_msg": "18 - 22 km",
    "lightning_strike_last_epoch": 1709466751,
    "precip_accum_local_day": 0,
    "precip_accum_local_yesterday": 0,
    "precip_minutes_local_day": 0,
    "precip_minutes_local_yesterday": 0,
    "pressure_trend": "steady",
    "relative_humidity": 45,
    "sea_level_pressure": 1017.1,
    "solar_radiation": 289,
    "station_pressure": 962.8,
    "time": 1709534050,
    "uv": 4,
    "wet_bulb_globe_temperature": 26,
    "wet_bulb_temperature": 22,
    "wind_avg": 1,
    "wind_direction": 38,
    "wind_direction_cardinal": "NE",
    "wind_gust": 2
  },
  "forecast": {
    "daily": [
      {
        "air_temp_high": 31,
        "air_temp_low": 14,
        "conditions": "Clear",
        "day_num": 4,
        "day_start_local": 1709470800,
        "icon": "clear-day",
        "month_num": 3,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "sunrise": 1709495324,
        "sunset": 1709540794
      },
      {
        "air_temp_high": 30,
        "air_temp_low": 16,
        "conditions": "Clear",
        "day_num": 5,
        "day_start_local": 1709557200,
        "icon": "clear-day",
        "month_num": 3,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "sunrise": 1709581767,
        "sunset": 1709627124
      },
      {
        "air_temp_high": 30,
        "air_temp_low": 16,
        "conditions": "Partly Cloudy",
        "day_num": 6,
        "day_start_local": 1709643600,
        "icon": "partly-cloudy-day",
        "month_num": 3,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "sunrise": 1709668211,
        "sunset": 1709713453
      },
      {
        "air_temp_high": 31,
        "air_temp_low": 17,
        "conditions": "Partly Cloudy",
        "day_num": 7,
        "day_start_local": 1709730000,
        "icon": "partly-cloudy-day",
        "month_num": 3,
        "precip_icon": "chance-rain",
        "precip_probability": 10,
        "precip_type": "rain",
        "sunrise": 1709754653,
        "sunset": 1709799781
      },
      {
        "air_temp_high": 31,
        "air_temp_low": 16,
        "conditions": "Partly Cloudy",
        "day_num": 8,
        "day_start_local": 1709816400,
        "icon": "partly-cloudy-day",
        "month_num": 3,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "sunrise": 1709841096,
        "sunset": 1709886109
      },
      {
        "air_temp_high": 31,
        "air_temp_low": 16,
        "conditions": "Clear",
        "day_num": 9,
        "day_start_local": 1709902800,
        "icon": "clear-day",
        "month_num": 3,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "sunrise": 1709927538,
        "sunset": 1709972437
      },
      {
        "air_temp_high": 31,
        "air_temp_low": 15,
        "conditions": "Clear",
        "day_num": 10,
        "day_start_local": 1709989200,
        "icon": "clear-day",
        "month_num": 3,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "sunrise": 1710013980,
        "sunset": 1710058764
      },
      {
        "air_temp_high": 32,
        "air_temp_low": 16,
        "conditions": "Partly Cloudy",
        "day_num": 11,
        "day_start_local": 1710075600,
        "icon": "partly-cloudy-day",
        "month_num": 3,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "sunrise": 1710100421,
        "sunset": 1710145091
      },
      {
        "air_temp_high": 32,
        "air_temp_low": 17,
        "conditions": "Partly Cloudy",
        "day_num": 12,
        "day_start_local": 1710162000,
        "icon": "partly-cloudy-day",
        "month_num": 3,
        "precip_icon": "chance-rain",
        "precip_probability": 10,
        "precip_type": "rain",
        "sunrise": 1710186863,
        "sunset": 1710231418
      },
      {
        "air_temp_high": 32,
        "air_temp_low": 18,
        "conditions": "Partly Cloudy",
        "day_num": 13,
        "day_start_local": 1710248400,
        "icon": "partly-cloudy-day",
        "month_num": 3,
        "precip_icon": "chance-rain",
        "precip_probability": 10,
        "precip_type": "rain",
        "sunrise": 1710273304,
        "sunset": 1710317744
      }
    ],
    "hourly": [
      {
        "air_temperature": 29,
        "conditions": "Clear",
        "feels_like": 29,
        "icon": "clear-day",
        "local_day": 4,
        "local_hour": 18,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 42,
        "sea_level_pressure": 1016.1,
        "time": 1709535600,
        "uv": 1,
        "wind_avg": 6,
        "wind_direction": 113,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 10
      },
      {
        "air_temperature": 25,
        "conditions": "Clear",
        "feels_like": 25,
        "icon": "clear-day",
        "local_day": 4,
        "local_hour": 19,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 53,
        "sea_level_pressure": 1017.2,
        "time": 1709539200,
        "uv": 0,
        "wind_avg": 7,
        "wind_direction": 118,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 11
      },
      {
        "air_temperature": 22,
        "conditions": "Clear",
        "feels_like": 22,
        "icon": "clear-night",
        "local_day": 4,
        "local_hour": 20,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 62,
        "sea_level_pressure": 1018.4,
        "time": 1709542800,
        "uv": 0,
        "wind_avg": 7,
        "wind_direction": 121,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 12
      },
      {
        "air_temperature": 21,
        "conditions": "Clear",
        "feels_like": 21,
        "icon": "clear-night",
        "local_day": 4,
        "local_hour": 21,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 64,
        "sea_level_pressure": 1019.5,
        "time": 1709546400,
        "uv": 0,
        "wind_avg": 6,
        "wind_direction": 119,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 12
      },
      {
        "air_temperature": 20,
        "conditions": "Clear",
        "feels_like": 20,
        "icon": "clear-night",
        "local_day": 4,
        "local_hour": 22,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 68,
        "sea_level_pressure": 1020.3,
        "time": 1709550000,
        "uv": 0,
        "wind_avg": 6,
        "wind_direction": 112,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 10
      },
      {
        "air_temperature": 20,
        "conditions": "Clear",
        "feels_like": 20,
        "icon": "clear-night",
        "local_day": 4,
        "local_hour": 23,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 68,
        "sea_level_pressure": 1020.9,
        "time": 1709553600,
        "uv": 0,
        "wind_avg": 5,
        "wind_direction": 110,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 10
      },
      {
        "air_temperature": 20,
        "conditions": "Clear",
        "feels_like": 20,
        "icon": "clear-night",
        "local_day": 5,
        "local_hour": 0,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 68,
        "sea_level_pressure": 1020.9,
        "time": 1709557200,
        "uv": 0,
        "wind_avg": 5,
        "wind_direction": 111,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 10
      },
      {
        "air_temperature": 19,
        "conditions": "Clear",
        "feels_like": 19,
        "icon": "clear-night",
        "local_day": 5,
        "local_hour": 1,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 68,
        "sea_level_pressure": 1020.6,
        "time": 1709560800,
        "uv": 0,
        "wind_avg": 5,
        "wind_direction": 113,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 9
      },
      {
        "air_temperature": 19,
        "conditions": "Clear",
        "feels_like": 19,
        "icon": "clear-night",
        "local_day": 5,
        "local_hour": 2,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 68,
        "sea_level_pressure": 1020.3,
        "time": 1709564400,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 111,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 5
      },
      {
        "air_temperature": 18,
        "conditions": "Clear",
        "feels_like": 18,
        "icon": "clear-night",
        "local_day": 5,
        "local_hour": 3,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 77,
        "sea_level_pressure": 1020.2,
        "time": 1709568000,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 115,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 17,
        "conditions": "Clear",
        "feels_like": 17,
        "icon": "clear-night",
        "local_day": 5,
        "local_hour": 4,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1020.2,
        "time": 1709571600,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 122,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 17,
        "conditions": "Clear",
        "feels_like": 17,
        "icon": "clear-night",
        "local_day": 5,
        "local_hour": 5,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1020.1,
        "time": 1709575200,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 127,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 16,
        "conditions": "Clear",
        "feels_like": 16,
        "icon": "clear-night",
        "local_day": 5,
        "local_hour": 6,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1020.5,
        "time": 1709578800,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 131,
        "wind_direction_cardinal": "SE",
        "wind_gust": 3
      },
      {
        "air_temperature": 16,
        "conditions": "Clear",
        "feels_like": 16,
        "icon": "clear-day",
        "local_day": 5,
        "local_hour": 7,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1021,
        "time": 1709582400,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 130,
        "wind_direction_cardinal": "SE",
        "wind_gust": 3
      },
      {
        "air_temperature": 19,
        "conditions": "Clear",
        "feels_like": 19,
        "icon": "clear-day",
        "local_day": 5,
        "local_hour": 8,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 78,
        "sea_level_pressure": 1021.5,
        "time": 1709586000,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 116,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 21,
        "conditions": "Clear",
        "feels_like": 21,
        "icon": "clear-day",
        "local_day": 5,
        "local_hour": 9,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 69,
        "sea_level_pressure": 1021.6,
        "time": 1709589600,
        "uv": 2,
        "wind_avg": 3,
        "wind_direction": 93,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 24,
        "conditions": "Partly Cloudy",
        "feels_like": 24,
        "icon": "partly-cloudy-day",
        "local_day": 5,
        "local_hour": 10,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 57,
        "sea_level_pressure": 1021.6,
        "time": 1709593200,
        "uv": 4,
        "wind_avg": 2,
        "wind_direction": 90,
        "wind_direction_cardinal": "E",
        "wind_gust": 2
      },
      {
        "air_temperature": 26,
        "conditions": "Partly Cloudy",
        "feels_like": 26,
        "icon": "partly-cloudy-day",
        "local_day": 5,
        "local_hour": 11,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 51,
        "sea_level_pressure": 1021.2,
        "time": 1709596800,
        "uv": 7,
        "wind_avg": 2,
        "wind_direction": 109,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 2
      },
      {
        "air_temperature": 27,
        "conditions": "Partly Cloudy",
        "feels_like": 27,
        "icon": "partly-cloudy-day",
        "local_day": 5,
        "local_hour": 12,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 48,
        "sea_level_pressure": 1020.4,
        "time": 1709600400,
        "uv": 10,
        "wind_avg": 2,
        "wind_direction": 249,
        "wind_direction_cardinal": "WSW",
        "wind_gust": 2
      },
      {
        "air_temperature": 28,
        "conditions": "Partly Cloudy",
        "feels_like": 28,
        "icon": "partly-cloudy-day",
        "local_day": 5,
        "local_hour": 13,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 45,
        "sea_level_pressure": 1019.6,
        "time": 1709604000,
        "uv": 11,
        "wind_avg": 3,
        "wind_direction": 245,
        "wind_direction_cardinal": "WSW",
        "wind_gust": 3
      },
      {
        "air_temperature": 29,
        "conditions": "Clear",
        "feels_like": 29,
        "icon": "clear-day",
        "local_day": 5,
        "local_hour": 14,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 43,
        "sea_level_pressure": 1018.8,
        "time": 1709607600,
        "uv": 10,
        "wind_avg": 3,
        "wind_direction": 235,
        "wind_direction_cardinal": "SW",
        "wind_gust": 3
      },
      {
        "air_temperature": 29,
        "conditions": "Partly Cloudy",
        "feels_like": 29,
        "icon": "partly-cloudy-day",
        "local_day": 5,
        "local_hour": 15,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 40,
        "sea_level_pressure": 1018,
        "time": 1709611200,
        "uv": 8,
        "wind_avg": 3,
        "wind_direction": 222,
        "wind_direction_cardinal": "SW",
        "wind_gust": 3
      },
      {
        "air_temperature": 30,
        "conditions": "Clear",
        "feels_like": 30,
        "icon": "clear-day",
        "local_day": 5,
        "local_hour": 16,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 38,
        "sea_level_pressure": 1017.4,
        "time": 1709614800,
        "uv": 5,
        "wind_avg": 3,
        "wind_direction": 205,
        "wind_direction_cardinal": "SSW",
        "wind_gust": 3
      },
      {
        "air_temperature": 29,
        "conditions": "Partly Cloudy",
        "feels_like": 29,
        "icon": "partly-cloudy-day",
        "local_day": 5,
        "local_hour": 17,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 40,
        "sea_level_pressure": 1017.1,
        "time": 1709618400,
        "uv": 3,
        "wind_avg": 3,
        "wind_direction": 193,
        "wind_direction_cardinal": "SSW",
        "wind_gust": 3
      },
      {
        "air_temperature": 29,
        "conditions": "Clear",
        "feels_like": 29,
        "icon": "clear-day",
        "local_day": 5,
        "local_hour": 18,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 40,
        "sea_level_pressure": 1017.1,
        "time": 1709622000,
        "uv": 1,
        "wind_avg": 3,
        "wind_direction": 181,
        "wind_direction_cardinal": "S",
        "wind_gust": 3
      },
      {
        "air_temperature": 27,
        "conditions": "Clear",
        "feels_like": 27,
        "icon": "clear-day",
        "local_day": 5,
        "local_hour": 19,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 45,
        "sea_level_pressure": 1017.4,
        "time": 1709625600,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 161,
        "wind_direction_cardinal": "SSE",
        "wind_gust": 3
      },
      {
        "air_temperature": 24,
        "conditions": "Clear",
        "feels_like": 24,
        "icon": "clear-night",
        "local_day": 5,
        "local_hour": 20,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 54,
        "sea_level_pressure": 1017.8,
        "time": 1709629200,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 157,
        "wind_direction_cardinal": "SSE",
        "wind_gust": 3
      },
      {
        "air_temperature": 23,
        "conditions": "Clear",
        "feels_like": 23,
        "icon": "clear-night",
        "local_day": 5,
        "local_hour": 21,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 61,
        "sea_level_pressure": 1018.6,
        "time": 1709632800,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 122,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 5
      },
      {
        "air_temperature": 21,
        "conditions": "Clear",
        "feels_like": 21,
        "icon": "clear-night",
        "local_day": 5,
        "local_hour": 22,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 69,
        "sea_level_pressure": 1019.4,
        "time": 1709636400,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 98,
        "wind_direction_cardinal": "E",
        "wind_gust": 5
      },
      {
        "air_temperature": 21,
        "conditions": "Clear",
        "feels_like": 21,
        "icon": "clear-night",
        "local_day": 5,
        "local_hour": 23,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 69,
        "sea_level_pressure": 1019.8,
        "time": 1709640000,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 97,
        "wind_direction_cardinal": "E",
        "wind_gust": 5
      },
      {
        "air_temperature": 20,
        "conditions": "Clear",
        "feels_like": 20,
        "icon": "clear-night",
        "local_day": 6,
        "local_hour": 0,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 73,
        "sea_level_pressure": 1019.8,
        "time": 1709643600,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 99,
        "wind_direction_cardinal": "E",
        "wind_gust": 5
      },
      {
        "air_temperature": 19,
        "conditions": "Clear",
        "feels_like": 19,
        "icon": "clear-night",
        "local_day": 6,
        "local_hour": 1,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 78,
        "sea_level_pressure": 1019.6,
        "time": 1709647200,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 107,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 18,
        "conditions": "Clear",
        "feels_like": 18,
        "icon": "clear-night",
        "local_day": 6,
        "local_hour": 2,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1019.5,
        "time": 1709650800,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 101,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 18,
        "conditions": "Clear",
        "feels_like": 18,
        "icon": "clear-night",
        "local_day": 6,
        "local_hour": 3,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1019.4,
        "time": 1709654400,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 104,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 17,
        "conditions": "Clear",
        "feels_like": 17,
        "icon": "clear-night",
        "local_day": 6,
        "local_hour": 4,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1019.4,
        "time": 1709658000,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 111,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 2
      },
      {
        "air_temperature": 16,
        "conditions": "Clear",
        "feels_like": 16,
        "icon": "clear-night",
        "local_day": 6,
        "local_hour": 5,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1019.5,
        "time": 1709661600,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 121,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 2
      },
      {
        "air_temperature": 16,
        "conditions": "Clear",
        "feels_like": 16,
        "icon": "clear-night",
        "local_day": 6,
        "local_hour": 6,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1020,
        "time": 1709665200,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 135,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 16,
        "conditions": "Partly Cloudy",
        "feels_like": 16,
        "icon": "partly-cloudy-day",
        "local_day": 6,
        "local_hour": 7,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 94,
        "sea_level_pressure": 1020.7,
        "time": 1709668800,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 134,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 19,
        "conditions": "Partly Cloudy",
        "feels_like": 19,
        "icon": "partly-cloudy-day",
        "local_day": 6,
        "local_hour": 8,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1021.3,
        "time": 1709672400,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 133,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 22,
        "conditions": "Partly Cloudy",
        "feels_like": 22,
        "icon": "partly-cloudy-day",
        "local_day": 6,
        "local_hour": 9,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 69,
        "sea_level_pressure": 1021.5,
        "time": 1709676000,
        "uv": 2,
        "wind_avg": 2,
        "wind_direction": 121,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 2
      },
      {
        "air_temperature": 24,
        "conditions": "Partly Cloudy",
        "feels_like": 24,
        "icon": "partly-cloudy-day",
        "local_day": 6,
        "local_hour": 10,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 61,
        "sea_level_pressure": 1021.4,
        "time": 1709679600,
        "uv": 4,
        "wind_avg": 2,
        "wind_direction": 246,
        "wind_direction_cardinal": "WSW",
        "wind_gust": 2
      },
      {
        "air_temperature": 26,
        "conditions": "Partly Cloudy",
        "feels_like": 26,
        "icon": "partly-cloudy-day",
        "local_day": 6,
        "local_hour": 11,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 54,
        "sea_level_pressure": 1020.9,
        "time": 1709683200,
        "uv": 7,
        "wind_avg": 2,
        "wind_direction": 254,
        "wind_direction_cardinal": "WSW",
        "wind_gust": 2
      },
      {
        "air_temperature": 27,
        "conditions": "Partly Cloudy",
        "feels_like": 28,
        "icon": "partly-cloudy-day",
        "local_day": 6,
        "local_hour": 12,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 51,
        "sea_level_pressure": 1020.1,
        "time": 1709686800,
        "uv": 10,
        "wind_avg": 3,
        "wind_direction": 244,
        "wind_direction_cardinal": "WSW",
        "wind_gust": 3
      },
      {
        "air_temperature": 29,
        "conditions": "Partly Cloudy",
        "feels_like": 29,
        "icon": "partly-cloudy-day",
        "local_day": 6,
        "local_hour": 13,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 45,
        "sea_level_pressure": 1019.2,
        "time": 1709690400,
        "uv": 11,
        "wind_avg": 3,
        "wind_direction": 242,
        "wind_direction_cardinal": "WSW",
        "wind_gust": 3
      },
      {
        "air_temperature": 29,
        "conditions": "Partly Cloudy",
        "feels_like": 29,
        "icon": "partly-cloudy-day",
        "local_day": 6,
        "local_hour": 14,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 43,
        "sea_level_pressure": 1018.4,
        "time": 1709694000,
        "uv": 10,
        "wind_avg": 3,
        "wind_direction": 230,
        "wind_direction_cardinal": "SW",
        "wind_gust": 3
      },
      {
        "air_temperature": 30,
        "conditions": "Partly Cloudy",
        "feels_like": 30,
        "icon": "partly-cloudy-day",
        "local_day": 6,
        "local_hour": 15,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 40,
        "sea_level_pressure": 1017.6,
        "time": 1709697600,
        "uv": 8,
        "wind_avg": 3,
        "wind_direction": 220,
        "wind_direction_cardinal": "SW",
        "wind_gust": 3
      },
      {
        "air_temperature": 30,
        "conditions": "Partly Cloudy",
        "feels_like": 30,
        "icon": "partly-cloudy-day",
        "local_day": 6,
        "local_hour": 16,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 38,
        "sea_level_pressure": 1016.9,
        "time": 1709701200,
        "uv": 5,
        "wind_avg": 3,
        "wind_direction": 206,
        "wind_direction_cardinal": "SSW",
        "wind_gust": 3
      },
      {
        "air_temperature": 30,
        "conditions": "Partly Cloudy",
        "feels_like": 30,
        "icon": "partly-cloudy-day",
        "local_day": 6,
        "local_hour": 17,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 38,
        "sea_level_pressure": 1016.5,
        "time": 1709704800,
        "uv": 2,
        "wind_avg": 3,
        "wind_direction": 181,
        "wind_direction_cardinal": "S",
        "wind_gust": 3
      },
      {
        "air_temperature": 29,
        "conditions": "Partly Cloudy",
        "feels_like": 29,
        "icon": "partly-cloudy-day",
        "local_day": 6,
        "local_hour": 18,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 40,
        "sea_level_pressure": 1016.6,
        "time": 1709708400,
        "uv": 1,
        "wind_avg": 2,
        "wind_direction": 168,
        "wind_direction_cardinal": "SSE",
        "wind_gust": 2
      },
      {
        "air_temperature": 28,
        "conditions": "Partly Cloudy",
        "feels_like": 28,
        "icon": "partly-cloudy-day",
        "local_day": 6,
        "local_hour": 19,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 42,
        "sea_level_pressure": 1017.1,
        "time": 1709712000,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 155,
        "wind_direction_cardinal": "SSE",
        "wind_gust": 2
      },
      {
        "air_temperature": 25,
        "conditions": "Partly Cloudy",
        "feels_like": 25,
        "icon": "partly-cloudy-night",
        "local_day": 6,
        "local_hour": 20,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 54,
        "sea_level_pressure": 1017.5,
        "time": 1709715600,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 186,
        "wind_direction_cardinal": "S",
        "wind_gust": 2
      },
      {
        "air_temperature": 24,
        "conditions": "Partly Cloudy",
        "feels_like": 24,
        "icon": "partly-cloudy-night",
        "local_day": 6,
        "local_hour": 21,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 57,
        "sea_level_pressure": 1018.2,
        "time": 1709719200,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 129,
        "wind_direction_cardinal": "SE",
        "wind_gust": 3
      },
      {
        "air_temperature": 23,
        "conditions": "Partly Cloudy",
        "feels_like": 23,
        "icon": "partly-cloudy-night",
        "local_day": 6,
        "local_hour": 22,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 61,
        "sea_level_pressure": 1018.9,
        "time": 1709722800,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 96,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 22,
        "conditions": "Partly Cloudy",
        "feels_like": 22,
        "icon": "partly-cloudy-night",
        "local_day": 6,
        "local_hour": 23,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 65,
        "sea_level_pressure": 1019.2,
        "time": 1709726400,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 102,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 21,
        "conditions": "Partly Cloudy",
        "feels_like": 21,
        "icon": "partly-cloudy-night",
        "local_day": 7,
        "local_hour": 0,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 69,
        "sea_level_pressure": 1019.3,
        "time": 1709730000,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 105,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 21,
        "conditions": "Partly Cloudy",
        "feels_like": 21,
        "icon": "partly-cloudy-night",
        "local_day": 7,
        "local_hour": 1,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 69,
        "sea_level_pressure": 1019.1,
        "time": 1709733600,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 107,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 20,
        "conditions": "Partly Cloudy",
        "feels_like": 20,
        "icon": "partly-cloudy-night",
        "local_day": 7,
        "local_hour": 2,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 73,
        "sea_level_pressure": 1018.9,
        "time": 1709737200,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 110,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 2
      },
      {
        "air_temperature": 19,
        "conditions": "Partly Cloudy",
        "feels_like": 19,
        "icon": "partly-cloudy-night",
        "local_day": 7,
        "local_hour": 3,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 78,
        "sea_level_pressure": 1018.7,
        "time": 1709740800,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 111,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 2
      },
      {
        "air_temperature": 18,
        "conditions": "Partly Cloudy",
        "feels_like": 18,
        "icon": "partly-cloudy-night",
        "local_day": 7,
        "local_hour": 4,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1018.6,
        "time": 1709744400,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 117,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 2
      },
      {
        "air_temperature": 17,
        "conditions": "Partly Cloudy",
        "feels_like": 17,
        "icon": "partly-cloudy-night",
        "local_day": 7,
        "local_hour": 5,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1018.6,
        "time": 1709748000,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 121,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 2
      },
      {
        "air_temperature": 17,
        "conditions": "Partly Cloudy",
        "feels_like": 17,
        "icon": "partly-cloudy-night",
        "local_day": 7,
        "local_hour": 6,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1019.1,
        "time": 1709751600,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 135,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 17,
        "conditions": "Partly Cloudy",
        "feels_like": 17,
        "icon": "partly-cloudy-day",
        "local_day": 7,
        "local_hour": 7,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1019.9,
        "time": 1709755200,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 139,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 20,
        "conditions": "Partly Cloudy",
        "feels_like": 20,
        "icon": "partly-cloudy-day",
        "local_day": 7,
        "local_hour": 8,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 78,
        "sea_level_pressure": 1020.6,
        "time": 1709758800,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 136,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 23,
        "conditions": "Partly Cloudy",
        "feels_like": 23,
        "icon": "partly-cloudy-day",
        "local_day": 7,
        "local_hour": 9,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 65,
        "sea_level_pressure": 1020.9,
        "time": 1709762400,
        "uv": 2,
        "wind_avg": 2,
        "wind_direction": 124,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 25,
        "conditions": "Partly Cloudy",
        "feels_like": 25,
        "icon": "partly-cloudy-day",
        "local_day": 7,
        "local_hour": 10,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 57,
        "sea_level_pressure": 1020.9,
        "time": 1709766000,
        "uv": 4,
        "wind_avg": 2,
        "wind_direction": 274,
        "wind_direction_cardinal": "W",
        "wind_gust": 2
      },
      {
        "air_temperature": 27,
        "conditions": "Partly Cloudy",
        "feels_like": 28,
        "icon": "partly-cloudy-day",
        "local_day": 7,
        "local_hour": 11,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 51,
        "sea_level_pressure": 1020.7,
        "time": 1709769600,
        "uv": 7,
        "wind_avg": 2,
        "wind_direction": 247,
        "wind_direction_cardinal": "WSW",
        "wind_gust": 2
      },
      {
        "air_temperature": 29,
        "conditions": "Partly Cloudy",
        "feels_like": 29,
        "icon": "partly-cloudy-day",
        "local_day": 7,
        "local_hour": 12,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 45,
        "sea_level_pressure": 1020,
        "time": 1709773200,
        "uv": 10,
        "wind_avg": 3,
        "wind_direction": 231,
        "wind_direction_cardinal": "SW",
        "wind_gust": 3
      },
      {
        "air_temperature": 30,
        "conditions": "Partly Cloudy",
        "feels_like": 30,
        "icon": "partly-cloudy-day",
        "local_day": 7,
        "local_hour": 13,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 43,
        "sea_level_pressure": 1019.2,
        "time": 1709776800,
        "uv": 10,
        "wind_avg": 3,
        "wind_direction": 216,
        "wind_direction_cardinal": "SW",
        "wind_gust": 3
      },
      {
        "air_temperature": 31,
        "conditions": "Partly Cloudy",
        "feels_like": 31,
        "icon": "partly-cloudy-day",
        "local_day": 7,
        "local_hour": 14,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 40,
        "sea_level_pressure": 1018.4,
        "time": 1709780400,
        "uv": 9,
        "wind_avg": 4,
        "wind_direction": 203,
        "wind_direction_cardinal": "SSW",
        "wind_gust": 5
      },
      {
        "air_temperature": 31,
        "conditions": "Partly Cloudy",
        "feels_like": 31,
        "icon": "partly-cloudy-day",
        "local_day": 7,
        "local_hour": 15,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 38,
        "sea_level_pressure": 1017.8,
        "time": 1709784000,
        "uv": 7,
        "wind_avg": 4,
        "wind_direction": 175,
        "wind_direction_cardinal": "S",
        "wind_gust": 7
      },
      {
        "air_temperature": 30,
        "conditions": "Partly Cloudy",
        "feels_like": 30,
        "icon": "partly-cloudy-day",
        "local_day": 7,
        "local_hour": 16,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 5,
        "precip_type": "rain",
        "relative_humidity": 40,
        "sea_level_pressure": 1017.4,
        "time": 1709787600,
        "uv": 4,
        "wind_avg": 4,
        "wind_direction": 151,
        "wind_direction_cardinal": "SSE",
        "wind_gust": 8
      },
      {
        "air_temperature": 29,
        "conditions": "Partly Cloudy",
        "feels_like": 29,
        "icon": "partly-cloudy-day",
        "local_day": 7,
        "local_hour": 17,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 10,
        "precip_type": "rain",
        "relative_humidity": 40,
        "sea_level_pressure": 1017.5,
        "time": 1709791200,
        "uv": 2,
        "wind_avg": 4,
        "wind_direction": 130,
        "wind_direction_cardinal": "SE",
        "wind_gust": 8
      },
      {
        "air_temperature": 29,
        "conditions": "Partly Cloudy",
        "feels_like": 29,
        "icon": "partly-cloudy-day",
        "local_day": 7,
        "local_hour": 18,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 43,
        "sea_level_pressure": 1017.9,
        "time": 1709794800,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 122,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 8
      },
      {
        "air_temperature": 27,
        "conditions": "Partly Cloudy",
        "feels_like": 27,
        "icon": "partly-cloudy-day",
        "local_day": 7,
        "local_hour": 19,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 48,
        "sea_level_pressure": 1018.5,
        "time": 1709798400,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 126,
        "wind_direction_cardinal": "SE",
        "wind_gust": 8
      },
      {
        "air_temperature": 25,
        "conditions": "Partly Cloudy",
        "feels_like": 25,
        "icon": "partly-cloudy-night",
        "local_day": 7,
        "local_hour": 20,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 54,
        "sea_level_pressure": 1019.1,
        "time": 1709802000,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 132,
        "wind_direction_cardinal": "SE",
        "wind_gust": 8
      },
      {
        "air_temperature": 24,
        "conditions": "Partly Cloudy",
        "feels_like": 24,
        "icon": "partly-cloudy-night",
        "local_day": 7,
        "local_hour": 21,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 61,
        "sea_level_pressure": 1019.8,
        "time": 1709805600,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 127,
        "wind_direction_cardinal": "SE",
        "wind_gust": 5
      },
      {
        "air_temperature": 22,
        "conditions": "Partly Cloudy",
        "feels_like": 22,
        "icon": "partly-cloudy-night",
        "local_day": 7,
        "local_hour": 22,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 65,
        "sea_level_pressure": 1020.5,
        "time": 1709809200,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 120,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 22,
        "conditions": "Partly Cloudy",
        "feels_like": 22,
        "icon": "partly-cloudy-night",
        "local_day": 7,
        "local_hour": 23,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 69,
        "sea_level_pressure": 1020.9,
        "time": 1709812800,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 115,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 5
      },
      {
        "air_temperature": 21,
        "conditions": "Partly Cloudy",
        "feels_like": 21,
        "icon": "partly-cloudy-night",
        "local_day": 8,
        "local_hour": 0,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 73,
        "sea_level_pressure": 1021,
        "time": 1709816400,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 117,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 5
      },
      {
        "air_temperature": 20,
        "conditions": "Partly Cloudy",
        "feels_like": 20,
        "icon": "partly-cloudy-night",
        "local_day": 8,
        "local_hour": 1,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 78,
        "sea_level_pressure": 1020.8,
        "time": 1709820000,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 117,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 5
      },
      {
        "air_temperature": 19,
        "conditions": "Partly Cloudy",
        "feels_like": 19,
        "icon": "partly-cloudy-night",
        "local_day": 8,
        "local_hour": 2,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 78,
        "sea_level_pressure": 1020.6,
        "time": 1709823600,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 118,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 18,
        "conditions": "Partly Cloudy",
        "feels_like": 18,
        "icon": "partly-cloudy-night",
        "local_day": 8,
        "local_hour": 3,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1020.6,
        "time": 1709827200,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 122,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 17,
        "conditions": "Partly Cloudy",
        "feels_like": 17,
        "icon": "partly-cloudy-night",
        "local_day": 8,
        "local_hour": 4,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1020.5,
        "time": 1709830800,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 126,
        "wind_direction_cardinal": "SE",
        "wind_gust": 3
      },
      {
        "air_temperature": 17,
        "conditions": "Partly Cloudy",
        "feels_like": 17,
        "icon": "partly-cloudy-night",
        "local_day": 8,
        "local_hour": 5,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1020.6,
        "time": 1709834400,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 128,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 16,
        "conditions": "Partly Cloudy",
        "feels_like": 16,
        "icon": "partly-cloudy-night",
        "local_day": 8,
        "local_hour": 6,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1021.1,
        "time": 1709838000,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 135,
        "wind_direction_cardinal": "SE",
        "wind_gust": 3
      },
      {
        "air_temperature": 16,
        "conditions": "Partly Cloudy",
        "feels_like": 16,
        "icon": "partly-cloudy-day",
        "local_day": 8,
        "local_hour": 7,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 94,
        "sea_level_pressure": 1021.9,
        "time": 1709841600,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 134,
        "wind_direction_cardinal": "SE",
        "wind_gust": 3
      },
      {
        "air_temperature": 19,
        "conditions": "Partly Cloudy",
        "feels_like": 19,
        "icon": "partly-cloudy-day",
        "local_day": 8,
        "local_hour": 8,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 78,
        "sea_level_pressure": 1022.5,
        "time": 1709845200,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 128,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 22,
        "conditions": "Partly Cloudy",
        "feels_like": 22,
        "icon": "partly-cloudy-day",
        "local_day": 8,
        "local_hour": 9,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 65,
        "sea_level_pressure": 1022.7,
        "time": 1709848800,
        "uv": 2,
        "wind_avg": 3,
        "wind_direction": 98,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 24,
        "conditions": "Partly Cloudy",
        "feels_like": 24,
        "icon": "partly-cloudy-day",
        "local_day": 8,
        "local_hour": 10,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 57,
        "sea_level_pressure": 1022.6,
        "time": 1709852400,
        "uv": 4,
        "wind_avg": 3,
        "wind_direction": 87,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 27,
        "conditions": "Partly Cloudy",
        "feels_like": 27,
        "icon": "partly-cloudy-day",
        "local_day": 8,
        "local_hour": 11,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 48,
        "sea_level_pressure": 1022.1,
        "time": 1709856000,
        "uv": 7,
        "wind_avg": 3,
        "wind_direction": 89,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 28,
        "conditions": "Partly Cloudy",
        "feels_like": 28,
        "icon": "partly-cloudy-day",
        "local_day": 8,
        "local_hour": 12,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 42,
        "sea_level_pressure": 1021.2,
        "time": 1709859600,
        "uv": 9,
        "wind_avg": 3,
        "wind_direction": 97,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 30,
        "conditions": "Partly Cloudy",
        "feels_like": 30,
        "icon": "partly-cloudy-day",
        "local_day": 8,
        "local_hour": 13,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 35,
        "sea_level_pressure": 1020.2,
        "time": 1709863200,
        "uv": 11,
        "wind_avg": 3,
        "wind_direction": 103,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 31,
        "conditions": "Partly Cloudy",
        "feels_like": 31,
        "icon": "partly-cloudy-day",
        "local_day": 8,
        "local_hour": 14,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 31,
        "sea_level_pressure": 1019.3,
        "time": 1709866800,
        "uv": 10,
        "wind_avg": 4,
        "wind_direction": 128,
        "wind_direction_cardinal": "SE",
        "wind_gust": 8
      },
      {
        "air_temperature": 31,
        "conditions": "Partly Cloudy",
        "feels_like": 31,
        "icon": "partly-cloudy-day",
        "local_day": 8,
        "local_hour": 15,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 31,
        "sea_level_pressure": 1018.4,
        "time": 1709870400,
        "uv": 8,
        "wind_avg": 4,
        "wind_direction": 123,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 8
      },
      {
        "air_temperature": 31,
        "conditions": "Partly Cloudy",
        "feels_like": 31,
        "icon": "partly-cloudy-day",
        "local_day": 8,
        "local_hour": 16,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 31,
        "sea_level_pressure": 1017.8,
        "time": 1709874000,
        "uv": 5,
        "wind_avg": 4,
        "wind_direction": 122,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 8
      },
      {
        "air_temperature": 30,
        "conditions": "Partly Cloudy",
        "feels_like": 30,
        "icon": "partly-cloudy-day",
        "local_day": 8,
        "local_hour": 17,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 35,
        "sea_level_pressure": 1017.7,
        "time": 1709877600,
        "uv": 2,
        "wind_avg": 5,
        "wind_direction": 101,
        "wind_direction_cardinal": "E",
        "wind_gust": 8
      },
      {
        "air_temperature": 29,
        "conditions": "Partly Cloudy",
        "feels_like": 29,
        "icon": "partly-cloudy-day",
        "local_day": 8,
        "local_hour": 18,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 37,
        "sea_level_pressure": 1018.1,
        "time": 1709881200,
        "uv": 1,
        "wind_avg": 5,
        "wind_direction": 100,
        "wind_direction_cardinal": "E",
        "wind_gust": 8
      },
      {
        "air_temperature": 27,
        "conditions": "Partly Cloudy",
        "feels_like": 27,
        "icon": "partly-cloudy-day",
        "local_day": 8,
        "local_hour": 19,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 42,
        "sea_level_pressure": 1018.7,
        "time": 1709884800,
        "uv": 0,
        "wind_avg": 5,
        "wind_direction": 102,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 9
      },
      {
        "air_temperature": 25,
        "conditions": "Clear",
        "feels_like": 25,
        "icon": "clear-night",
        "local_day": 8,
        "local_hour": 20,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 50,
        "sea_level_pressure": 1019.4,
        "time": 1709888400,
        "uv": 0,
        "wind_avg": 5,
        "wind_direction": 104,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 9
      },
      {
        "air_temperature": 23,
        "conditions": "Clear",
        "feels_like": 23,
        "icon": "clear-night",
        "local_day": 8,
        "local_hour": 21,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 57,
        "sea_level_pressure": 1020.1,
        "time": 1709892000,
        "uv": 0,
        "wind_avg": 5,
        "wind_direction": 103,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 9
      },
      {
        "air_temperature": 22,
        "conditions": "Clear",
        "feels_like": 22,
        "icon": "clear-night",
        "local_day": 8,
        "local_hour": 22,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 60,
        "sea_level_pressure": 1020.8,
        "time": 1709895600,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 101,
        "wind_direction_cardinal": "E",
        "wind_gust": 8
      },
      {
        "air_temperature": 21,
        "conditions": "Clear",
        "feels_like": 21,
        "icon": "clear-night",
        "local_day": 8,
        "local_hour": 23,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 69,
        "sea_level_pressure": 1021.2,
        "time": 1709899200,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 105,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 8
      },
      {
        "air_temperature": 20,
        "conditions": "Clear",
        "feels_like": 20,
        "icon": "clear-night",
        "local_day": 9,
        "local_hour": 0,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 73,
        "sea_level_pressure": 1021.2,
        "time": 1709902800,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 109,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 7
      },
      {
        "air_temperature": 19,
        "conditions": "Clear",
        "feels_like": 19,
        "icon": "clear-night",
        "local_day": 9,
        "local_hour": 1,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 73,
        "sea_level_pressure": 1021,
        "time": 1709906400,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 113,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 5
      },
      {
        "air_temperature": 18,
        "conditions": "Clear",
        "feels_like": 18,
        "icon": "clear-night",
        "local_day": 9,
        "local_hour": 2,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 77,
        "sea_level_pressure": 1020.8,
        "time": 1709910000,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 113,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 18,
        "conditions": "Clear",
        "feels_like": 18,
        "icon": "clear-night",
        "local_day": 9,
        "local_hour": 3,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 77,
        "sea_level_pressure": 1020.8,
        "time": 1709913600,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 116,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 17,
        "conditions": "Clear",
        "feels_like": 17,
        "icon": "clear-night",
        "local_day": 9,
        "local_hour": 4,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1020.8,
        "time": 1709917200,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 124,
        "wind_direction_cardinal": "SE",
        "wind_gust": 3
      },
      {
        "air_temperature": 16,
        "conditions": "Clear",
        "feels_like": 16,
        "icon": "clear-night",
        "local_day": 9,
        "local_hour": 5,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1020.8,
        "time": 1709920800,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 127,
        "wind_direction_cardinal": "SE",
        "wind_gust": 3
      },
      {
        "air_temperature": 16,
        "conditions": "Clear",
        "feels_like": 16,
        "icon": "clear-night",
        "local_day": 9,
        "local_hour": 6,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 82,
        "sea_level_pressure": 1021.2,
        "time": 1709924400,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 137,
        "wind_direction_cardinal": "SE",
        "wind_gust": 3
      },
      {
        "air_temperature": 16,
        "conditions": "Clear",
        "feels_like": 16,
        "icon": "clear-day",
        "local_day": 9,
        "local_hour": 7,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1022,
        "time": 1709928000,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 138,
        "wind_direction_cardinal": "SE",
        "wind_gust": 3
      },
      {
        "air_temperature": 19,
        "conditions": "Clear",
        "feels_like": 19,
        "icon": "clear-day",
        "local_day": 9,
        "local_hour": 8,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 78,
        "sea_level_pressure": 1022.6,
        "time": 1709931600,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 128,
        "wind_direction_cardinal": "SE",
        "wind_gust": 3
      },
      {
        "air_temperature": 22,
        "conditions": "Clear",
        "feels_like": 22,
        "icon": "clear-day",
        "local_day": 9,
        "local_hour": 9,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 65,
        "sea_level_pressure": 1022.7,
        "time": 1709935200,
        "uv": 2,
        "wind_avg": 3,
        "wind_direction": 103,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 24,
        "conditions": "Clear",
        "feels_like": 24,
        "icon": "clear-day",
        "local_day": 9,
        "local_hour": 10,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 54,
        "sea_level_pressure": 1022.6,
        "time": 1709938800,
        "uv": 4,
        "wind_avg": 3,
        "wind_direction": 93,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 27,
        "conditions": "Clear",
        "feels_like": 27,
        "icon": "clear-day",
        "local_day": 9,
        "local_hour": 11,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 45,
        "sea_level_pressure": 1022.1,
        "time": 1709942400,
        "uv": 7,
        "wind_avg": 3,
        "wind_direction": 92,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 28,
        "conditions": "Clear",
        "feels_like": 28,
        "icon": "clear-day",
        "local_day": 9,
        "local_hour": 12,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 40,
        "sea_level_pressure": 1021.4,
        "time": 1709946000,
        "uv": 9,
        "wind_avg": 4,
        "wind_direction": 96,
        "wind_direction_cardinal": "E",
        "wind_gust": 8
      },
      {
        "air_temperature": 30,
        "conditions": "Clear",
        "feels_like": 30,
        "icon": "clear-day",
        "local_day": 9,
        "local_hour": 13,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 35,
        "sea_level_pressure": 1020.4,
        "time": 1709949600,
        "uv": 10,
        "wind_avg": 4,
        "wind_direction": 94,
        "wind_direction_cardinal": "E",
        "wind_gust": 8
      },
      {
        "air_temperature": 30,
        "conditions": "Partly Cloudy",
        "feels_like": 30,
        "icon": "partly-cloudy-day",
        "local_day": 9,
        "local_hour": 14,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 35,
        "sea_level_pressure": 1019.5,
        "time": 1709953200,
        "uv": 10,
        "wind_avg": 5,
        "wind_direction": 106,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 8
      },
      {
        "air_temperature": 31,
        "conditions": "Partly Cloudy",
        "feels_like": 31,
        "icon": "partly-cloudy-day",
        "local_day": 9,
        "local_hour": 15,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 31,
        "sea_level_pressure": 1018.7,
        "time": 1709956800,
        "uv": 8,
        "wind_avg": 5,
        "wind_direction": 103,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 8
      },
      {
        "air_temperature": 30,
        "conditions": "Partly Cloudy",
        "feels_like": 30,
        "icon": "partly-cloudy-day",
        "local_day": 9,
        "local_hour": 16,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 33,
        "sea_level_pressure": 1018,
        "time": 1709960400,
        "uv": 5,
        "wind_avg": 5,
        "wind_direction": 104,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 8
      },
      {
        "air_temperature": 29,
        "conditions": "Partly Cloudy",
        "feels_like": 29,
        "icon": "partly-cloudy-day",
        "local_day": 9,
        "local_hour": 17,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 37,
        "sea_level_pressure": 1017.9,
        "time": 1709964000,
        "uv": 2,
        "wind_avg": 5,
        "wind_direction": 87,
        "wind_direction_cardinal": "E",
        "wind_gust": 8
      },
      {
        "air_temperature": 28,
        "conditions": "Partly Cloudy",
        "feels_like": 28,
        "icon": "partly-cloudy-day",
        "local_day": 9,
        "local_hour": 18,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 40,
        "sea_level_pressure": 1018.4,
        "time": 1709967600,
        "uv": 1,
        "wind_avg": 5,
        "wind_direction": 87,
        "wind_direction_cardinal": "E",
        "wind_gust": 9
      },
      {
        "air_temperature": 27,
        "conditions": "Partly Cloudy",
        "feels_like": 27,
        "icon": "partly-cloudy-day",
        "local_day": 9,
        "local_hour": 19,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 45,
        "sea_level_pressure": 1019.2,
        "time": 1709971200,
        "uv": 0,
        "wind_avg": 5,
        "wind_direction": 93,
        "wind_direction_cardinal": "E",
        "wind_gust": 10
      },
      {
        "air_temperature": 24,
        "conditions": "Clear",
        "feels_like": 24,
        "icon": "clear-night",
        "local_day": 9,
        "local_hour": 20,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 54,
        "sea_level_pressure": 1020,
        "time": 1709974800,
        "uv": 0,
        "wind_avg": 5,
        "wind_direction": 95,
        "wind_direction_cardinal": "E",
        "wind_gust": 9
      },
      {
        "air_temperature": 23,
        "conditions": "Clear",
        "feels_like": 23,
        "icon": "clear-night",
        "local_day": 9,
        "local_hour": 21,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 57,
        "sea_level_pressure": 1020.7,
        "time": 1709978400,
        "uv": 0,
        "wind_avg": 5,
        "wind_direction": 95,
        "wind_direction_cardinal": "E",
        "wind_gust": 9
      },
      {
        "air_temperature": 21,
        "conditions": "Clear",
        "feels_like": 21,
        "icon": "clear-night",
        "local_day": 9,
        "local_hour": 22,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 64,
        "sea_level_pressure": 1021.4,
        "time": 1709982000,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 96,
        "wind_direction_cardinal": "E",
        "wind_gust": 8
      },
      {
        "air_temperature": 20,
        "conditions": "Clear",
        "feels_like": 20,
        "icon": "clear-night",
        "local_day": 9,
        "local_hour": 23,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 73,
        "sea_level_pressure": 1021.8,
        "time": 1709985600,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 102,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 8
      },
      {
        "air_temperature": 19,
        "conditions": "Clear",
        "feels_like": 19,
        "icon": "clear-night",
        "local_day": 10,
        "local_hour": 0,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 78,
        "sea_level_pressure": 1021.9,
        "time": 1709989200,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 107,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 5
      },
      {
        "air_temperature": 18,
        "conditions": "Clear",
        "feels_like": 18,
        "icon": "clear-night",
        "local_day": 10,
        "local_hour": 1,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1021.8,
        "time": 1709992800,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 110,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 5
      },
      {
        "air_temperature": 18,
        "conditions": "Clear",
        "feels_like": 18,
        "icon": "clear-night",
        "local_day": 10,
        "local_hour": 2,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1021.6,
        "time": 1709996400,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 110,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 17,
        "conditions": "Clear",
        "feels_like": 17,
        "icon": "clear-night",
        "local_day": 10,
        "local_hour": 3,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1021.4,
        "time": 1710000000,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 113,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 16,
        "conditions": "Clear",
        "feels_like": 16,
        "icon": "clear-night",
        "local_day": 10,
        "local_hour": 4,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1021.2,
        "time": 1710003600,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 123,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 16,
        "conditions": "Clear",
        "feels_like": 16,
        "icon": "clear-night",
        "local_day": 10,
        "local_hour": 5,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1021.1,
        "time": 1710007200,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 129,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 15,
        "conditions": "Clear",
        "feels_like": 15,
        "icon": "clear-night",
        "local_day": 10,
        "local_hour": 6,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 94,
        "sea_level_pressure": 1021.3,
        "time": 1710010800,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 138,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 16,
        "conditions": "Clear",
        "feels_like": 16,
        "icon": "clear-day",
        "local_day": 10,
        "local_hour": 7,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1021.8,
        "time": 1710014400,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 141,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 18,
        "conditions": "Clear",
        "feels_like": 18,
        "icon": "clear-day",
        "local_day": 10,
        "local_hour": 8,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1022.3,
        "time": 1710018000,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 127,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 21,
        "conditions": "Clear",
        "feels_like": 21,
        "icon": "clear-day",
        "local_day": 10,
        "local_hour": 9,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 69,
        "sea_level_pressure": 1022.4,
        "time": 1710021600,
        "uv": 2,
        "wind_avg": 2,
        "wind_direction": 96,
        "wind_direction_cardinal": "E",
        "wind_gust": 2
      },
      {
        "air_temperature": 24,
        "conditions": "Clear",
        "feels_like": 24,
        "icon": "clear-day",
        "local_day": 10,
        "local_hour": 10,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 57,
        "sea_level_pressure": 1022.4,
        "time": 1710025200,
        "uv": 4,
        "wind_avg": 2,
        "wind_direction": 70,
        "wind_direction_cardinal": "ENE",
        "wind_gust": 2
      },
      {
        "air_temperature": 26,
        "conditions": "Clear",
        "feels_like": 26,
        "icon": "clear-day",
        "local_day": 10,
        "local_hour": 11,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 51,
        "sea_level_pressure": 1022.1,
        "time": 1710028800,
        "uv": 7,
        "wind_avg": 2,
        "wind_direction": 59,
        "wind_direction_cardinal": "ENE",
        "wind_gust": 2
      },
      {
        "air_temperature": 28,
        "conditions": "Clear",
        "feels_like": 28,
        "icon": "clear-day",
        "local_day": 10,
        "local_hour": 12,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 45,
        "sea_level_pressure": 1021.4,
        "time": 1710032400,
        "uv": 9,
        "wind_avg": 2,
        "wind_direction": 40,
        "wind_direction_cardinal": "NE",
        "wind_gust": 2
      },
      {
        "air_temperature": 29,
        "conditions": "Clear",
        "feels_like": 29,
        "icon": "clear-day",
        "local_day": 10,
        "local_hour": 13,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 40,
        "sea_level_pressure": 1020.5,
        "time": 1710036000,
        "uv": 10,
        "wind_avg": 2,
        "wind_direction": 262,
        "wind_direction_cardinal": "W",
        "wind_gust": 2
      },
      {
        "air_temperature": 30,
        "conditions": "Clear",
        "feels_like": 30,
        "icon": "clear-day",
        "local_day": 10,
        "local_hour": 14,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 38,
        "sea_level_pressure": 1019.6,
        "time": 1710039600,
        "uv": 10,
        "wind_avg": 3,
        "wind_direction": 225,
        "wind_direction_cardinal": "SW",
        "wind_gust": 3
      },
      {
        "air_temperature": 31,
        "conditions": "Clear",
        "feels_like": 31,
        "icon": "clear-day",
        "local_day": 10,
        "local_hour": 15,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 33,
        "sea_level_pressure": 1018.7,
        "time": 1710043200,
        "uv": 8,
        "wind_avg": 3,
        "wind_direction": 195,
        "wind_direction_cardinal": "SSW",
        "wind_gust": 3
      },
      {
        "air_temperature": 31,
        "conditions": "Clear",
        "feels_like": 31,
        "icon": "clear-day",
        "local_day": 10,
        "local_hour": 16,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 33,
        "sea_level_pressure": 1017.9,
        "time": 1710046800,
        "uv": 5,
        "wind_avg": 3,
        "wind_direction": 155,
        "wind_direction_cardinal": "SSE",
        "wind_gust": 3
      },
      {
        "air_temperature": 31,
        "conditions": "Clear",
        "feels_like": 31,
        "icon": "clear-day",
        "local_day": 10,
        "local_hour": 17,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 33,
        "sea_level_pressure": 1017.6,
        "time": 1710050400,
        "uv": 2,
        "wind_avg": 3,
        "wind_direction": 102,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 29,
        "conditions": "Clear",
        "feels_like": 29,
        "icon": "clear-day",
        "local_day": 10,
        "local_hour": 18,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 37,
        "sea_level_pressure": 1017.9,
        "time": 1710054000,
        "uv": 1,
        "wind_avg": 3,
        "wind_direction": 105,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 28,
        "conditions": "Clear",
        "feels_like": 28,
        "icon": "clear-day",
        "local_day": 10,
        "local_hour": 19,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 40,
        "sea_level_pressure": 1018.5,
        "time": 1710057600,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 122,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 25,
        "conditions": "Clear",
        "feels_like": 25,
        "icon": "clear-night",
        "local_day": 10,
        "local_hour": 20,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 50,
        "sea_level_pressure": 1019.2,
        "time": 1710061200,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 130,
        "wind_direction_cardinal": "SE",
        "wind_gust": 3
      },
      {
        "air_temperature": 24,
        "conditions": "Clear",
        "feels_like": 24,
        "icon": "clear-night",
        "local_day": 10,
        "local_hour": 21,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 57,
        "sea_level_pressure": 1020,
        "time": 1710064800,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 109,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 22,
        "conditions": "Clear",
        "feels_like": 22,
        "icon": "clear-night",
        "local_day": 10,
        "local_hour": 22,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 65,
        "sea_level_pressure": 1020.7,
        "time": 1710068400,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 102,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 21,
        "conditions": "Partly Cloudy",
        "feels_like": 21,
        "icon": "partly-cloudy-night",
        "local_day": 10,
        "local_hour": 23,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 69,
        "sea_level_pressure": 1021.1,
        "time": 1710072000,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 102,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 5
      },
      {
        "air_temperature": 20,
        "conditions": "Clear",
        "feels_like": 20,
        "icon": "clear-night",
        "local_day": 11,
        "local_hour": 0,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 73,
        "sea_level_pressure": 1021.6,
        "time": 1710075600,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 104,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 5
      },
      {
        "air_temperature": 19,
        "conditions": "Clear",
        "feels_like": 19,
        "icon": "clear-night",
        "local_day": 11,
        "local_hour": 1,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 78,
        "sea_level_pressure": 1021.5,
        "time": 1710079200,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 107,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 5
      },
      {
        "air_temperature": 18,
        "conditions": "Clear",
        "feels_like": 18,
        "icon": "clear-night",
        "local_day": 11,
        "local_hour": 2,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1021.4,
        "time": 1710082800,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 102,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 18,
        "conditions": "Clear",
        "feels_like": 18,
        "icon": "clear-night",
        "local_day": 11,
        "local_hour": 3,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1021.2,
        "time": 1710086400,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 106,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 17,
        "conditions": "Clear",
        "feels_like": 17,
        "icon": "clear-night",
        "local_day": 11,
        "local_hour": 4,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1021.2,
        "time": 1710090000,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 111,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 16,
        "conditions": "Clear",
        "feels_like": 16,
        "icon": "clear-night",
        "local_day": 11,
        "local_hour": 5,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 94,
        "sea_level_pressure": 1021.1,
        "time": 1710093600,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 115,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 2
      },
      {
        "air_temperature": 16,
        "conditions": "Clear",
        "feels_like": 16,
        "icon": "clear-night",
        "local_day": 11,
        "local_hour": 6,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 94,
        "sea_level_pressure": 1021.4,
        "time": 1710097200,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 125,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 17,
        "conditions": "Clear",
        "feels_like": 17,
        "icon": "clear-day",
        "local_day": 11,
        "local_hour": 7,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1021.9,
        "time": 1710100800,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 131,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 19,
        "conditions": "Partly Cloudy",
        "feels_like": 19,
        "icon": "partly-cloudy-day",
        "local_day": 11,
        "local_hour": 8,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 78,
        "sea_level_pressure": 1022.3,
        "time": 1710104400,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 122,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 2
      },
      {
        "air_temperature": 22,
        "conditions": "Partly Cloudy",
        "feels_like": 22,
        "icon": "partly-cloudy-day",
        "local_day": 11,
        "local_hour": 9,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 65,
        "sea_level_pressure": 1022.4,
        "time": 1710108000,
        "uv": 2,
        "wind_avg": 2,
        "wind_direction": 88,
        "wind_direction_cardinal": "E",
        "wind_gust": 2
      },
      {
        "air_temperature": 25,
        "conditions": "Partly Cloudy",
        "feels_like": 25,
        "icon": "partly-cloudy-day",
        "local_day": 11,
        "local_hour": 10,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 54,
        "sea_level_pressure": 1022.2,
        "time": 1710111600,
        "uv": 4,
        "wind_avg": 2,
        "wind_direction": 59,
        "wind_direction_cardinal": "ENE",
        "wind_gust": 2
      },
      {
        "air_temperature": 27,
        "conditions": "Partly Cloudy",
        "feels_like": 27,
        "icon": "partly-cloudy-day",
        "local_day": 11,
        "local_hour": 11,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 48,
        "sea_level_pressure": 1021.7,
        "time": 1710115200,
        "uv": 7,
        "wind_avg": 2,
        "wind_direction": 15,
        "wind_direction_cardinal": "NNE",
        "wind_gust": 2
      },
      {
        "air_temperature": 29,
        "conditions": "Partly Cloudy",
        "feels_like": 29,
        "icon": "partly-cloudy-day",
        "local_day": 11,
        "local_hour": 12,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 43,
        "sea_level_pressure": 1020.8,
        "time": 1710118800,
        "uv": 9,
        "wind_avg": 2,
        "wind_direction": 305,
        "wind_direction_cardinal": "NW",
        "wind_gust": 2
      },
      {
        "air_temperature": 30,
        "conditions": "Partly Cloudy",
        "feels_like": 30,
        "icon": "partly-cloudy-day",
        "local_day": 11,
        "local_hour": 13,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 38,
        "sea_level_pressure": 1019.7,
        "time": 1710122400,
        "uv": 10,
        "wind_avg": 2,
        "wind_direction": 278,
        "wind_direction_cardinal": "W",
        "wind_gust": 2
      },
      {
        "air_temperature": 31,
        "conditions": "Partly Cloudy",
        "feels_like": 31,
        "icon": "partly-cloudy-day",
        "local_day": 11,
        "local_hour": 14,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 33,
        "sea_level_pressure": 1018.6,
        "time": 1710126000,
        "uv": 10,
        "wind_avg": 3,
        "wind_direction": 248,
        "wind_direction_cardinal": "WSW",
        "wind_gust": 3
      },
      {
        "air_temperature": 32,
        "conditions": "Partly Cloudy",
        "feels_like": 32,
        "icon": "partly-cloudy-day",
        "local_day": 11,
        "local_hour": 15,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 31,
        "sea_level_pressure": 1017.6,
        "time": 1710129600,
        "uv": 7,
        "wind_avg": 3,
        "wind_direction": 206,
        "wind_direction_cardinal": "SSW",
        "wind_gust": 3
      },
      {
        "air_temperature": 32,
        "conditions": "Partly Cloudy",
        "feels_like": 32,
        "icon": "partly-cloudy-day",
        "local_day": 11,
        "local_hour": 16,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 29,
        "sea_level_pressure": 1016.7,
        "time": 1710133200,
        "uv": 5,
        "wind_avg": 3,
        "wind_direction": 161,
        "wind_direction_cardinal": "SSE",
        "wind_gust": 3
      },
      {
        "air_temperature": 31,
        "conditions": "Partly Cloudy",
        "feels_like": 31,
        "icon": "partly-cloudy-day",
        "local_day": 11,
        "local_hour": 17,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 33,
        "sea_level_pressure": 1016.4,
        "time": 1710136800,
        "uv": 2,
        "wind_avg": 3,
        "wind_direction": 93,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 30,
        "conditions": "Partly Cloudy",
        "feels_like": 30,
        "icon": "partly-cloudy-day",
        "local_day": 11,
        "local_hour": 18,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 38,
        "sea_level_pressure": 1016.6,
        "time": 1710140400,
        "uv": 1,
        "wind_avg": 3,
        "wind_direction": 89,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 28,
        "conditions": "Partly Cloudy",
        "feels_like": 28,
        "icon": "partly-cloudy-day",
        "local_day": 11,
        "local_hour": 19,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 42,
        "sea_level_pressure": 1017.1,
        "time": 1710144000,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 107,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 25,
        "conditions": "Partly Cloudy",
        "feels_like": 25,
        "icon": "partly-cloudy-night",
        "local_day": 11,
        "local_hour": 20,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 50,
        "sea_level_pressure": 1017.6,
        "time": 1710147600,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 116,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 24,
        "conditions": "Partly Cloudy",
        "feels_like": 24,
        "icon": "partly-cloudy-night",
        "local_day": 11,
        "local_hour": 21,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 57,
        "sea_level_pressure": 1018.1,
        "time": 1710151200,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 100,
        "wind_direction_cardinal": "E",
        "wind_gust": 5
      },
      {
        "air_temperature": 22,
        "conditions": "Partly Cloudy",
        "feels_like": 22,
        "icon": "partly-cloudy-night",
        "local_day": 11,
        "local_hour": 22,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 65,
        "sea_level_pressure": 1018.7,
        "time": 1710154800,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 92,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 21,
        "conditions": "Partly Cloudy",
        "feels_like": 21,
        "icon": "partly-cloudy-night",
        "local_day": 11,
        "local_hour": 23,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 73,
        "sea_level_pressure": 1019,
        "time": 1710158400,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 97,
        "wind_direction_cardinal": "E",
        "wind_gust": 5
      },
      {
        "air_temperature": 20,
        "conditions": "Partly Cloudy",
        "feels_like": 20,
        "icon": "partly-cloudy-night",
        "local_day": 12,
        "local_hour": 0,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 73,
        "sea_level_pressure": 1019,
        "time": 1710162000,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 101,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 19,
        "conditions": "Partly Cloudy",
        "feels_like": 19,
        "icon": "partly-cloudy-night",
        "local_day": 12,
        "local_hour": 1,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 78,
        "sea_level_pressure": 1018.8,
        "time": 1710165600,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 105,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 5
      },
      {
        "air_temperature": 18,
        "conditions": "Partly Cloudy",
        "feels_like": 18,
        "icon": "partly-cloudy-night",
        "local_day": 12,
        "local_hour": 2,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1018.6,
        "time": 1710169200,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 98,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 18,
        "conditions": "Partly Cloudy",
        "feels_like": 18,
        "icon": "partly-cloudy-night",
        "local_day": 12,
        "local_hour": 3,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 5,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1018.4,
        "time": 1710172800,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 100,
        "wind_direction_cardinal": "E",
        "wind_gust": 3
      },
      {
        "air_temperature": 17,
        "conditions": "Partly Cloudy",
        "feels_like": 17,
        "icon": "partly-cloudy-night",
        "local_day": 12,
        "local_hour": 4,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 5,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1018.2,
        "time": 1710176400,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 104,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 2
      },
      {
        "air_temperature": 17,
        "conditions": "Partly Cloudy",
        "feels_like": 17,
        "icon": "partly-cloudy-night",
        "local_day": 12,
        "local_hour": 5,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 5,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1018.1,
        "time": 1710180000,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 110,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 2
      },
      {
        "air_temperature": 17,
        "conditions": "Partly Cloudy",
        "feels_like": 17,
        "icon": "partly-cloudy-night",
        "local_day": 12,
        "local_hour": 6,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1018.2,
        "time": 1710183600,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 126,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 17,
        "conditions": "Clear",
        "feels_like": 17,
        "icon": "clear-day",
        "local_day": 12,
        "local_hour": 7,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 88,
        "sea_level_pressure": 1018.6,
        "time": 1710187200,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 143,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 20,
        "conditions": "Clear",
        "feels_like": 20,
        "icon": "clear-day",
        "local_day": 12,
        "local_hour": 8,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 78,
        "sea_level_pressure": 1018.8,
        "time": 1710190800,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 137,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 23,
        "conditions": "Clear",
        "feels_like": 23,
        "icon": "clear-day",
        "local_day": 12,
        "local_hour": 9,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 65,
        "sea_level_pressure": 1019,
        "time": 1710194400,
        "uv": 2,
        "wind_avg": 2,
        "wind_direction": 63,
        "wind_direction_cardinal": "ENE",
        "wind_gust": 2
      },
      {
        "air_temperature": 25,
        "conditions": "Clear",
        "feels_like": 25,
        "icon": "clear-day",
        "local_day": 12,
        "local_hour": 10,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 57,
        "sea_level_pressure": 1018.9,
        "time": 1710198000,
        "uv": 4,
        "wind_avg": 2,
        "wind_direction": 327,
        "wind_direction_cardinal": "NNW",
        "wind_gust": 2
      },
      {
        "air_temperature": 28,
        "conditions": "Clear",
        "feels_like": 28,
        "icon": "clear-day",
        "local_day": 12,
        "local_hour": 11,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 45,
        "sea_level_pressure": 1018.6,
        "time": 1710201600,
        "uv": 7,
        "wind_avg": 2,
        "wind_direction": 290,
        "wind_direction_cardinal": "WNW",
        "wind_gust": 2
      },
      {
        "air_temperature": 29,
        "conditions": "Clear",
        "feels_like": 29,
        "icon": "clear-day",
        "local_day": 12,
        "local_hour": 12,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 43,
        "sea_level_pressure": 1018,
        "time": 1710205200,
        "uv": 9,
        "wind_avg": 2,
        "wind_direction": 277,
        "wind_direction_cardinal": "W",
        "wind_gust": 2
      },
      {
        "air_temperature": 31,
        "conditions": "Clear",
        "feels_like": 31,
        "icon": "clear-day",
        "local_day": 12,
        "local_hour": 13,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 36,
        "sea_level_pressure": 1016.9,
        "time": 1710208800,
        "uv": 10,
        "wind_avg": 2,
        "wind_direction": 270,
        "wind_direction_cardinal": "W",
        "wind_gust": 2
      },
      {
        "air_temperature": 32,
        "conditions": "Clear",
        "feels_like": 32,
        "icon": "clear-day",
        "local_day": 12,
        "local_hour": 14,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 34,
        "sea_level_pressure": 1015.7,
        "time": 1710212400,
        "uv": 9,
        "wind_avg": 3,
        "wind_direction": 254,
        "wind_direction_cardinal": "WSW",
        "wind_gust": 3
      },
      {
        "air_temperature": 32,
        "conditions": "Clear",
        "feels_like": 32,
        "icon": "clear-day",
        "local_day": 12,
        "local_hour": 15,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 31,
        "sea_level_pressure": 1014.5,
        "time": 1710216000,
        "uv": 7,
        "wind_avg": 3,
        "wind_direction": 243,
        "wind_direction_cardinal": "WSW",
        "wind_gust": 3
      },
      {
        "air_temperature": 32,
        "conditions": "Clear",
        "feels_like": 32,
        "icon": "clear-day",
        "local_day": 12,
        "local_hour": 16,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 29,
        "sea_level_pressure": 1013.5,
        "time": 1710219600,
        "uv": 5,
        "wind_avg": 3,
        "wind_direction": 224,
        "wind_direction_cardinal": "SW",
        "wind_gust": 3
      },
      {
        "air_temperature": 32,
        "conditions": "Partly Cloudy",
        "feels_like": 32,
        "icon": "partly-cloudy-day",
        "local_day": 12,
        "local_hour": 17,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 31,
        "sea_level_pressure": 1013.1,
        "time": 1710223200,
        "uv": 2,
        "wind_avg": 3,
        "wind_direction": 223,
        "wind_direction_cardinal": "SW",
        "wind_gust": 3
      },
      {
        "air_temperature": 31,
        "conditions": "Partly Cloudy",
        "feels_like": 31,
        "icon": "partly-cloudy-day",
        "local_day": 12,
        "local_hour": 18,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 33,
        "sea_level_pressure": 1013.2,
        "time": 1710226800,
        "uv": 1,
        "wind_avg": 3,
        "wind_direction": 199,
        "wind_direction_cardinal": "SSW",
        "wind_gust": 3
      },
      {
        "air_temperature": 29,
        "conditions": "Partly Cloudy",
        "feels_like": 29,
        "icon": "partly-cloudy-day",
        "local_day": 12,
        "local_hour": 19,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 37,
        "sea_level_pressure": 1013.5,
        "time": 1710230400,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 169,
        "wind_direction_cardinal": "S",
        "wind_gust": 3
      },
      {
        "air_temperature": 26,
        "conditions": "Partly Cloudy",
        "feels_like": 26,
        "icon": "partly-cloudy-night",
        "local_day": 12,
        "local_hour": 20,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 48,
        "sea_level_pressure": 1014,
        "time": 1710234000,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 166,
        "wind_direction_cardinal": "SSE",
        "wind_gust": 3
      },
      {
        "air_temperature": 25,
        "conditions": "Partly Cloudy",
        "feels_like": 25,
        "icon": "partly-cloudy-night",
        "local_day": 12,
        "local_hour": 21,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 50,
        "sea_level_pressure": 1014.5,
        "time": 1710237600,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 123,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 23,
        "conditions": "Partly Cloudy",
        "feels_like": 23,
        "icon": "partly-cloudy-night",
        "local_day": 12,
        "local_hour": 22,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 57,
        "sea_level_pressure": 1015,
        "time": 1710241200,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 105,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 22,
        "conditions": "Partly Cloudy",
        "feels_like": 22,
        "icon": "partly-cloudy-night",
        "local_day": 12,
        "local_hour": 23,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 60,
        "sea_level_pressure": 1015.1,
        "time": 1710244800,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 107,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 21,
        "conditions": "Partly Cloudy",
        "feels_like": 21,
        "icon": "partly-cloudy-night",
        "local_day": 13,
        "local_hour": 0,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 64,
        "sea_level_pressure": 1015,
        "time": 1710248400,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 110,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 20,
        "conditions": "Partly Cloudy",
        "feels_like": 20,
        "icon": "partly-cloudy-night",
        "local_day": 13,
        "local_hour": 1,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 5,
        "precip_type": "rain",
        "relative_humidity": 68,
        "sea_level_pressure": 1014.9,
        "time": 1710252000,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 113,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 19,
        "conditions": "Partly Cloudy",
        "feels_like": 19,
        "icon": "partly-cloudy-night",
        "local_day": 13,
        "local_hour": 2,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 5,
        "precip_type": "rain",
        "relative_humidity": 73,
        "sea_level_pressure": 1014.7,
        "time": 1710255600,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 111,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 19,
        "conditions": "Partly Cloudy",
        "feels_like": 19,
        "icon": "partly-cloudy-night",
        "local_day": 13,
        "local_hour": 3,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 10,
        "precip_type": "rain",
        "relative_humidity": 73,
        "sea_level_pressure": 1014.6,
        "time": 1710259200,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 115,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 18,
        "conditions": "Partly Cloudy",
        "feels_like": 18,
        "icon": "partly-cloudy-night",
        "local_day": 13,
        "local_hour": 4,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 10,
        "precip_type": "rain",
        "relative_humidity": 77,
        "sea_level_pressure": 1014.4,
        "time": 1710262800,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 123,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 2
      },
      {
        "air_temperature": 18,
        "conditions": "Partly Cloudy",
        "feels_like": 18,
        "icon": "partly-cloudy-night",
        "local_day": 13,
        "local_hour": 5,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 77,
        "sea_level_pressure": 1014.4,
        "time": 1710266400,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 129,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 18,
        "conditions": "Partly Cloudy",
        "feels_like": 18,
        "icon": "partly-cloudy-night",
        "local_day": 13,
        "local_hour": 6,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1014.6,
        "time": 1710270000,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 144,
        "wind_direction_cardinal": "SE",
        "wind_gust": 2
      },
      {
        "air_temperature": 18,
        "conditions": "Partly Cloudy",
        "feels_like": 18,
        "icon": "partly-cloudy-day",
        "local_day": 13,
        "local_hour": 7,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 83,
        "sea_level_pressure": 1015,
        "time": 1710273600,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 158,
        "wind_direction_cardinal": "SSE",
        "wind_gust": 2
      },
      {
        "air_temperature": 21,
        "conditions": "Partly Cloudy",
        "feels_like": 21,
        "icon": "partly-cloudy-day",
        "local_day": 13,
        "local_hour": 8,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 73,
        "sea_level_pressure": 1015.4,
        "time": 1710277200,
        "uv": 0,
        "wind_avg": 2,
        "wind_direction": 148,
        "wind_direction_cardinal": "SSE",
        "wind_gust": 2
      },
      {
        "air_temperature": 24,
        "conditions": "Partly Cloudy",
        "feels_like": 24,
        "icon": "partly-cloudy-day",
        "local_day": 13,
        "local_hour": 9,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 61,
        "sea_level_pressure": 1015.6,
        "time": 1710280800,
        "uv": 2,
        "wind_avg": 2,
        "wind_direction": 56,
        "wind_direction_cardinal": "NE",
        "wind_gust": 2
      },
      {
        "air_temperature": 27,
        "conditions": "Partly Cloudy",
        "feels_like": 28,
        "icon": "partly-cloudy-day",
        "local_day": 13,
        "local_hour": 10,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 51,
        "sea_level_pressure": 1015.6,
        "time": 1710284400,
        "uv": 4,
        "wind_avg": 2,
        "wind_direction": 323,
        "wind_direction_cardinal": "NW",
        "wind_gust": 2
      },
      {
        "air_temperature": 28,
        "conditions": "Partly Cloudy",
        "feels_like": 28,
        "icon": "partly-cloudy-day",
        "local_day": 13,
        "local_hour": 11,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 48,
        "sea_level_pressure": 1015.5,
        "time": 1710288000,
        "uv": 7,
        "wind_avg": 2,
        "wind_direction": 289,
        "wind_direction_cardinal": "WNW",
        "wind_gust": 2
      },
      {
        "air_temperature": 30,
        "conditions": "Partly Cloudy",
        "feels_like": 30,
        "icon": "partly-cloudy-day",
        "local_day": 13,
        "local_hour": 12,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 40,
        "sea_level_pressure": 1015,
        "time": 1710291600,
        "uv": 9,
        "wind_avg": 3,
        "wind_direction": 276,
        "wind_direction_cardinal": "W",
        "wind_gust": 3
      },
      {
        "air_temperature": 31,
        "conditions": "Partly Cloudy",
        "feels_like": 31,
        "icon": "partly-cloudy-day",
        "local_day": 13,
        "local_hour": 13,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 38,
        "sea_level_pressure": 1014.1,
        "time": 1710295200,
        "uv": 10,
        "wind_avg": 3,
        "wind_direction": 267,
        "wind_direction_cardinal": "W",
        "wind_gust": 3
      },
      {
        "air_temperature": 32,
        "conditions": "Partly Cloudy",
        "feels_like": 32,
        "icon": "partly-cloudy-day",
        "local_day": 13,
        "local_hour": 14,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 34,
        "sea_level_pressure": 1013.1,
        "time": 1710298800,
        "uv": 9,
        "wind_avg": 3,
        "wind_direction": 246,
        "wind_direction_cardinal": "WSW",
        "wind_gust": 3
      },
      {
        "air_temperature": 32,
        "conditions": "Partly Cloudy",
        "feels_like": 32,
        "icon": "partly-cloudy-day",
        "local_day": 13,
        "local_hour": 15,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 34,
        "sea_level_pressure": 1012.2,
        "time": 1710302400,
        "uv": 7,
        "wind_avg": 4,
        "wind_direction": 229,
        "wind_direction_cardinal": "SW",
        "wind_gust": 5
      },
      {
        "air_temperature": 32,
        "conditions": "Partly Cloudy",
        "feels_like": 32,
        "icon": "partly-cloudy-day",
        "local_day": 13,
        "local_hour": 16,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 34,
        "sea_level_pressure": 1011.5,
        "time": 1710306000,
        "uv": 5,
        "wind_avg": 3,
        "wind_direction": 206,
        "wind_direction_cardinal": "SSW",
        "wind_gust": 3
      },
      {
        "air_temperature": 31,
        "conditions": "Partly Cloudy",
        "feels_like": 31,
        "icon": "partly-cloudy-day",
        "local_day": 13,
        "local_hour": 17,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 36,
        "sea_level_pressure": 1011.1,
        "time": 1710309600,
        "uv": 2,
        "wind_avg": 4,
        "wind_direction": 178,
        "wind_direction_cardinal": "S",
        "wind_gust": 5
      },
      {
        "air_temperature": 31,
        "conditions": "Partly Cloudy",
        "feels_like": 31,
        "icon": "partly-cloudy-day",
        "local_day": 13,
        "local_hour": 18,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 36,
        "sea_level_pressure": 1011.4,
        "time": 1710313200,
        "uv": 1,
        "wind_avg": 3,
        "wind_direction": 157,
        "wind_direction_cardinal": "SSE",
        "wind_gust": 3
      },
      {
        "air_temperature": 29,
        "conditions": "Partly Cloudy",
        "feels_like": 29,
        "icon": "partly-cloudy-day",
        "local_day": 13,
        "local_hour": 19,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 43,
        "sea_level_pressure": 1011.9,
        "time": 1710316800,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 149,
        "wind_direction_cardinal": "SSE",
        "wind_gust": 3
      },
      {
        "air_temperature": 26,
        "conditions": "Partly Cloudy",
        "feels_like": 26,
        "icon": "partly-cloudy-night",
        "local_day": 13,
        "local_hour": 20,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 51,
        "sea_level_pressure": 1012.7,
        "time": 1710320400,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 144,
        "wind_direction_cardinal": "SE",
        "wind_gust": 5
      },
      {
        "air_temperature": 25,
        "conditions": "Partly Cloudy",
        "feels_like": 25,
        "icon": "partly-cloudy-night",
        "local_day": 13,
        "local_hour": 21,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 57,
        "sea_level_pressure": 1013.4,
        "time": 1710324000,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 126,
        "wind_direction_cardinal": "SE",
        "wind_gust": 5
      },
      {
        "air_temperature": 24,
        "conditions": "Partly Cloudy",
        "feels_like": 24,
        "icon": "partly-cloudy-night",
        "local_day": 13,
        "local_hour": 22,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 61,
        "sea_level_pressure": 1014,
        "time": 1710327600,
        "uv": 0,
        "wind_avg": 3,
        "wind_direction": 113,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 3
      },
      {
        "air_temperature": 23,
        "conditions": "Partly Cloudy",
        "feels_like": 23,
        "icon": "partly-cloudy-night",
        "local_day": 13,
        "local_hour": 23,
        "precip": 0,
        "precip_icon": "chance-rain",
        "precip_probability": 0,
        "precip_type": "rain",
        "relative_humidity": 65,
        "sea_level_pressure": 1014.6,
        "time": 1710331200,
        "uv": 0,
        "wind_avg": 4,
        "wind_direction": 109,
        "wind_direction_cardinal": "ESE",
        "wind_gust": 5
      }
    ]
  },
  "latitude": -31.08113,
  "location_name": "Brisbane St",
  "longitude": 150.94167,
  "source_id_conditions": 5,
  "status": {
    "status_code": 0,
    "status_message": "SUCCESS"
  },
  "timezone": "Australia/Sydney",
  "timezone_offset_minutes": 660,
  "units": {
    "units_air_density": "kg/m3",
    "units_brightness": "lux",
    "units_distance": "km",
    "units_other": "metric",
    "units_precip": "mm",
    "units_pressure": "mb",
    "units_solar_radiation": "w/m2",
    "units_temp": "c",
    "units_wind": "mps"
  }
}
jeeftor commented 8 months ago

Perfect. I'll check it out in a couple hrs

jeeftor commented 8 months ago
image

Well I can verify the output of your stuff sure dont past muster

jeeftor commented 8 months ago

So the response I got from my /betterforecast:

image

And yours:

image

So that is ... concerning... I'll just modify everything I guess to have some defaults but I suspect we'll find a few more hiccups down the line

jeeftor commented 8 months ago

If I aka the field optional:

image

it will work ... I jus don't like this so far

jeeftor commented 8 months ago

In the API docs it doesn't say this is a field that is present. I just pushed a backing lib to make it optional... and I'll get a new push to fix the issue although its annoying to me that it doesn't exist in your request.

bacco007 commented 8 months ago

My suspicion is that it relates to the rain check function that weatherflow have in some markets.

It's now no longer available in Australia (where I am) but I had to switch it off because it was returning really out there rain numbers when I first installed my Tempest

gingerbreadassassin commented 8 months ago

@jeeftor I'm seeing a slightly different error, though still pertaining to precipitation:

Unexpected error fetching weatherflow_cloud data: 'precip_accum_local_day_final'
Traceback (most recent call last):
  File "/usr/src/homeassistant/homeassistant/helpers/update_coordinator.py", line 318, in _async_refresh
    self.data = await self._async_update_data()
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/src/homeassistant/homeassistant/components/weatherflow_cloud/coordinator.py", line 35, in _async_update_data
    return await self.weather_api.get_all_data()
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/weatherflow4py/api.py", line 138, in get_all_data
    observation=await self.async_get_observation(
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/weatherflow4py/api.py", line 118, in async_get_observation
    return await self._make_request(
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/weatherflow4py/api.py", line 44, in _make_request
    response_model.from_json(data)
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/api.py", line 63, in from_json
    return cls.from_dict(kvs, infer_missing=infer_missing)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/api.py", line 70, in from_dict
    return _decode_dataclass(cls, kvs, infer_missing)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/core.py", line 220, in _decode_dataclass
    init_kwargs[field.name] = _decode_generic(field_type,
                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/core.py", line 291, in _decode_generic
    xs = _decode_items(_get_type_arg_param(type_, 0), value, infer_missing)
         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/core.py", line 399, in _decode_items
    return list(_decode_item(type_args, x) for x in xs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/core.py", line 399, in <genexpr>
    return list(_decode_item(type_args, x) for x in xs)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/core.py", line 372, in _decode_item
    return _decode_dataclass(type_arg, x, infer_missing)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/lib/python3.12/site-packages/dataclasses_json/core.py", line 172, in _decode_dataclass
    field_value = kvs[field.name]
                  ~~~^^^^^^^^^^^^
KeyError: 'precip_accum_local_day_final'

This is after also specifying

“requirements": [“weatherflow4py==0.1.17"]

in /usr/src/homeassistant/homeassistant/components/weatherflow_cloud/manifest.json (similarly updated relevant lines in /usr/src/homeassistant/requirements_(test_all|all).txt) and restarting core, which seems to update the version in `/usr/local/lib/python3.12/site-packages: image Though if this isn't the proper way to change the python package version, let me know.

Do you think this will be fixed in the next point release / beta as well, or should I open a separate issue?

jeeftor commented 8 months ago

So what I've been seeing which is really annoying is that some people seem to have different endpoints coming across.

Any chance you can pull the better forecast api down and I can look at the source data?

https://weatherflow.github.io/Tempest/api/swagger/#!/forecast/getBetterForecast

jeeftor commented 8 months ago

As for messing with libs:

pip install weatherflow4py=xxxx
hass -c config --skip-pip-packages weatherflow4py

There is a big refactor I did moving the models into models.rest and models.ws

So until some of the PRs get in it might be an issue to do this

jeeftor commented 8 months ago

Oh your coming through the get_observation endpoint ... I "need" to wrap those in more error handling since they aren't fully being used yet... but if you can hit the various endpoints on the REST API and get me the json data I can drop it in as test files for the backing lib...

jeeftor commented 8 months ago

So it sounds like your observation endpoint doesn't have the field ... my test data is:

{
  "elevation": 2063.150146484375,
  "is_public": true,
  "latitude": 43.94962,
  "longitude": -102.86831,
  "obs": [
    {
      "air_density": 0.96139,
      "air_temperature": 10.5,
      "barometric_pressure": 782.8,
      "brightness": 757,
      "delta_t": 8.4,
      "dew_point": -10.4,
      "feels_like": 10.5,
      "heat_index": 10.5,
      "lightning_strike_count": 0,
      "lightning_strike_count_last_1hr": 0,
      "lightning_strike_count_last_3hr": 0,
      "lightning_strike_last_distance": 26,
      "lightning_strike_last_epoch": 1707346875,
      "precip": 0.0,
      "precip_accum_last_1hr": 0.0,
      "precip_accum_local_day": 0.0,
      "precip_accum_local_day_final": 0.0,
      "precip_accum_local_yesterday": 0.0,
      "precip_accum_local_yesterday_final": 0.0,
      "precip_analysis_type_yesterday": 0,
      "precip_minutes_local_day": 0,
      "precip_minutes_local_yesterday": 0,
      "precip_minutes_local_yesterday_final": 0,
      "pressure_trend": "steady",
      "relative_humidity": 22,
      "sea_level_pressure": 1006.2,
      "solar_radiation": 6,
      "station_pressure": 782.8,
      "timestamp": 1708994629,
      "uv": 0.03,
      "wet_bulb_globe_temperature": 4.6,
      "wet_bulb_temperature": 2.1,
      "wind_avg": 1.4,
      "wind_chill": 10.5,
      "wind_direction": 203,
      "wind_gust": 3.2,
      "wind_lull": 0.3
    }
  ],
  "outdoor_keys": [
    "timestamp",
    "air_temperature",
    "barometric_pressure",
    "station_pressure",
    "pressure_trend",
    "sea_level_pressure",
    "relative_humidity",
    "precip",
    "precip_accum_last_1hr",
    "precip_accum_local_day",
    "precip_accum_local_day_final",
    "precip_accum_local_yesterday_final",
    "precip_minutes_local_day",
    "precip_minutes_local_yesterday_final",
    "wind_avg",
    "wind_direction",
    "wind_gust",
    "wind_lull",
    "solar_radiation",
    "uv",
    "brightness",
    "lightning_strike_last_epoch",
    "lightning_strike_last_distance",
    "lightning_strike_count",
    "lightning_strike_count_last_1hr",
    "lightning_strike_count_last_3hr",
    "feels_like",
    "heat_index",
    "wind_chill",
    "dew_point",
    "wet_bulb_temperature",
    "wet_bulb_globe_temperature",
    "delta_t",
    "air_density"
  ],
  "public_name": "My Home Station",
  "station_id": 24432,
  "station_name": "My Home Station",
  "station_units": {
    "units_direction": "degrees",
    "units_distance": "mi",
    "units_other": "metric",
    "units_precip": "in",
    "units_pressure": "hpa",
    "units_temp": "f",
    "units_wind": "bft"
  },
  "status": {
    "status_code": 0,
    "status_message": "SUCCESS"
  },
  "timezone": "America/Denver"
}
jeeftor commented 8 months ago

So I can prob fix the backing lib like this:

image

jeeftor commented 8 months ago

So this passes test if we are missing those fields ... I'll just need to figure out how/where to get it into the PR process

gingerbreadassassin commented 8 months ago

Note I've censored the more sensitive PII in this output.

observations/device `https://swd.weatherflow.com/swd/rest/observations/device/(hidden)`: ```json { "status": { "status_code": 0, "status_message": "SUCCESS" }, "device_id": (hidden), "type": "obs_st", "source": "cache", "summary": { "pressure_trend": "steady", "strike_count_1h": 0, "strike_count_3h": 0, "precip_total_1h": 0, "strike_last_dist": 36, "strike_last_epoch": 1709189770, "precip_accum_local_yesterday": 0, "precip_analysis_type_yesterday": 0, "feels_like": 20.1, "heat_index": 20.1, "wind_chill": 20.1 }, "obs": [ [ 1710273976, 2.69, 4.03, 5.22, 307, 3, 813.4, 20.1, 18, 61770, 4.15, 515, 0, 0, 0, 0, 2.78, 1, 0, null, null, 0 ] ] } ```
observations/station `https://swd.weatherflow.com/swd/rest/observations/station/(hidden)`: ```json { "elevation": (hidden), "is_public": true, "latitude": (hidden), "longitude": (hidden), "obs": [ { "air_density": 0.96615, "air_temperature": 20.1, "barometric_pressure": 813.3, "brightness": 59918, "delta_t": 12, "dew_point": -5, "feels_like": 20.1, "heat_index": 20.1, "lightning_strike_count": 0, "lightning_strike_count_last_1hr": 0, "lightning_strike_count_last_3hr": 0, "lightning_strike_last_distance": 36, "lightning_strike_last_epoch": 1709189770, "precip": 0, "precip_accum_last_1hr": 0, "precip_accum_local_day": 0, "precip_accum_local_yesterday": 0, "precip_minutes_local_day": 0, "precip_minutes_local_yesterday": 0, "pressure_trend": "steady", "relative_humidity": 18, "sea_level_pressure": 980.7, "solar_radiation": 500, "station_pressure": 813.3, "timestamp": 1710273856, "uv": 4.02, "wet_bulb_globe_temperature": 12.4, "wet_bulb_temperature": 8.1, "wind_avg": 5.5, "wind_chill": 20.1, "wind_direction": 299, "wind_gust": 7.2, "wind_lull": 4.1 } ], "outdoor_keys": [ "timestamp", "air_temperature", "barometric_pressure", "station_pressure", "pressure_trend", "sea_level_pressure", "relative_humidity", "precip", "precip_accum_last_1hr", "precip_accum_local_day", "precip_accum_local_yesterday", "precip_minutes_local_day", "precip_minutes_local_yesterday", "wind_avg", "wind_direction", "wind_gust", "wind_lull", "solar_radiation", "uv", "brightness", "lightning_strike_last_epoch", "lightning_strike_last_distance", "lightning_strike_count", "lightning_strike_count_last_1hr", "lightning_strike_count_last_3hr", "feels_like", "heat_index", "wind_chill", "dew_point", "wet_bulb_temperature", "wet_bulb_globe_temperature", "delta_t", "air_density" ], "public_name": "(hidden)", "station_id": (hidden), "station_name": "(hidden)", "station_units": { "units_direction": "cardinal", "units_distance": "mi", "units_other": "imperial", "units_precip": "in", "units_pressure": "inhg", "units_temp": "f", "units_wind": "mph" }, "status": { "status_code": 0, "status_message": "SUCCESS" }, "timezone": "America/Chicago" } ```

better forecast `https://swd.weatherflow.com/swd/rest/better_forecast?station_id=(hidden)`: ```json { "current_conditions": { "air_density": 0.97, "air_temperature": 20, "brightness": 70369, "conditions": "Partly Cloudy", "delta_t": 11, "dew_point": -3, "feels_like": 20, "icon": "partly-cloudy-day", "is_precip_local_day_rain_check": false, "is_precip_local_yesterday_rain_check": true, "lightning_strike_count_last_1hr": 0, "lightning_strike_count_last_3hr": 0, "lightning_strike_last_distance": 36, "lightning_strike_last_distance_msg": "34 - 38 km", "lightning_strike_last_epoch": 1709189770, "precip_accum_local_day": 0, "precip_accum_local_yesterday": 0, "precip_minutes_local_day": 0, "precip_minutes_local_yesterday": 0, "pressure_trend": "steady", "relative_humidity": 21, "sea_level_pressure": 980.9, "solar_radiation": 586, "station_pressure": 813.4, "time": 1710270497, "uv": 5, "wet_bulb_globe_temperature": 14, "wet_bulb_temperature": 9, "wind_avg": 4, "wind_direction": 305, "wind_direction_cardinal": "NW", "wind_gust": 5 }, "forecast": { "daily": [ { "air_temp_high": 22, "air_temp_low": 8, "conditions": "Clear", "day_num": 12, "day_start_local": 1710219600, "icon": "clear-day", "month_num": 3, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "sunrise": 1710248833, "sunset": 1710291654 }, { "air_temp_high": 23, "air_temp_low": 10, "conditions": "Clear", "day_num": 13, "day_start_local": 1710306000, "icon": "clear-day", "month_num": 3, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "sunrise": 1710335162, "sunset": 1710378093 }, { "air_temp_high": 23, "air_temp_low": 9, "conditions": "Clear", "day_num": 14, "day_start_local": 1710392400, "icon": "clear-day", "month_num": 3, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "sunrise": 1710421490, "sunset": 1710464531 }, { "air_temp_high": 19, "air_temp_low": 9, "conditions": "Partly Cloudy", "day_num": 15, "day_start_local": 1710478800, "icon": "partly-cloudy-day", "month_num": 3, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "sunrise": 1710507818, "sunset": 1710550969 }, { "air_temp_high": 19, "air_temp_low": 8, "conditions": "Partly Cloudy", "day_num": 16, "day_start_local": 1710565200, "icon": "partly-cloudy-day", "month_num": 3, "precip_icon": "chance-rain", "precip_probability": 10, "precip_type": "storm", "sunrise": 1710594145, "sunset": 1710637407 }, { "air_temp_high": 16, "air_temp_low": 9, "conditions": "Thunderstorms Possible", "day_num": 17, "day_start_local": 1710651600, "icon": "possibly-thunderstorm-day", "month_num": 3, "precip_icon": "chance-rain", "precip_probability": 40, "precip_type": "storm", "sunrise": 1710680473, "sunset": 1710723845 }, { "air_temp_high": 10, "air_temp_low": 6, "conditions": "Rain Possible", "day_num": 18, "day_start_local": 1710738000, "icon": "possibly-rainy-day", "month_num": 3, "precip_icon": "chance-rain", "precip_probability": 40, "precip_type": "rain", "sunrise": 1710766800, "sunset": 1710810282 }, { "air_temp_high": 16, "air_temp_low": 4, "conditions": "Partly Cloudy", "day_num": 19, "day_start_local": 1710824400, "icon": "partly-cloudy-day", "month_num": 3, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "sunrise": 1710853128, "sunset": 1710896720 }, { "air_temp_high": 20, "air_temp_low": 6, "conditions": "Partly Cloudy", "day_num": 20, "day_start_local": 1710910800, "icon": "partly-cloudy-day", "month_num": 3, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "sunrise": 1710939455, "sunset": 1710983157 }, { "air_temp_high": 22, "air_temp_low": 8, "conditions": "Partly Cloudy", "day_num": 21, "day_start_local": 1710997200, "icon": "partly-cloudy-day", "month_num": 3, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "sunrise": 1711025782, "sunset": 1711069595 } ], "hourly": [ { "air_temperature": 20, "conditions": "Partly Cloudy", "feels_like": 20, "icon": "partly-cloudy-day", "local_day": 12, "local_hour": 15, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 17, "sea_level_pressure": 1011.7, "time": 1710273600, "uv": 8, "wind_avg": 6, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 9 }, { "air_temperature": 21, "conditions": "Partly Cloudy", "feels_like": 21, "icon": "partly-cloudy-day", "local_day": 12, "local_hour": 16, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 14, "sea_level_pressure": 1010.5, "time": 1710277200, "uv": 8, "wind_avg": 6, "wind_direction": 260, "wind_direction_cardinal": "W", "wind_gust": 9 }, { "air_temperature": 22, "conditions": "Partly Cloudy", "feels_like": 22, "icon": "partly-cloudy-day", "local_day": 12, "local_hour": 17, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 13, "sea_level_pressure": 1010, "time": 1710280800, "uv": 6, "wind_avg": 6, "wind_direction": 260, "wind_direction_cardinal": "W", "wind_gust": 10 }, { "air_temperature": 22, "conditions": "Clear", "feels_like": 22, "icon": "clear-day", "local_day": 12, "local_hour": 18, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 12, "sea_level_pressure": 1009.7, "time": 1710284400, "uv": 4, "wind_avg": 6, "wind_direction": 260, "wind_direction_cardinal": "W", "wind_gust": 9 }, { "air_temperature": 21, "conditions": "Clear", "feels_like": 21, "icon": "clear-day", "local_day": 12, "local_hour": 19, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 12, "sea_level_pressure": 1009.5, "time": 1710288000, "uv": 2, "wind_avg": 6, "wind_direction": 260, "wind_direction_cardinal": "W", "wind_gust": 9 }, { "air_temperature": 19, "conditions": "Clear", "feels_like": 19, "icon": "clear-day", "local_day": 12, "local_hour": 20, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 14, "sea_level_pressure": 1010.1, "time": 1710291600, "uv": 0, "wind_avg": 4, "wind_direction": 260, "wind_direction_cardinal": "W", "wind_gust": 6 }, { "air_temperature": 17, "conditions": "Clear", "feels_like": 17, "icon": "clear-night", "local_day": 12, "local_hour": 21, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 17, "sea_level_pressure": 1010.5, "time": 1710295200, "uv": 0, "wind_avg": 2, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 4 }, { "air_temperature": 14, "conditions": "Clear", "feels_like": 14, "icon": "clear-night", "local_day": 12, "local_hour": 22, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 19, "sea_level_pressure": 1010.9, "time": 1710298800, "uv": 0, "wind_avg": 2, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 2 }, { "air_temperature": 13, "conditions": "Clear", "feels_like": 13, "icon": "clear-night", "local_day": 12, "local_hour": 23, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 22, "sea_level_pressure": 1011.3, "time": 1710302400, "uv": 0, "wind_avg": 2, "wind_direction": 290, "wind_direction_cardinal": "WNW", "wind_gust": 2 }, { "air_temperature": 13, "conditions": "Clear", "feels_like": 13, "icon": "clear-night", "local_day": 13, "local_hour": 0, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 23, "sea_level_pressure": 1011.5, "time": 1710306000, "uv": 0, "wind_avg": 2, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 3 }, { "air_temperature": 12, "conditions": "Clear", "feels_like": 12, "icon": "clear-night", "local_day": 13, "local_hour": 1, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 24, "sea_level_pressure": 1011.4, "time": 1710309600, "uv": 0, "wind_avg": 2, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 3 }, { "air_temperature": 12, "conditions": "Clear", "feels_like": 12, "icon": "clear-night", "local_day": 13, "local_hour": 2, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 23, "sea_level_pressure": 1011.1, "time": 1710313200, "uv": 0, "wind_avg": 2, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 3 }, { "air_temperature": 12, "conditions": "Clear", "feels_like": 12, "icon": "clear-night", "local_day": 13, "local_hour": 3, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 24, "sea_level_pressure": 1010.7, "time": 1710316800, "uv": 0, "wind_avg": 2, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 4 }, { "air_temperature": 11, "conditions": "Clear", "feels_like": 11, "icon": "clear-night", "local_day": 13, "local_hour": 4, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 24, "sea_level_pressure": 1010.1, "time": 1710320400, "uv": 0, "wind_avg": 3, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 4 }, { "air_temperature": 11, "conditions": "Clear", "feels_like": 11, "icon": "clear-night", "local_day": 13, "local_hour": 5, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 23, "sea_level_pressure": 1010.1, "time": 1710324000, "uv": 0, "wind_avg": 3, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 5 }, { "air_temperature": 11, "conditions": "Clear", "feels_like": 11, "icon": "clear-night", "local_day": 13, "local_hour": 6, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 24, "sea_level_pressure": 1010.4, "time": 1710327600, "uv": 0, "wind_avg": 4, "wind_direction": 290, "wind_direction_cardinal": "WNW", "wind_gust": 6 }, { "air_temperature": 10, "conditions": "Clear", "feels_like": 10, "icon": "clear-night", "local_day": 13, "local_hour": 7, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 24, "sea_level_pressure": 1010.6, "time": 1710331200, "uv": 0, "wind_avg": 4, "wind_direction": 290, "wind_direction_cardinal": "WNW", "wind_gust": 6 }, { "air_temperature": 11, "conditions": "Clear", "feels_like": 11, "icon": "clear-night", "local_day": 13, "local_hour": 8, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 25, "sea_level_pressure": 1011.1, "time": 1710334800, "uv": 0, "wind_avg": 4, "wind_direction": 300, "wind_direction_cardinal": "WNW", "wind_gust": 5 }, { "air_temperature": 13, "conditions": "Clear", "feels_like": 13, "icon": "clear-day", "local_day": 13, "local_hour": 9, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 23, "sea_level_pressure": 1011.3, "time": 1710338400, "uv": 1, "wind_avg": 4, "wind_direction": 290, "wind_direction_cardinal": "WNW", "wind_gust": 6 }, { "air_temperature": 16, "conditions": "Clear", "feels_like": 16, "icon": "clear-day", "local_day": 13, "local_hour": 10, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 19, "sea_level_pressure": 1011.2, "time": 1710342000, "uv": 3, "wind_avg": 5, "wind_direction": 290, "wind_direction_cardinal": "WNW", "wind_gust": 8 }, { "air_temperature": 17, "conditions": "Clear", "feels_like": 17, "icon": "clear-day", "local_day": 13, "local_hour": 11, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 18, "sea_level_pressure": 1010.7, "time": 1710345600, "uv": 5, "wind_avg": 6, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 9 }, { "air_temperature": 19, "conditions": "Clear", "feels_like": 19, "icon": "clear-day", "local_day": 13, "local_hour": 12, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 16, "sea_level_pressure": 1009.8, "time": 1710349200, "uv": 6, "wind_avg": 6, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 9 }, { "air_temperature": 20, "conditions": "Clear", "feels_like": 20, "icon": "clear-day", "local_day": 13, "local_hour": 13, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 14, "sea_level_pressure": 1008.9, "time": 1710352800, "uv": 7, "wind_avg": 6, "wind_direction": 260, "wind_direction_cardinal": "W", "wind_gust": 10 }, { "air_temperature": 22, "conditions": "Clear", "feels_like": 22, "icon": "clear-day", "local_day": 13, "local_hour": 14, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 12, "sea_level_pressure": 1007.7, "time": 1710356400, "uv": 9, "wind_avg": 7, "wind_direction": 250, "wind_direction_cardinal": "WSW", "wind_gust": 11 }, { "air_temperature": 22, "conditions": "Clear", "feels_like": 22, "icon": "clear-day", "local_day": 13, "local_hour": 15, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 11, "sea_level_pressure": 1006.3, "time": 1710360000, "uv": 9, "wind_avg": 8, "wind_direction": 250, "wind_direction_cardinal": "WSW", "wind_gust": 11 }, { "air_temperature": 23, "conditions": "Clear", "feels_like": 23, "icon": "clear-day", "local_day": 13, "local_hour": 16, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 11, "sea_level_pressure": 1005.2, "time": 1710363600, "uv": 8, "wind_avg": 8, "wind_direction": 250, "wind_direction_cardinal": "WSW", "wind_gust": 11 }, { "air_temperature": 23, "conditions": "Clear", "feels_like": 23, "icon": "clear-day", "local_day": 13, "local_hour": 17, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 10, "sea_level_pressure": 1004.6, "time": 1710367200, "uv": 7, "wind_avg": 8, "wind_direction": 250, "wind_direction_cardinal": "WSW", "wind_gust": 12 }, { "air_temperature": 22, "conditions": "Clear", "feels_like": 22, "icon": "clear-day", "local_day": 13, "local_hour": 18, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 10, "sea_level_pressure": 1004.4, "time": 1710370800, "uv": 5, "wind_avg": 8, "wind_direction": 240, "wind_direction_cardinal": "WSW", "wind_gust": 12 }, { "air_temperature": 22, "conditions": "Clear", "feels_like": 22, "icon": "clear-day", "local_day": 13, "local_hour": 19, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 10, "sea_level_pressure": 1004.2, "time": 1710374400, "uv": 3, "wind_avg": 7, "wind_direction": 230, "wind_direction_cardinal": "SW", "wind_gust": 11 }, { "air_temperature": 20, "conditions": "Clear", "feels_like": 20, "icon": "clear-day", "local_day": 13, "local_hour": 20, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 13, "sea_level_pressure": 1004.7, "time": 1710378000, "uv": 0, "wind_avg": 6, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 8 }, { "air_temperature": 17, "conditions": "Clear", "feels_like": 17, "icon": "clear-night", "local_day": 13, "local_hour": 21, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 15, "sea_level_pressure": 1005.2, "time": 1710381600, "uv": 0, "wind_avg": 4, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 6 }, { "air_temperature": 15, "conditions": "Partly Cloudy", "feels_like": 15, "icon": "partly-cloudy-night", "local_day": 13, "local_hour": 22, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 17, "sea_level_pressure": 1005.7, "time": 1710385200, "uv": 0, "wind_avg": 3, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 4 }, { "air_temperature": 14, "conditions": "Partly Cloudy", "feels_like": 14, "icon": "partly-cloudy-night", "local_day": 13, "local_hour": 23, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 19, "sea_level_pressure": 1006.3, "time": 1710388800, "uv": 0, "wind_avg": 3, "wind_direction": 260, "wind_direction_cardinal": "W", "wind_gust": 4 }, { "air_temperature": 14, "conditions": "Partly Cloudy", "feels_like": 14, "icon": "partly-cloudy-night", "local_day": 14, "local_hour": 0, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 20, "sea_level_pressure": 1006.9, "time": 1710392400, "uv": 0, "wind_avg": 3, "wind_direction": 260, "wind_direction_cardinal": "W", "wind_gust": 4 }, { "air_temperature": 13, "conditions": "Partly Cloudy", "feels_like": 13, "icon": "partly-cloudy-night", "local_day": 14, "local_hour": 1, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 20, "sea_level_pressure": 1007.5, "time": 1710396000, "uv": 0, "wind_avg": 3, "wind_direction": 260, "wind_direction_cardinal": "W", "wind_gust": 4 }, { "air_temperature": 13, "conditions": "Clear", "feels_like": 13, "icon": "clear-night", "local_day": 14, "local_hour": 2, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 23, "sea_level_pressure": 1007.4, "time": 1710399600, "uv": 0, "wind_avg": 3, "wind_direction": 290, "wind_direction_cardinal": "WNW", "wind_gust": 4 }, { "air_temperature": 12, "conditions": "Clear", "feels_like": 12, "icon": "clear-night", "local_day": 14, "local_hour": 3, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 24, "sea_level_pressure": 1007.4, "time": 1710403200, "uv": 0, "wind_avg": 3, "wind_direction": 290, "wind_direction_cardinal": "WNW", "wind_gust": 4 }, { "air_temperature": 11, "conditions": "Clear", "feels_like": 11, "icon": "clear-night", "local_day": 14, "local_hour": 4, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 25, "sea_level_pressure": 1007.4, "time": 1710406800, "uv": 0, "wind_avg": 3, "wind_direction": 290, "wind_direction_cardinal": "WNW", "wind_gust": 4 }, { "air_temperature": 10, "conditions": "Clear", "feels_like": 10, "icon": "clear-night", "local_day": 14, "local_hour": 5, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 29, "sea_level_pressure": 1007.3, "time": 1710410400, "uv": 0, "wind_avg": 3, "wind_direction": 300, "wind_direction_cardinal": "WNW", "wind_gust": 4 }, { "air_temperature": 9, "conditions": "Clear", "feels_like": 8, "icon": "clear-night", "local_day": 14, "local_hour": 6, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 31, "sea_level_pressure": 1007.3, "time": 1710414000, "uv": 0, "wind_avg": 2, "wind_direction": 300, "wind_direction_cardinal": "WNW", "wind_gust": 4 }, { "air_temperature": 9, "conditions": "Clear", "feels_like": 8, "icon": "clear-night", "local_day": 14, "local_hour": 7, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 31, "sea_level_pressure": 1007.3, "time": 1710417600, "uv": 0, "wind_avg": 2, "wind_direction": 300, "wind_direction_cardinal": "WNW", "wind_gust": 4 }, { "air_temperature": 10, "conditions": "Clear", "feels_like": 10, "icon": "clear-night", "local_day": 14, "local_hour": 8, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 32, "sea_level_pressure": 1007.7, "time": 1710421200, "uv": 2, "wind_avg": 2, "wind_direction": 230, "wind_direction_cardinal": "SW", "wind_gust": 3 }, { "air_temperature": 12, "conditions": "Clear", "feels_like": 12, "icon": "clear-day", "local_day": 14, "local_hour": 9, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 28, "sea_level_pressure": 1008, "time": 1710424800, "uv": 2, "wind_avg": 1, "wind_direction": 230, "wind_direction_cardinal": "SW", "wind_gust": 3 }, { "air_temperature": 14, "conditions": "Clear", "feels_like": 14, "icon": "clear-day", "local_day": 14, "local_hour": 10, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 24, "sea_level_pressure": 1008.4, "time": 1710428400, "uv": 2, "wind_avg": 0, "wind_direction": 230, "wind_direction_cardinal": "SW", "wind_gust": 3 }, { "air_temperature": 17, "conditions": "Clear", "feels_like": 17, "icon": "clear-day", "local_day": 14, "local_hour": 11, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 20, "sea_level_pressure": 1008, "time": 1710432000, "uv": 6, "wind_avg": 2, "wind_direction": 200, "wind_direction_cardinal": "SSW", "wind_gust": 4 }, { "air_temperature": 19, "conditions": "Clear", "feels_like": 19, "icon": "clear-day", "local_day": 14, "local_hour": 12, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 17, "sea_level_pressure": 1007.7, "time": 1710435600, "uv": 6, "wind_avg": 4, "wind_direction": 200, "wind_direction_cardinal": "SSW", "wind_gust": 6 }, { "air_temperature": 20, "conditions": "Clear", "feels_like": 20, "icon": "clear-day", "local_day": 14, "local_hour": 13, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 16, "sea_level_pressure": 1007.3, "time": 1710439200, "uv": 6, "wind_avg": 5, "wind_direction": 200, "wind_direction_cardinal": "SSW", "wind_gust": 8 }, { "air_temperature": 22, "conditions": "Clear", "feels_like": 22, "icon": "clear-day", "local_day": 14, "local_hour": 14, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 12, "sea_level_pressure": 1006.1, "time": 1710442800, "uv": 9, "wind_avg": 6, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 9 }, { "air_temperature": 23, "conditions": "Clear", "feels_like": 23, "icon": "clear-day", "local_day": 14, "local_hour": 15, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 11, "sea_level_pressure": 1005, "time": 1710446400, "uv": 9, "wind_avg": 6, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 10 }, { "air_temperature": 23, "conditions": "Clear", "feels_like": 23, "icon": "clear-day", "local_day": 14, "local_hour": 16, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 11, "sea_level_pressure": 1003.9, "time": 1710450000, "uv": 9, "wind_avg": 7, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 11 }, { "air_temperature": 23, "conditions": "Clear", "feels_like": 23, "icon": "clear-day", "local_day": 14, "local_hour": 17, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 9, "sea_level_pressure": 1003.9, "time": 1710453600, "uv": 7, "wind_avg": 7, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 10 }, { "air_temperature": 23, "conditions": "Clear", "feels_like": 23, "icon": "clear-day", "local_day": 14, "local_hour": 18, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 10, "sea_level_pressure": 1003.9, "time": 1710457200, "uv": 7, "wind_avg": 7, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 10 }, { "air_temperature": 22, "conditions": "Partly Cloudy", "feels_like": 22, "icon": "partly-cloudy-day", "local_day": 14, "local_hour": 19, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 10, "sea_level_pressure": 1003.9, "time": 1710460800, "uv": 7, "wind_avg": 6, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 10 }, { "air_temperature": 20, "conditions": "Partly Cloudy", "feels_like": 20, "icon": "partly-cloudy-day", "local_day": 14, "local_hour": 20, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 13, "sea_level_pressure": 1004.4, "time": 1710464400, "uv": 0, "wind_avg": 6, "wind_direction": 130, "wind_direction_cardinal": "SE", "wind_gust": 8 }, { "air_temperature": 18, "conditions": "Partly Cloudy", "feels_like": 18, "icon": "partly-cloudy-night", "local_day": 14, "local_hour": 21, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 16, "sea_level_pressure": 1004.9, "time": 1710468000, "uv": 0, "wind_avg": 4, "wind_direction": 130, "wind_direction_cardinal": "SE", "wind_gust": 7 }, { "air_temperature": 16, "conditions": "Partly Cloudy", "feels_like": 16, "icon": "partly-cloudy-night", "local_day": 14, "local_hour": 22, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 18, "sea_level_pressure": 1005.4, "time": 1710471600, "uv": 0, "wind_avg": 4, "wind_direction": 130, "wind_direction_cardinal": "SE", "wind_gust": 6 }, { "air_temperature": 15, "conditions": "Partly Cloudy", "feels_like": 15, "icon": "partly-cloudy-night", "local_day": 14, "local_hour": 23, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 31, "sea_level_pressure": 1005.8, "time": 1710475200, "uv": 0, "wind_avg": 5, "wind_direction": 130, "wind_direction_cardinal": "SE", "wind_gust": 7 }, { "air_temperature": 14, "conditions": "Partly Cloudy", "feels_like": 14, "icon": "partly-cloudy-night", "local_day": 15, "local_hour": 0, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 32, "sea_level_pressure": 1006.2, "time": 1710478800, "uv": 0, "wind_avg": 6, "wind_direction": 130, "wind_direction_cardinal": "SE", "wind_gust": 8 }, { "air_temperature": 14, "conditions": "Partly Cloudy", "feels_like": 14, "icon": "partly-cloudy-night", "local_day": 15, "local_hour": 1, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 33, "sea_level_pressure": 1006.7, "time": 1710482400, "uv": 0, "wind_avg": 7, "wind_direction": 130, "wind_direction_cardinal": "SE", "wind_gust": 10 }, { "air_temperature": 13, "conditions": "Partly Cloudy", "feels_like": 13, "icon": "partly-cloudy-night", "local_day": 15, "local_hour": 2, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 37, "sea_level_pressure": 1006.9, "time": 1710486000, "uv": 0, "wind_avg": 6, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 8 }, { "air_temperature": 12, "conditions": "Clear", "feels_like": 12, "icon": "clear-night", "local_day": 15, "local_hour": 3, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 39, "sea_level_pressure": 1007.2, "time": 1710489600, "uv": 0, "wind_avg": 4, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 7 }, { "air_temperature": 11, "conditions": "Clear", "feels_like": 11, "icon": "clear-night", "local_day": 15, "local_hour": 4, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 42, "sea_level_pressure": 1007.5, "time": 1710493200, "uv": 0, "wind_avg": 3, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 5 }, { "air_temperature": 10, "conditions": "Clear", "feels_like": 10, "icon": "clear-night", "local_day": 15, "local_hour": 5, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 38, "sea_level_pressure": 1008, "time": 1710496800, "uv": 0, "wind_avg": 3, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 5 }, { "air_temperature": 10, "conditions": "Clear", "feels_like": 8, "icon": "clear-night", "local_day": 15, "local_hour": 6, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 40, "sea_level_pressure": 1008.6, "time": 1710500400, "uv": 0, "wind_avg": 4, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 5 }, { "air_temperature": 9, "conditions": "Clear", "feels_like": 8, "icon": "clear-night", "local_day": 15, "local_hour": 7, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 41, "sea_level_pressure": 1009.1, "time": 1710504000, "uv": 0, "wind_avg": 4, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 5 }, { "air_temperature": 10, "conditions": "Clear", "feels_like": 8, "icon": "clear-night", "local_day": 15, "local_hour": 8, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 47, "sea_level_pressure": 1009.7, "time": 1710507600, "uv": 1, "wind_avg": 4, "wind_direction": 320, "wind_direction_cardinal": "NW", "wind_gust": 6 }, { "air_temperature": 11, "conditions": "Clear", "feels_like": 11, "icon": "clear-day", "local_day": 15, "local_hour": 9, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 43, "sea_level_pressure": 1010.3, "time": 1710511200, "uv": 1, "wind_avg": 5, "wind_direction": 320, "wind_direction_cardinal": "NW", "wind_gust": 8 }, { "air_temperature": 13, "conditions": "Partly Cloudy", "feels_like": 13, "icon": "partly-cloudy-day", "local_day": 15, "local_hour": 10, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 39, "sea_level_pressure": 1010.9, "time": 1710514800, "uv": 1, "wind_avg": 6, "wind_direction": 320, "wind_direction_cardinal": "NW", "wind_gust": 9 }, { "air_temperature": 14, "conditions": "Clear", "feels_like": 14, "icon": "clear-day", "local_day": 15, "local_hour": 11, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 33, "sea_level_pressure": 1010.7, "time": 1710518400, "uv": 4, "wind_avg": 6, "wind_direction": 260, "wind_direction_cardinal": "W", "wind_gust": 10 }, { "air_temperature": 16, "conditions": "Clear", "feels_like": 16, "icon": "clear-day", "local_day": 15, "local_hour": 12, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 30, "sea_level_pressure": 1010.6, "time": 1710522000, "uv": 4, "wind_avg": 7, "wind_direction": 260, "wind_direction_cardinal": "W", "wind_gust": 11 }, { "air_temperature": 18, "conditions": "Clear", "feels_like": 18, "icon": "clear-day", "local_day": 15, "local_hour": 13, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 27, "sea_level_pressure": 1010.5, "time": 1710525600, "uv": 4, "wind_avg": 8, "wind_direction": 260, "wind_direction_cardinal": "W", "wind_gust": 12 }, { "air_temperature": 18, "conditions": "Clear", "feels_like": 18, "icon": "clear-day", "local_day": 15, "local_hour": 14, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 27, "sea_level_pressure": 1009.8, "time": 1710529200, "uv": 9, "wind_avg": 8, "wind_direction": 110, "wind_direction_cardinal": "ESE", "wind_gust": 12 }, { "air_temperature": 19, "conditions": "Clear", "feels_like": 19, "icon": "clear-day", "local_day": 15, "local_hour": 15, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 27, "sea_level_pressure": 1009.1, "time": 1710532800, "uv": 9, "wind_avg": 8, "wind_direction": 110, "wind_direction_cardinal": "ESE", "wind_gust": 12 }, { "air_temperature": 19, "conditions": "Clear", "feels_like": 19, "icon": "clear-day", "local_day": 15, "local_hour": 16, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 26, "sea_level_pressure": 1008.3, "time": 1710536400, "uv": 9, "wind_avg": 8, "wind_direction": 110, "wind_direction_cardinal": "ESE", "wind_gust": 12 }, { "air_temperature": 19, "conditions": "Partly Cloudy", "feels_like": 19, "icon": "partly-cloudy-day", "local_day": 15, "local_hour": 17, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 28, "sea_level_pressure": 1008.1, "time": 1710540000, "uv": 7, "wind_avg": 8, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 12 }, { "air_temperature": 18, "conditions": "Partly Cloudy", "feels_like": 18, "icon": "partly-cloudy-day", "local_day": 15, "local_hour": 18, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 29, "sea_level_pressure": 1007.8, "time": 1710543600, "uv": 7, "wind_avg": 8, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 12 }, { "air_temperature": 17, "conditions": "Partly Cloudy", "feels_like": 17, "icon": "partly-cloudy-day", "local_day": 15, "local_hour": 19, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 31, "sea_level_pressure": 1007.6, "time": 1710547200, "uv": 7, "wind_avg": 8, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 12 }, { "air_temperature": 15, "conditions": "Partly Cloudy", "feels_like": 15, "icon": "partly-cloudy-day", "local_day": 15, "local_hour": 20, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 46, "sea_level_pressure": 1009.2, "time": 1710550800, "uv": 0, "wind_avg": 8, "wind_direction": 40, "wind_direction_cardinal": "NE", "wind_gust": 12 }, { "air_temperature": 13, "conditions": "Partly Cloudy", "feels_like": 13, "icon": "partly-cloudy-night", "local_day": 15, "local_hour": 21, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 54, "sea_level_pressure": 1010.9, "time": 1710554400, "uv": 0, "wind_avg": 8, "wind_direction": 40, "wind_direction_cardinal": "NE", "wind_gust": 12 }, { "air_temperature": 11, "conditions": "Partly Cloudy", "feels_like": 11, "icon": "partly-cloudy-night", "local_day": 15, "local_hour": 22, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 61, "sea_level_pressure": 1012.6, "time": 1710558000, "uv": 0, "wind_avg": 8, "wind_direction": 40, "wind_direction_cardinal": "NE", "wind_gust": 12 }, { "air_temperature": 10, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-night", "local_day": 15, "local_hour": 23, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 73, "sea_level_pressure": 1012.9, "time": 1710561600, "uv": 0, "wind_avg": 7, "wind_direction": 50, "wind_direction_cardinal": "NE", "wind_gust": 11 }, { "air_temperature": 9, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-night", "local_day": 16, "local_hour": 0, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 75, "sea_level_pressure": 1013.2, "time": 1710565200, "uv": 0, "wind_avg": 7, "wind_direction": 50, "wind_direction_cardinal": "NE", "wind_gust": 11 }, { "air_temperature": 9, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-night", "local_day": 16, "local_hour": 1, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 77, "sea_level_pressure": 1013.5, "time": 1710568800, "uv": 0, "wind_avg": 7, "wind_direction": 50, "wind_direction_cardinal": "NE", "wind_gust": 10 }, { "air_temperature": 9, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-night", "local_day": 16, "local_hour": 2, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 80, "sea_level_pressure": 1013.6, "time": 1710572400, "uv": 0, "wind_avg": 6, "wind_direction": 50, "wind_direction_cardinal": "NE", "wind_gust": 9 }, { "air_temperature": 9, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-night", "local_day": 16, "local_hour": 3, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 81, "sea_level_pressure": 1013.6, "time": 1710576000, "uv": 0, "wind_avg": 6, "wind_direction": 50, "wind_direction_cardinal": "NE", "wind_gust": 9 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 5, "icon": "partly-cloudy-night", "local_day": 16, "local_hour": 4, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 82, "sea_level_pressure": 1013.7, "time": 1710579600, "uv": 0, "wind_avg": 6, "wind_direction": 50, "wind_direction_cardinal": "NE", "wind_gust": 8 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 5, "icon": "partly-cloudy-night", "local_day": 16, "local_hour": 5, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 85, "sea_level_pressure": 1013.6, "time": 1710583200, "uv": 0, "wind_avg": 5, "wind_direction": 40, "wind_direction_cardinal": "NE", "wind_gust": 8 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 5, "icon": "partly-cloudy-night", "local_day": 16, "local_hour": 6, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 86, "sea_level_pressure": 1013.6, "time": 1710586800, "uv": 0, "wind_avg": 5, "wind_direction": 40, "wind_direction_cardinal": "NE", "wind_gust": 7 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 5, "icon": "partly-cloudy-night", "local_day": 16, "local_hour": 7, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 86, "sea_level_pressure": 1013.5, "time": 1710590400, "uv": 0, "wind_avg": 5, "wind_direction": 40, "wind_direction_cardinal": "NE", "wind_gust": 7 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-night", "local_day": 16, "local_hour": 8, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 87, "sea_level_pressure": 1013.8, "time": 1710594000, "uv": 0, "wind_avg": 4, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 6 }, { "air_temperature": 9, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-day", "local_day": 16, "local_hour": 9, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 84, "sea_level_pressure": 1014.1, "time": 1710597600, "uv": 0, "wind_avg": 4, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 6 }, { "air_temperature": 10, "conditions": "Partly Cloudy", "feels_like": 7, "icon": "partly-cloudy-day", "local_day": 16, "local_hour": 10, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 79, "sea_level_pressure": 1014.3, "time": 1710601200, "uv": 0, "wind_avg": 4, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 6 }, { "air_temperature": 11, "conditions": "Partly Cloudy", "feels_like": 11, "icon": "partly-cloudy-day", "local_day": 16, "local_hour": 11, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 69, "sea_level_pressure": 1013.7, "time": 1710604800, "uv": 3, "wind_avg": 4, "wind_direction": 120, "wind_direction_cardinal": "ESE", "wind_gust": 6 }, { "air_temperature": 13, "conditions": "Partly Cloudy", "feels_like": 13, "icon": "partly-cloudy-day", "local_day": 16, "local_hour": 12, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 61, "sea_level_pressure": 1013.1, "time": 1710608400, "uv": 3, "wind_avg": 4, "wind_direction": 120, "wind_direction_cardinal": "ESE", "wind_gust": 7 }, { "air_temperature": 15, "conditions": "Partly Cloudy", "feels_like": 15, "icon": "partly-cloudy-day", "local_day": 16, "local_hour": 13, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 54, "sea_level_pressure": 1012.6, "time": 1710612000, "uv": 3, "wind_avg": 5, "wind_direction": 120, "wind_direction_cardinal": "ESE", "wind_gust": 7 }, { "air_temperature": 16, "conditions": "Partly Cloudy", "feels_like": 16, "icon": "partly-cloudy-day", "local_day": 16, "local_hour": 14, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 38, "sea_level_pressure": 1011.3, "time": 1710615600, "uv": 7, "wind_avg": 5, "wind_direction": 190, "wind_direction_cardinal": "S", "wind_gust": 8 }, { "air_temperature": 18, "conditions": "Partly Cloudy", "feels_like": 18, "icon": "partly-cloudy-day", "local_day": 16, "local_hour": 15, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 35, "sea_level_pressure": 1010, "time": 1710619200, "uv": 7, "wind_avg": 6, "wind_direction": 190, "wind_direction_cardinal": "S", "wind_gust": 8 }, { "air_temperature": 19, "conditions": "Partly Cloudy", "feels_like": 19, "icon": "partly-cloudy-day", "local_day": 16, "local_hour": 16, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 33, "sea_level_pressure": 1008.7, "time": 1710622800, "uv": 7, "wind_avg": 6, "wind_direction": 190, "wind_direction_cardinal": "S", "wind_gust": 9 }, { "air_temperature": 19, "conditions": "Partly Cloudy", "feels_like": 19, "icon": "partly-cloudy-day", "local_day": 16, "local_hour": 17, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 29, "sea_level_pressure": 1008.6, "time": 1710626400, "uv": 5, "wind_avg": 6, "wind_direction": 30, "wind_direction_cardinal": "NNE", "wind_gust": 9 }, { "air_temperature": 19, "conditions": "Partly Cloudy", "feels_like": 19, "icon": "partly-cloudy-day", "local_day": 16, "local_hour": 18, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 29, "sea_level_pressure": 1008.6, "time": 1710630000, "uv": 5, "wind_avg": 6, "wind_direction": 30, "wind_direction_cardinal": "NNE", "wind_gust": 9 }, { "air_temperature": 18, "conditions": "Partly Cloudy", "feels_like": 18, "icon": "partly-cloudy-day", "local_day": 16, "local_hour": 19, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 31, "sea_level_pressure": 1008.6, "time": 1710633600, "uv": 5, "wind_avg": 6, "wind_direction": 30, "wind_direction_cardinal": "NNE", "wind_gust": 9 }, { "air_temperature": 16, "conditions": "Partly Cloudy", "feels_like": 16, "icon": "partly-cloudy-day", "local_day": 16, "local_hour": 20, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 46, "sea_level_pressure": 1009.7, "time": 1710637200, "uv": 0, "wind_avg": 6, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 9 }, { "air_temperature": 14, "conditions": "Partly Cloudy", "feels_like": 14, "icon": "partly-cloudy-night", "local_day": 16, "local_hour": 21, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 52, "sea_level_pressure": 1010.9, "time": 1710640800, "uv": 0, "wind_avg": 6, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 9 }, { "air_temperature": 12, "conditions": "Partly Cloudy", "feels_like": 12, "icon": "partly-cloudy-night", "local_day": 16, "local_hour": 22, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 5, "precip_type": "storm", "relative_humidity": 59, "sea_level_pressure": 1012, "time": 1710644400, "uv": 0, "wind_avg": 6, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 9 }, { "air_temperature": 11, "conditions": "Partly Cloudy", "feels_like": 11, "icon": "partly-cloudy-night", "local_day": 16, "local_hour": 23, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 5, "precip_type": "storm", "relative_humidity": 69, "sea_level_pressure": 1012.2, "time": 1710648000, "uv": 0, "wind_avg": 6, "wind_direction": 70, "wind_direction_cardinal": "ENE", "wind_gust": 9 }, { "air_temperature": 11, "conditions": "Partly Cloudy", "feels_like": 11, "icon": "partly-cloudy-night", "local_day": 17, "local_hour": 0, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 5, "precip_type": "storm", "relative_humidity": 72, "sea_level_pressure": 1012.4, "time": 1710651600, "uv": 0, "wind_avg": 6, "wind_direction": 70, "wind_direction_cardinal": "ENE", "wind_gust": 9 }, { "air_temperature": 10, "conditions": "Partly Cloudy", "feels_like": 10, "icon": "partly-cloudy-night", "local_day": 17, "local_hour": 1, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 10, "precip_type": "storm", "relative_humidity": 74, "sea_level_pressure": 1012.5, "time": 1710655200, "uv": 0, "wind_avg": 6, "wind_direction": 70, "wind_direction_cardinal": "ENE", "wind_gust": 8 }, { "air_temperature": 10, "conditions": "Partly Cloudy", "feels_like": 7, "icon": "partly-cloudy-night", "local_day": 17, "local_hour": 2, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 10, "precip_type": "storm", "relative_humidity": 77, "sea_level_pressure": 1012.6, "time": 1710658800, "uv": 0, "wind_avg": 5, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 8 }, { "air_temperature": 10, "conditions": "Partly Cloudy", "feels_like": 7, "icon": "partly-cloudy-night", "local_day": 17, "local_hour": 3, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 15, "precip_type": "storm", "relative_humidity": 78, "sea_level_pressure": 1012.6, "time": 1710662400, "uv": 0, "wind_avg": 5, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 8 }, { "air_temperature": 10, "conditions": "Partly Cloudy", "feels_like": 7, "icon": "partly-cloudy-night", "local_day": 17, "local_hour": 4, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 15, "precip_type": "storm", "relative_humidity": 79, "sea_level_pressure": 1012.6, "time": 1710666000, "uv": 0, "wind_avg": 5, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 7 }, { "air_temperature": 9, "conditions": "Partly Cloudy", "feels_like": 7, "icon": "partly-cloudy-night", "local_day": 17, "local_hour": 5, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 15, "precip_type": "storm", "relative_humidity": 79, "sea_level_pressure": 1012.6, "time": 1710669600, "uv": 0, "wind_avg": 5, "wind_direction": 40, "wind_direction_cardinal": "NE", "wind_gust": 7 }, { "air_temperature": 9, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-night", "local_day": 17, "local_hour": 6, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 15, "precip_type": "storm", "relative_humidity": 80, "sea_level_pressure": 1012.6, "time": 1710673200, "uv": 0, "wind_avg": 5, "wind_direction": 40, "wind_direction_cardinal": "NE", "wind_gust": 7 }, { "air_temperature": 9, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-night", "local_day": 17, "local_hour": 7, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 15, "precip_type": "storm", "relative_humidity": 81, "sea_level_pressure": 1012.5, "time": 1710676800, "uv": 0, "wind_avg": 5, "wind_direction": 40, "wind_direction_cardinal": "NE", "wind_gust": 7 }, { "air_temperature": 9, "conditions": "Thunderstorms Possible", "feels_like": 6, "icon": "possibly-thunderstorm-night", "local_day": 17, "local_hour": 8, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 20, "precip_type": "storm", "relative_humidity": 83, "sea_level_pressure": 1013, "time": 1710680400, "uv": 0, "wind_avg": 5, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 7 }, { "air_temperature": 9, "conditions": "Thunderstorms Possible", "feels_like": 6, "icon": "possibly-thunderstorm-day", "local_day": 17, "local_hour": 9, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 20, "precip_type": "storm", "relative_humidity": 81, "sea_level_pressure": 1013.5, "time": 1710684000, "uv": 0, "wind_avg": 5, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 8 }, { "air_temperature": 10, "conditions": "Thunderstorms Possible", "feels_like": 7, "icon": "possibly-thunderstorm-day", "local_day": 17, "local_hour": 10, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 25, "precip_type": "storm", "relative_humidity": 78, "sea_level_pressure": 1013.9, "time": 1710687600, "uv": 0, "wind_avg": 5, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 8 }, { "air_temperature": 11, "conditions": "Thunderstorms Possible", "feels_like": 11, "icon": "possibly-thunderstorm-day", "local_day": 17, "local_hour": 11, "precip": 0.09, "precip_icon": "chance-rain", "precip_probability": 25, "precip_type": "storm", "relative_humidity": 69, "sea_level_pressure": 1013.4, "time": 1710691200, "uv": 2, "wind_avg": 5, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 8 }, { "air_temperature": 12, "conditions": "Thunderstorms Possible", "feels_like": 12, "icon": "possibly-thunderstorm-day", "local_day": 17, "local_hour": 12, "precip": 0.17, "precip_icon": "chance-rain", "precip_probability": 25, "precip_type": "storm", "relative_humidity": 63, "sea_level_pressure": 1012.9, "time": 1710694800, "uv": 2, "wind_avg": 5, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 8 }, { "air_temperature": 14, "conditions": "Thunderstorms Possible", "feels_like": 14, "icon": "possibly-thunderstorm-day", "local_day": 17, "local_hour": 13, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 25, "precip_type": "storm", "relative_humidity": 58, "sea_level_pressure": 1012.4, "time": 1710698400, "uv": 2, "wind_avg": 6, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 9 }, { "air_temperature": 15, "conditions": "Thunderstorms Possible", "feels_like": 15, "icon": "possibly-thunderstorm-day", "local_day": 17, "local_hour": 14, "precip": 0.17, "precip_icon": "chance-rain", "precip_probability": 30, "precip_type": "storm", "relative_humidity": 46, "sea_level_pressure": 1011.1, "time": 1710702000, "uv": 7, "wind_avg": 6, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 9 }, { "air_temperature": 16, "conditions": "Thunderstorms Possible", "feels_like": 16, "icon": "possibly-thunderstorm-day", "local_day": 17, "local_hour": 15, "precip": 0.09, "precip_icon": "chance-rain", "precip_probability": 30, "precip_type": "storm", "relative_humidity": 44, "sea_level_pressure": 1009.8, "time": 1710705600, "uv": 7, "wind_avg": 6, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 10 }, { "air_temperature": 16, "conditions": "Thunderstorms Possible", "feels_like": 16, "icon": "possibly-thunderstorm-day", "local_day": 17, "local_hour": 16, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 35, "precip_type": "storm", "relative_humidity": 42, "sea_level_pressure": 1008.5, "time": 1710709200, "uv": 7, "wind_avg": 7, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 10 }, { "air_temperature": 16, "conditions": "Thunderstorms Possible", "feels_like": 16, "icon": "possibly-thunderstorm-day", "local_day": 17, "local_hour": 17, "precip": 0.09, "precip_icon": "chance-rain", "precip_probability": 35, "precip_type": "storm", "relative_humidity": 40, "sea_level_pressure": 1008.6, "time": 1710712800, "uv": 5, "wind_avg": 7, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 10 }, { "air_temperature": 16, "conditions": "Thunderstorms Possible", "feels_like": 16, "icon": "possibly-thunderstorm-day", "local_day": 17, "local_hour": 18, "precip": 0.17, "precip_icon": "chance-rain", "precip_probability": 35, "precip_type": "storm", "relative_humidity": 41, "sea_level_pressure": 1008.8, "time": 1710716400, "uv": 5, "wind_avg": 7, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 10 }, { "air_temperature": 15, "conditions": "Thunderstorms Possible", "feels_like": 15, "icon": "possibly-thunderstorm-day", "local_day": 17, "local_hour": 19, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 35, "precip_type": "storm", "relative_humidity": 44, "sea_level_pressure": 1008.9, "time": 1710720000, "uv": 5, "wind_avg": 7, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 10 }, { "air_temperature": 13, "conditions": "Rain Possible", "feels_like": 13, "icon": "possibly-rainy-day", "local_day": 17, "local_hour": 20, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 35, "precip_type": "rain", "relative_humidity": 52, "sea_level_pressure": 1010.2, "time": 1710723600, "uv": 0, "wind_avg": 7, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 10 }, { "air_temperature": 12, "conditions": "Rain Possible", "feels_like": 12, "icon": "possibly-rainy-night", "local_day": 17, "local_hour": 21, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 35, "precip_type": "rain", "relative_humidity": 58, "sea_level_pressure": 1011.5, "time": 1710727200, "uv": 0, "wind_avg": 7, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 10 }, { "air_temperature": 10, "conditions": "Rain Possible", "feels_like": 10, "icon": "possibly-rainy-night", "local_day": 17, "local_hour": 22, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 35, "precip_type": "rain", "relative_humidity": 63, "sea_level_pressure": 1012.8, "time": 1710730800, "uv": 0, "wind_avg": 7, "wind_direction": 60, "wind_direction_cardinal": "ENE", "wind_gust": 10 }, { "air_temperature": 10, "conditions": "Rain Possible", "feels_like": 6, "icon": "possibly-rainy-night", "local_day": 17, "local_hour": 23, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 35, "precip_type": "rain", "relative_humidity": 68, "sea_level_pressure": 1013.5, "time": 1710734400, "uv": 0, "wind_avg": 7, "wind_direction": 70, "wind_direction_cardinal": "ENE", "wind_gust": 10 }, { "air_temperature": 9, "conditions": "Rain Possible", "feels_like": 6, "icon": "possibly-rainy-night", "local_day": 18, "local_hour": 0, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 35, "precip_type": "rain", "relative_humidity": 70, "sea_level_pressure": 1014.1, "time": 1710738000, "uv": 0, "wind_avg": 7, "wind_direction": 70, "wind_direction_cardinal": "ENE", "wind_gust": 10 }, { "air_temperature": 9, "conditions": "Rain Possible", "feels_like": 6, "icon": "possibly-rainy-night", "local_day": 18, "local_hour": 1, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 35, "precip_type": "rain", "relative_humidity": 72, "sea_level_pressure": 1014.8, "time": 1710741600, "uv": 0, "wind_avg": 6, "wind_direction": 70, "wind_direction_cardinal": "ENE", "wind_gust": 10 }, { "air_temperature": 8, "conditions": "Rain Possible", "feels_like": 5, "icon": "possibly-rainy-night", "local_day": 18, "local_hour": 2, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 40, "precip_type": "rain", "relative_humidity": 73, "sea_level_pressure": 1014.9, "time": 1710745200, "uv": 0, "wind_avg": 6, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 10 }, { "air_temperature": 8, "conditions": "Rain Possible", "feels_like": 5, "icon": "possibly-rainy-night", "local_day": 18, "local_hour": 3, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 40, "precip_type": "rain", "relative_humidity": 74, "sea_level_pressure": 1015.1, "time": 1710748800, "uv": 0, "wind_avg": 6, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 9 }, { "air_temperature": 8, "conditions": "Rain Possible", "feels_like": 5, "icon": "possibly-rainy-night", "local_day": 18, "local_hour": 4, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 40, "precip_type": "rain", "relative_humidity": 75, "sea_level_pressure": 1015.2, "time": 1710752400, "uv": 0, "wind_avg": 6, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 9 }, { "air_temperature": 8, "conditions": "Rain Possible", "feels_like": 4, "icon": "possibly-rainy-night", "local_day": 18, "local_hour": 5, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 40, "precip_type": "rain", "relative_humidity": 76, "sea_level_pressure": 1015.8, "time": 1710756000, "uv": 0, "wind_avg": 6, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 9 }, { "air_temperature": 7, "conditions": "Rain Possible", "feels_like": 4, "icon": "possibly-rainy-night", "local_day": 18, "local_hour": 6, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 40, "precip_type": "rain", "relative_humidity": 77, "sea_level_pressure": 1016.4, "time": 1710759600, "uv": 0, "wind_avg": 6, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 9 }, { "air_temperature": 7, "conditions": "Rain Possible", "feels_like": 4, "icon": "possibly-rainy-night", "local_day": 18, "local_hour": 7, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 40, "precip_type": "rain", "relative_humidity": 78, "sea_level_pressure": 1017, "time": 1710763200, "uv": 0, "wind_avg": 6, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 9 }, { "air_temperature": 7, "conditions": "Rain Possible", "feels_like": 3, "icon": "possibly-rainy-day", "local_day": 18, "local_hour": 8, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 35, "precip_type": "rain", "relative_humidity": 81, "sea_level_pressure": 1018.2, "time": 1710766800, "uv": 0, "wind_avg": 6, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 10 }, { "air_temperature": 7, "conditions": "Rain Possible", "feels_like": 3, "icon": "possibly-rainy-day", "local_day": 18, "local_hour": 9, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 30, "precip_type": "rain", "relative_humidity": 81, "sea_level_pressure": 1019.4, "time": 1710770400, "uv": 0, "wind_avg": 7, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 10 }, { "air_temperature": 7, "conditions": "Rain Possible", "feels_like": 3, "icon": "possibly-rainy-day", "local_day": 18, "local_hour": 10, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 25, "precip_type": "rain", "relative_humidity": 80, "sea_level_pressure": 1020.6, "time": 1710774000, "uv": 0, "wind_avg": 7, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 11 }, { "air_temperature": 8, "conditions": "Rain Possible", "feels_like": 4, "icon": "possibly-rainy-day", "local_day": 18, "local_hour": 11, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 25, "precip_type": "rain", "relative_humidity": 74, "sea_level_pressure": 1021.4, "time": 1710777600, "uv": 0, "wind_avg": 7, "wind_direction": 90, "wind_direction_cardinal": "E", "wind_gust": 11 }, { "air_temperature": 8, "conditions": "Rain Possible", "feels_like": 5, "icon": "possibly-rainy-day", "local_day": 18, "local_hour": 12, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 20, "precip_type": "rain", "relative_humidity": 71, "sea_level_pressure": 1022.3, "time": 1710781200, "uv": 0, "wind_avg": 8, "wind_direction": 90, "wind_direction_cardinal": "E", "wind_gust": 11 }, { "air_temperature": 9, "conditions": "Rain Possible", "feels_like": 5, "icon": "possibly-rainy-day", "local_day": 18, "local_hour": 13, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 20, "precip_type": "rain", "relative_humidity": 68, "sea_level_pressure": 1023.2, "time": 1710784800, "uv": 0, "wind_avg": 8, "wind_direction": 90, "wind_direction_cardinal": "E", "wind_gust": 12 }, { "air_temperature": 9, "conditions": "Rain Possible", "feels_like": 6, "icon": "possibly-rainy-day", "local_day": 18, "local_hour": 14, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 20, "precip_type": "rain", "relative_humidity": 62, "sea_level_pressure": 1023.2, "time": 1710788400, "uv": 1, "wind_avg": 8, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 12 }, { "air_temperature": 10, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-day", "local_day": 18, "local_hour": 15, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 15, "precip_type": "rain", "relative_humidity": 61, "sea_level_pressure": 1023.1, "time": 1710792000, "uv": 1, "wind_avg": 8, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 12 }, { "air_temperature": 10, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-day", "local_day": 18, "local_hour": 16, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 15, "precip_type": "rain", "relative_humidity": 60, "sea_level_pressure": 1023.1, "time": 1710795600, "uv": 1, "wind_avg": 8, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 12 }, { "air_temperature": 10, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-day", "local_day": 18, "local_hour": 17, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 15, "precip_type": "rain", "relative_humidity": 57, "sea_level_pressure": 1023.2, "time": 1710799200, "uv": 1, "wind_avg": 8, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 11 }, { "air_temperature": 9, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-day", "local_day": 18, "local_hour": 18, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 15, "precip_type": "rain", "relative_humidity": 59, "sea_level_pressure": 1023.4, "time": 1710802800, "uv": 1, "wind_avg": 8, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 11 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 5, "icon": "partly-cloudy-day", "local_day": 18, "local_hour": 19, "precip": 0.25, "precip_icon": "chance-rain", "precip_probability": 15, "precip_type": "rain", "relative_humidity": 61, "sea_level_pressure": 1023.5, "time": 1710806400, "uv": 1, "wind_avg": 7, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 11 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 4, "icon": "partly-cloudy-day", "local_day": 18, "local_hour": 20, "precip": 0.17, "precip_icon": "chance-rain", "precip_probability": 10, "precip_type": "rain", "relative_humidity": 60, "sea_level_pressure": 1023.9, "time": 1710810000, "uv": 0, "wind_avg": 7, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 11 }, { "air_temperature": 7, "conditions": "Partly Cloudy", "feels_like": 3, "icon": "partly-cloudy-night", "local_day": 18, "local_hour": 21, "precip": 0.09, "precip_icon": "chance-rain", "precip_probability": 5, "precip_type": "rain", "relative_humidity": 63, "sea_level_pressure": 1024.3, "time": 1710813600, "uv": 0, "wind_avg": 7, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 10 }, { "air_temperature": 6, "conditions": "Partly Cloudy", "feels_like": 2, "icon": "partly-cloudy-night", "local_day": 18, "local_hour": 22, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 65, "sea_level_pressure": 1024.7, "time": 1710817200, "uv": 0, "wind_avg": 7, "wind_direction": 80, "wind_direction_cardinal": "E", "wind_gust": 10 }, { "air_temperature": 6, "conditions": "Partly Cloudy", "feels_like": 2, "icon": "partly-cloudy-night", "local_day": 18, "local_hour": 23, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 62, "sea_level_pressure": 1024.6, "time": 1710820800, "uv": 0, "wind_avg": 7, "wind_direction": 90, "wind_direction_cardinal": "E", "wind_gust": 10 }, { "air_temperature": 6, "conditions": "Partly Cloudy", "feels_like": 2, "icon": "partly-cloudy-night", "local_day": 19, "local_hour": 0, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 63, "sea_level_pressure": 1024.5, "time": 1710824400, "uv": 0, "wind_avg": 6, "wind_direction": 90, "wind_direction_cardinal": "E", "wind_gust": 10 }, { "air_temperature": 6, "conditions": "Partly Cloudy", "feels_like": 2, "icon": "partly-cloudy-night", "local_day": 19, "local_hour": 1, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 64, "sea_level_pressure": 1024.4, "time": 1710828000, "uv": 0, "wind_avg": 6, "wind_direction": 90, "wind_direction_cardinal": "E", "wind_gust": 9 }, { "air_temperature": 5, "conditions": "Partly Cloudy", "feels_like": 1, "icon": "partly-cloudy-night", "local_day": 19, "local_hour": 2, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 64, "sea_level_pressure": 1024.1, "time": 1710831600, "uv": 0, "wind_avg": 6, "wind_direction": 100, "wind_direction_cardinal": "E", "wind_gust": 9 }, { "air_temperature": 5, "conditions": "Partly Cloudy", "feels_like": 1, "icon": "partly-cloudy-night", "local_day": 19, "local_hour": 3, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 65, "sea_level_pressure": 1023.9, "time": 1710835200, "uv": 0, "wind_avg": 6, "wind_direction": 100, "wind_direction_cardinal": "E", "wind_gust": 9 }, { "air_temperature": 5, "conditions": "Partly Cloudy", "feels_like": 1, "icon": "partly-cloudy-night", "local_day": 19, "local_hour": 4, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 66, "sea_level_pressure": 1023.6, "time": 1710838800, "uv": 0, "wind_avg": 6, "wind_direction": 100, "wind_direction_cardinal": "E", "wind_gust": 8 }, { "air_temperature": 5, "conditions": "Partly Cloudy", "feels_like": 1, "icon": "partly-cloudy-night", "local_day": 19, "local_hour": 5, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 69, "sea_level_pressure": 1023.5, "time": 1710842400, "uv": 0, "wind_avg": 5, "wind_direction": 100, "wind_direction_cardinal": "E", "wind_gust": 8 }, { "air_temperature": 4, "conditions": "Partly Cloudy", "feels_like": 1, "icon": "partly-cloudy-night", "local_day": 19, "local_hour": 6, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 70, "sea_level_pressure": 1023.4, "time": 1710846000, "uv": 0, "wind_avg": 5, "wind_direction": 100, "wind_direction_cardinal": "E", "wind_gust": 8 }, { "air_temperature": 4, "conditions": "Partly Cloudy", "feels_like": 1, "icon": "partly-cloudy-night", "local_day": 19, "local_hour": 7, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 70, "sea_level_pressure": 1023.3, "time": 1710849600, "uv": 0, "wind_avg": 5, "wind_direction": 100, "wind_direction_cardinal": "E", "wind_gust": 7 }, { "air_temperature": 5, "conditions": "Partly Cloudy", "feels_like": 1, "icon": "partly-cloudy-day", "local_day": 19, "local_hour": 8, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 78, "sea_level_pressure": 1023.5, "time": 1710853200, "uv": 0, "wind_avg": 5, "wind_direction": 130, "wind_direction_cardinal": "SE", "wind_gust": 8 }, { "air_temperature": 6, "conditions": "Partly Cloudy", "feels_like": 2, "icon": "partly-cloudy-day", "local_day": 19, "local_hour": 9, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 74, "sea_level_pressure": 1023.8, "time": 1710856800, "uv": 0, "wind_avg": 5, "wind_direction": 130, "wind_direction_cardinal": "SE", "wind_gust": 8 }, { "air_temperature": 7, "conditions": "Partly Cloudy", "feels_like": 3, "icon": "partly-cloudy-day", "local_day": 19, "local_hour": 10, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 68, "sea_level_pressure": 1024, "time": 1710860400, "uv": 0, "wind_avg": 5, "wind_direction": 130, "wind_direction_cardinal": "SE", "wind_gust": 8 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 5, "icon": "partly-cloudy-day", "local_day": 19, "local_hour": 11, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 68, "sea_level_pressure": 1023.4, "time": 1710864000, "uv": 0, "wind_avg": 5, "wind_direction": 150, "wind_direction_cardinal": "SSE", "wind_gust": 8 }, { "air_temperature": 10, "conditions": "Partly Cloudy", "feels_like": 7, "icon": "partly-cloudy-day", "local_day": 19, "local_hour": 12, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 60, "sea_level_pressure": 1022.8, "time": 1710867600, "uv": 0, "wind_avg": 5, "wind_direction": 150, "wind_direction_cardinal": "SSE", "wind_gust": 8 }, { "air_temperature": 12, "conditions": "Partly Cloudy", "feels_like": 12, "icon": "partly-cloudy-day", "local_day": 19, "local_hour": 13, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 54, "sea_level_pressure": 1022.2, "time": 1710871200, "uv": 0, "wind_avg": 6, "wind_direction": 150, "wind_direction_cardinal": "SSE", "wind_gust": 8 }, { "air_temperature": 13, "conditions": "Partly Cloudy", "feels_like": 13, "icon": "partly-cloudy-day", "local_day": 19, "local_hour": 14, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 48, "sea_level_pressure": 1020.2, "time": 1710874800, "uv": 7, "wind_avg": 6, "wind_direction": 160, "wind_direction_cardinal": "SSE", "wind_gust": 9 }, { "air_temperature": 15, "conditions": "Partly Cloudy", "feels_like": 15, "icon": "partly-cloudy-day", "local_day": 19, "local_hour": 15, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 43, "sea_level_pressure": 1018.3, "time": 1710878400, "uv": 7, "wind_avg": 6, "wind_direction": 160, "wind_direction_cardinal": "SSE", "wind_gust": 9 }, { "air_temperature": 16, "conditions": "Partly Cloudy", "feels_like": 16, "icon": "partly-cloudy-day", "local_day": 19, "local_hour": 16, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 41, "sea_level_pressure": 1016.3, "time": 1710882000, "uv": 7, "wind_avg": 6, "wind_direction": 160, "wind_direction_cardinal": "SSE", "wind_gust": 9 }, { "air_temperature": 16, "conditions": "Partly Cloudy", "feels_like": 16, "icon": "partly-cloudy-day", "local_day": 19, "local_hour": 17, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 38, "sea_level_pressure": 1015.3, "time": 1710885600, "uv": 6, "wind_avg": 6, "wind_direction": 140, "wind_direction_cardinal": "SE", "wind_gust": 9 }, { "air_temperature": 16, "conditions": "Partly Cloudy", "feels_like": 16, "icon": "partly-cloudy-day", "local_day": 19, "local_hour": 18, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 39, "sea_level_pressure": 1014.4, "time": 1710889200, "uv": 6, "wind_avg": 6, "wind_direction": 140, "wind_direction_cardinal": "SE", "wind_gust": 8 }, { "air_temperature": 15, "conditions": "Partly Cloudy", "feels_like": 15, "icon": "partly-cloudy-day", "local_day": 19, "local_hour": 19, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 41, "sea_level_pressure": 1013.4, "time": 1710892800, "uv": 6, "wind_avg": 6, "wind_direction": 140, "wind_direction_cardinal": "SE", "wind_gust": 8 }, { "air_temperature": 13, "conditions": "Partly Cloudy", "feels_like": 13, "icon": "partly-cloudy-day", "local_day": 19, "local_hour": 20, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 46, "sea_level_pressure": 1014.5, "time": 1710896400, "uv": 0, "wind_avg": 5, "wind_direction": 140, "wind_direction_cardinal": "SE", "wind_gust": 8 }, { "air_temperature": 11, "conditions": "Partly Cloudy", "feels_like": 11, "icon": "partly-cloudy-night", "local_day": 19, "local_hour": 21, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 53, "sea_level_pressure": 1015.6, "time": 1710900000, "uv": 0, "wind_avg": 5, "wind_direction": 140, "wind_direction_cardinal": "SE", "wind_gust": 8 }, { "air_temperature": 10, "conditions": "Partly Cloudy", "feels_like": 8, "icon": "partly-cloudy-night", "local_day": 19, "local_hour": 22, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 58, "sea_level_pressure": 1016.6, "time": 1710903600, "uv": 0, "wind_avg": 5, "wind_direction": 140, "wind_direction_cardinal": "SE", "wind_gust": 7 }, { "air_temperature": 9, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-night", "local_day": 19, "local_hour": 23, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 63, "sea_level_pressure": 1016.8, "time": 1710907200, "uv": 0, "wind_avg": 5, "wind_direction": 130, "wind_direction_cardinal": "SE", "wind_gust": 7 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-night", "local_day": 20, "local_hour": 0, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 65, "sea_level_pressure": 1017, "time": 1710910800, "uv": 0, "wind_avg": 4, "wind_direction": 130, "wind_direction_cardinal": "SE", "wind_gust": 7 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-night", "local_day": 20, "local_hour": 1, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 67, "sea_level_pressure": 1017.2, "time": 1710914400, "uv": 0, "wind_avg": 4, "wind_direction": 130, "wind_direction_cardinal": "SE", "wind_gust": 6 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 5, "icon": "partly-cloudy-night", "local_day": 20, "local_hour": 2, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 65, "sea_level_pressure": 1016.8, "time": 1710918000, "uv": 0, "wind_avg": 4, "wind_direction": 150, "wind_direction_cardinal": "SSE", "wind_gust": 6 }, { "air_temperature": 7, "conditions": "Partly Cloudy", "feels_like": 5, "icon": "partly-cloudy-night", "local_day": 20, "local_hour": 3, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 66, "sea_level_pressure": 1016.4, "time": 1710921600, "uv": 0, "wind_avg": 4, "wind_direction": 150, "wind_direction_cardinal": "SSE", "wind_gust": 5 }, { "air_temperature": 7, "conditions": "Partly Cloudy", "feels_like": 5, "icon": "partly-cloudy-night", "local_day": 20, "local_hour": 4, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 68, "sea_level_pressure": 1016.1, "time": 1710925200, "uv": 0, "wind_avg": 4, "wind_direction": 150, "wind_direction_cardinal": "SSE", "wind_gust": 5 }, { "air_temperature": 7, "conditions": "Partly Cloudy", "feels_like": 4, "icon": "partly-cloudy-night", "local_day": 20, "local_hour": 5, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 70, "sea_level_pressure": 1015.7, "time": 1710928800, "uv": 0, "wind_avg": 3, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 5 }, { "air_temperature": 6, "conditions": "Partly Cloudy", "feels_like": 4, "icon": "partly-cloudy-night", "local_day": 20, "local_hour": 6, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 71, "sea_level_pressure": 1015.3, "time": 1710932400, "uv": 0, "wind_avg": 3, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 5 }, { "air_temperature": 7, "conditions": "Partly Cloudy", "feels_like": 4, "icon": "partly-cloudy-night", "local_day": 20, "local_hour": 7, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 70, "sea_level_pressure": 1014.9, "time": 1710936000, "uv": 0, "wind_avg": 3, "wind_direction": 210, "wind_direction_cardinal": "SSW", "wind_gust": 5 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 5, "icon": "partly-cloudy-day", "local_day": 20, "local_hour": 8, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 68, "sea_level_pressure": 1014.4, "time": 1710939600, "uv": 4, "wind_avg": 4, "wind_direction": 240, "wind_direction_cardinal": "WSW", "wind_gust": 6 }, { "air_temperature": 9, "conditions": "Partly Cloudy", "feels_like": 7, "icon": "partly-cloudy-day", "local_day": 20, "local_hour": 9, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 61, "sea_level_pressure": 1014, "time": 1710943200, "uv": 4, "wind_avg": 4, "wind_direction": 240, "wind_direction_cardinal": "WSW", "wind_gust": 7 }, { "air_temperature": 12, "conditions": "Partly Cloudy", "feels_like": 12, "icon": "partly-cloudy-day", "local_day": 20, "local_hour": 10, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 52, "sea_level_pressure": 1013.5, "time": 1710946800, "uv": 4, "wind_avg": 5, "wind_direction": 240, "wind_direction_cardinal": "WSW", "wind_gust": 7 }, { "air_temperature": 14, "conditions": "Partly Cloudy", "feels_like": 14, "icon": "partly-cloudy-day", "local_day": 20, "local_hour": 11, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 45, "sea_level_pressure": 1013, "time": 1710950400, "uv": 4, "wind_avg": 5, "wind_direction": 240, "wind_direction_cardinal": "WSW", "wind_gust": 8 }, { "air_temperature": 16, "conditions": "Partly Cloudy", "feels_like": 16, "icon": "partly-cloudy-day", "local_day": 20, "local_hour": 12, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 39, "sea_level_pressure": 1012.5, "time": 1710954000, "uv": 4, "wind_avg": 6, "wind_direction": 240, "wind_direction_cardinal": "WSW", "wind_gust": 9 }, { "air_temperature": 18, "conditions": "Partly Cloudy", "feels_like": 18, "icon": "partly-cloudy-day", "local_day": 20, "local_hour": 13, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 35, "sea_level_pressure": 1012, "time": 1710957600, "uv": 4, "wind_avg": 6, "wind_direction": 240, "wind_direction_cardinal": "WSW", "wind_gust": 10 }, { "air_temperature": 19, "conditions": "Partly Cloudy", "feels_like": 19, "icon": "partly-cloudy-day", "local_day": 20, "local_hour": 14, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 27, "sea_level_pressure": 1011.6, "time": 1710961200, "uv": 7, "wind_avg": 6, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 10 }, { "air_temperature": 19, "conditions": "Partly Cloudy", "feels_like": 19, "icon": "partly-cloudy-day", "local_day": 20, "local_hour": 15, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 25, "sea_level_pressure": 1011.2, "time": 1710964800, "uv": 7, "wind_avg": 7, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 10 }, { "air_temperature": 20, "conditions": "Partly Cloudy", "feels_like": 20, "icon": "partly-cloudy-day", "local_day": 20, "local_hour": 16, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 25, "sea_level_pressure": 1010.8, "time": 1710968400, "uv": 7, "wind_avg": 7, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 10 }, { "air_temperature": 20, "conditions": "Partly Cloudy", "feels_like": 20, "icon": "partly-cloudy-day", "local_day": 20, "local_hour": 17, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 25, "sea_level_pressure": 1010.4, "time": 1710972000, "uv": 7, "wind_avg": 7, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 10 }, { "air_temperature": 19, "conditions": "Partly Cloudy", "feels_like": 19, "icon": "partly-cloudy-day", "local_day": 20, "local_hour": 18, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 26, "sea_level_pressure": 1009.9, "time": 1710975600, "uv": 7, "wind_avg": 7, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 10 }, { "air_temperature": 18, "conditions": "Partly Cloudy", "feels_like": 18, "icon": "partly-cloudy-day", "local_day": 20, "local_hour": 19, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 27, "sea_level_pressure": 1009.5, "time": 1710979200, "uv": 7, "wind_avg": 7, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 10 }, { "air_temperature": 18, "conditions": "Partly Cloudy", "feels_like": 18, "icon": "partly-cloudy-day", "local_day": 20, "local_hour": 20, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 33, "sea_level_pressure": 1010.1, "time": 1710982800, "uv": 0, "wind_avg": 6, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 10 }, { "air_temperature": 16, "conditions": "Partly Cloudy", "feels_like": 16, "icon": "partly-cloudy-night", "local_day": 20, "local_hour": 21, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 36, "sea_level_pressure": 1010.6, "time": 1710986400, "uv": 0, "wind_avg": 6, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 9 }, { "air_temperature": 15, "conditions": "Partly Cloudy", "feels_like": 15, "icon": "partly-cloudy-night", "local_day": 20, "local_hour": 22, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 39, "sea_level_pressure": 1011.2, "time": 1710990000, "uv": 0, "wind_avg": 6, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 9 }, { "air_temperature": 14, "conditions": "Partly Cloudy", "feels_like": 14, "icon": "partly-cloudy-night", "local_day": 20, "local_hour": 23, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 43, "sea_level_pressure": 1011.7, "time": 1710993600, "uv": 0, "wind_avg": 5, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 8 }, { "air_temperature": 12, "conditions": "Partly Cloudy", "feels_like": 12, "icon": "partly-cloudy-night", "local_day": 21, "local_hour": 0, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 47, "sea_level_pressure": 1012.2, "time": 1710997200, "uv": 0, "wind_avg": 5, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 7 }, { "air_temperature": 11, "conditions": "Partly Cloudy", "feels_like": 11, "icon": "partly-cloudy-night", "local_day": 21, "local_hour": 1, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "storm", "relative_humidity": 51, "sea_level_pressure": 1012.8, "time": 1711000800, "uv": 0, "wind_avg": 4, "wind_direction": 280, "wind_direction_cardinal": "W", "wind_gust": 7 }, { "air_temperature": 10, "conditions": "Partly Cloudy", "feels_like": 8, "icon": "partly-cloudy-night", "local_day": 21, "local_hour": 2, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 48, "sea_level_pressure": 1013, "time": 1711004400, "uv": 0, "wind_avg": 4, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 7 }, { "air_temperature": 9, "conditions": "Partly Cloudy", "feels_like": 7, "icon": "partly-cloudy-night", "local_day": 21, "local_hour": 3, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 50, "sea_level_pressure": 1013.1, "time": 1711008000, "uv": 0, "wind_avg": 4, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 7 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-night", "local_day": 21, "local_hour": 4, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 53, "sea_level_pressure": 1013.3, "time": 1711011600, "uv": 0, "wind_avg": 4, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 6 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-night", "local_day": 21, "local_hour": 5, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 54, "sea_level_pressure": 1013.5, "time": 1711015200, "uv": 0, "wind_avg": 4, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 6 }, { "air_temperature": 8, "conditions": "Partly Cloudy", "feels_like": 6, "icon": "partly-cloudy-night", "local_day": 21, "local_hour": 6, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 53, "sea_level_pressure": 1013.7, "time": 1711018800, "uv": 0, "wind_avg": 4, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 6 }, { "air_temperature": 9, "conditions": "Partly Cloudy", "feels_like": 7, "icon": "partly-cloudy-night", "local_day": 21, "local_hour": 7, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 51, "sea_level_pressure": 1013.9, "time": 1711022400, "uv": 0, "wind_avg": 4, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 6 }, { "air_temperature": 10, "conditions": "Partly Cloudy", "feels_like": 10, "icon": "partly-cloudy-day", "local_day": 21, "local_hour": 8, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 43, "sea_level_pressure": 1013.8, "time": 1711026000, "uv": 4, "wind_avg": 5, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 7 }, { "air_temperature": 12, "conditions": "Partly Cloudy", "feels_like": 12, "icon": "partly-cloudy-day", "local_day": 21, "local_hour": 9, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 38, "sea_level_pressure": 1013.7, "time": 1711029600, "uv": 4, "wind_avg": 6, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 8 }, { "air_temperature": 14, "conditions": "Partly Cloudy", "feels_like": 14, "icon": "partly-cloudy-day", "local_day": 21, "local_hour": 10, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 33, "sea_level_pressure": 1013.6, "time": 1711033200, "uv": 4, "wind_avg": 6, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 9 }, { "air_temperature": 16, "conditions": "Partly Cloudy", "feels_like": 16, "icon": "partly-cloudy-day", "local_day": 21, "local_hour": 11, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 29, "sea_level_pressure": 1013.5, "time": 1711036800, "uv": 4, "wind_avg": 7, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 10 }, { "air_temperature": 18, "conditions": "Clear", "feels_like": 18, "icon": "clear-day", "local_day": 21, "local_hour": 12, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 25, "sea_level_pressure": 1013.4, "time": 1711040400, "uv": 4, "wind_avg": 8, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 11 }, { "air_temperature": 20, "conditions": "Clear", "feels_like": 20, "icon": "clear-day", "local_day": 21, "local_hour": 13, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 23, "sea_level_pressure": 1013.3, "time": 1711044000, "uv": 4, "wind_avg": 8, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 12 }, { "air_temperature": 21, "conditions": "Clear", "feels_like": 21, "icon": "clear-day", "local_day": 21, "local_hour": 14, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 18, "sea_level_pressure": 1013.1, "time": 1711047600, "uv": 7, "wind_avg": 8, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 12 }, { "air_temperature": 21, "conditions": "Clear", "feels_like": 21, "icon": "clear-day", "local_day": 21, "local_hour": 15, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 17, "sea_level_pressure": 1012.9, "time": 1711051200, "uv": 7, "wind_avg": 8, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 12 }, { "air_temperature": 22, "conditions": "Clear", "feels_like": 22, "icon": "clear-day", "local_day": 21, "local_hour": 16, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 17, "sea_level_pressure": 1012.7, "time": 1711054800, "uv": 7, "wind_avg": 8, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 12 }, { "air_temperature": 21, "conditions": "Clear", "feels_like": 21, "icon": "clear-day", "local_day": 21, "local_hour": 17, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 17, "sea_level_pressure": 1012.5, "time": 1711058400, "uv": 7, "wind_avg": 8, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 12 }, { "air_temperature": 21, "conditions": "Partly Cloudy", "feels_like": 21, "icon": "partly-cloudy-day", "local_day": 21, "local_hour": 18, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 18, "sea_level_pressure": 1012.3, "time": 1711062000, "uv": 7, "wind_avg": 8, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 12 }, { "air_temperature": 20, "conditions": "Partly Cloudy", "feels_like": 20, "icon": "partly-cloudy-day", "local_day": 21, "local_hour": 19, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 18, "sea_level_pressure": 1012.1, "time": 1711065600, "uv": 7, "wind_avg": 8, "wind_direction": 270, "wind_direction_cardinal": "W", "wind_gust": 12 }, { "air_temperature": 19, "conditions": "Partly Cloudy", "feels_like": 19, "icon": "partly-cloudy-day", "local_day": 21, "local_hour": 20, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 23, "sea_level_pressure": 1012.7, "time": 1711069200, "uv": 0, "wind_avg": 7, "wind_direction": 290, "wind_direction_cardinal": "WNW", "wind_gust": 11 }, { "air_temperature": 18, "conditions": "Partly Cloudy", "feels_like": 18, "icon": "partly-cloudy-night", "local_day": 21, "local_hour": 21, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 24, "sea_level_pressure": 1013.2, "time": 1711072800, "uv": 0, "wind_avg": 7, "wind_direction": 290, "wind_direction_cardinal": "WNW", "wind_gust": 11 }, { "air_temperature": 16, "conditions": "Partly Cloudy", "feels_like": 16, "icon": "partly-cloudy-night", "local_day": 21, "local_hour": 22, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 27, "sea_level_pressure": 1013.7, "time": 1711076400, "uv": 0, "wind_avg": 7, "wind_direction": 290, "wind_direction_cardinal": "WNW", "wind_gust": 10 }, { "air_temperature": 15, "conditions": "Partly Cloudy", "feels_like": 15, "icon": "partly-cloudy-night", "local_day": 21, "local_hour": 23, "precip": 0, "precip_icon": "chance-rain", "precip_probability": 0, "precip_type": "rain", "relative_humidity": 30, "sea_level_pressure": 1014.2, "time": 1711080000, "uv": 0, "wind_avg": 6, "wind_direction": 290, "wind_direction_cardinal": "WNW", "wind_gust": 9 } ] }, "latitude": (hidden), "location_name": (hidden), "longitude": (hidden), "source_id_conditions": 5, "status": { "status_code": 0, "status_message": "SUCCESS" }, "timezone": "America/Chicago", "timezone_offset_minutes": -300, "units": { "units_air_density": "kg/m3", "units_brightness": "lux", "units_distance": "km", "units_other": "metric", "units_precip": "mm", "units_pressure": "mb", "units_solar_radiation": "w/m2", "units_temp": "c", "units_wind": "mps" } } ```

I'm running HA on a raspberry pi, so core is running in a docker container which I have to exec into. Running that pip command just responded with a bunch of Requirement already satisfied, or something to that effect. Running hass complained that there was already another instance running, which makes sense. That did connect me with the error logging though, where I saw the aforementioned exception again. I'm fairly confident that the version of weatherflow4py it's running is 0.1.17. FWIW I did try 0.2.10 earlier, but that wouldn't get as far as entering in the token when trying to add a device.

jeeftor commented 8 months ago

So simply enough if outdoor_keys is missing a value it doesn't get set ...

This will probably have to be an iterative processes which I don't love ... but I think at least over time I'll figure stuff out I guess :)

jeeftor commented 8 months ago

The upgrade from 0.1 to 0.2 involves basically changing some other code - so I'll get a PR out tonight hopefully

gingerbreadassassin commented 8 months ago

made the appropriate changes from that PR (including the bot's mention of weather.py), restarted core, and... image success!

thanks @jeeftor !