Weather Kit REST API returning extremely stale data (up to 2+ hrs old) - users complaining

Hi all,

We recently completed the transition from Darksky to Weatherkit and have started receiving "inaccurate weather" complaints. We have successfully recreated the problem and believe the cause is stale data being returned.

Weather Kit returns a reportedTime (The time the provider reported the weather data.) in the metadata of each dataset. We are seeing that the value of reportedTime is often up to 2+ hours old. This doesn't matter so much for forecasted data but for currentWeather, forecastNextHour and weatherAlerts its very important to have relatively recent weather data.

Users are expecting to know what the current weather is outside but are receiving information that is 2hrs old. When its raining or snowing outside and we are reporting clear in some cases.

Questions.

  1. Are we doing something wrong or is this by design? This is how we are requesting 👇🏽
https://weatherkit.apple.com/api/v1/weather/en_US/25.76/-80.19?dataSets=currentWeather,forecastHourly,forecastDaily,weatherAlerts&country=US&timezone=America/New_York
  1. When I look at the Apple Weather app the weather appears to be up to date. Is the behavior different for swift? I assume the Apple Weather app is using swift and Weather Kit.

Thanks

Notice the readTime and reportedTime are 2+ hrs appart.

{
    "currentWeather": {
        "name": "CurrentWeather",
        "metadata": {
            "attributionURL": "https://weatherkit.apple.com/legal-attribution.html",
            "expireTime": "2023-03-07T20:17:00Z",
            "latitude": 26.090,
            "longitude": -80.380,
            "readTime": "2023-03-07T20:12:00Z",
            "reportedTime": "2023-03-07T18:00:00Z",
            "units": "m",
            "version": 1
        },

Edit: Disregard, this was actually a caching error on my end.

Did you figure out if this was something you could control on your end? Noticing 2 hour old CurrentWeather today for my location as well.

This is not actually something we can control. Apple technical support has confirmed it's a bug and that there is no workaround. No time frame on when it would be resolved was given.

We are currently transitioning the currentWeather data set to another API as a temporary fix. It's definitely hurting our product and we are losing users. The whole thing is actually kind of crazy to me. How can you have a successful weather app that delivers current weather that is always 2 hrs old?

I have encountered a similar (if not the same) issue. The /weather endpoint is returning outdated asOf values. For example, the value will be a timestamp from many hours ago, although there should be more present data available.

Weather Kit REST API returning extremely stale data (up to 2+ hrs old) - users complaining
 
 
Q