WeatherKit fails with WDSJWTAuthenticatorServiceListener.Errors Code=2

WeatherKit consistently fails with the following error: WDSJWTAuthenticatorServiceListener.Errors Code=2 This happens on a physical device regardless of the troubleshooting steps I try. After the error occurs, the app uses a third-party fallback provider successfully.

The issue appears similar to failures reported by other developers on iOS 26, even though the WeatherKit entitlement and signing configuration seem valid.

I have verified the following:

•	The signed application binary contains the WeatherKit entitlement.
•	The embedded provisioning profile contains the WeatherKit entitlement.
•	The application identifier and team identifier match the provisioning profile.
•	The WeatherKit capability was disabled, saved, enabled again, and saved.
•	Xcode automatic signing generated a new provisioning profile after resetting the capability.
•	The project was cleaned and a fresh build was installed on the physical device.
•	Both the application and the device were restarted.
•	Location permission is granted and the app receives valid coordinates.
•	Network connectivity works correctly.
•	A non-Apple fallback weather provider successfully returns a forecast for the same coordinates.

Despite this, every WeatherKit request still fails with WDSJWTAuthenticatorServiceListener.Errors Code=2. Has anyone identified the cause of this error on iOS 17 or 26 or found an additional signing, entitlement, App ID, or provisioning step required to resolve it?

Environment: • iOS version: iOS: 26.6 (23G71) • Xcode version: 26.5 • Device: iPhone 14 Pro • WeatherKit API used: WeatherService.shared • Distribution method:TestFlight

Answered by DTS Engineer in 900599022

The vast majority of problems like this are caused by folks enabling the WeatherKit entitlement but not the WeatherKit app service. See this post.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

The vast majority of problems like this are caused by folks enabling the WeatherKit entitlement but not the WeatherKit app service. See this post.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"

Accepted Answer

Thank you so much

WeatherKit fails with WDSJWTAuthenticatorServiceListener.Errors Code=2
 
 
Q