-
Notifications
You must be signed in to change notification settings - Fork 90
Description
Issue Summary
The Opower integration in Home Assistant was failing with a KeyError: 'redirectUrl' error when attempting to authenticate with SMUD (Sacramento Municipal Utility District).
Investigation Steps
Initial Error Analysis:
The original error occurred because the Opower integration was expecting a 'redirectUrl' parameter in the authentication response, but this parameter was missing.
Authentication Flow Analysis:
I created an external Python script to test the SMUD authentication flow directly, which revealed:
- SMUD's authentication system has significantly changed
- The login process now involves different redirection patterns
- The expected 'redirectUrl' parameter is no longer present in responses
- The Okta-based SSO that the integration was designed for appears to be gone or changed
Authentication Testing:
I attempted to follow the new authentication flow but were unable to successfully authenticate, possibly due to:
- Changes in how SMUD handles account selection
- Additional security measures in the authentication process
- Potential multi-factor authentication requirements
Conclusions
The Opower integration for SMUD is failing because SMUD has fundamentally changed their authentication system, removing or altering the Okta-based SSO flow that the integration was designed to use. The missing 'redirectUrl' parameter indicates that the underlying API or authentication mechanism has changed substantially.
Versioning:
Opower: 0.9
HA:
- Core 2025.3.3
- Frontend 20250306.0