Ecobee API change

Looks like in Dec, ecobee is changing it’s API.
I’m using an OLD version of openhab and the binding(at least 3 years old).
My question…will this affect that binding?

Thank you for being a valued
ecobee partner.
We’re excited to announce that we are in the process of updating our authentication systems to better serve our customers and protect their privacy.
Please review this email closely as it outlines several changes that may affect how your systems are integrated with the ecobee API.
Upcoming API Changes Effective December 1, 2020
The following changes will go into effect on December 1, 2020. If you are unsure whether these changes will have an impact on your solution today, we encourage you to discuss it with your technology team, program manager, other stakeholders and ecobee partners.
Access/Refresh Token Format Changes
Starting from December 1, 2020, ecobee access tokens will no longer be returned as opaque 32-character strings. Access tokens will now be JWTs, which are considerably longer and uses a wider character set. Our JWTs follow the RFC7575 standard for JSON Web Signature tokens.
To ensure your application will continue to work, you will need to ensure that your application supports the following changes:

  • Access tokens will be up to 7KB in length, and includes upper/lower case alphanumeric characters, hyphens, underscores, and periods.
  • Refresh tokens can be of varying lengths and can contain non-alphanumeric characters.
    Authorization Code Changes
  • The Redirect URI associated with your registered application should be a semi-colon separated list of absolute URLs that start with https://. We do not accept http:// protocol links.
    PIN Authorization Changes
  • PINs will become 10 character alphanumeric strings.
  • This flow is only recommended in situations where a user is interacting with a device that cannot easily use a web-based login form; we recommend migrating to the Authorization Code strategy for a better user experience.

Early Access Program
For developers who would like to switch over to the new authorization flows before the December 1st deadline, there is an Early Access Program (EAP) available immediately.

Next Steps
If you have any questions about these upcoming changes to the ecobee API, please submit a ticket on our [Help Center]

I would be surprised if it continues to work, maybe time to upgrade to the newer and supported ecobee binding.

I’m planning to look at this for the OH2/3 version of the binding. I don’t know the implications yet. If they aren’t planning to support backwards compatibility, I doubt that the existing OH1 and OH2 bindings will work after the change.

Well, after 4 days they have not responded to my request to be added to the Early Access Program. Pretty sad actually.

Sad indeed…they seemed to be getting better after their stability issues with the servers last last year…but in my mind i keep thinking they will fold someday…if you can’t keep servers up…your product is doomed…i wish they’d release a local API to build your own server with…that would be the ideal option.

Nothing would please me more than being able to control the devices directly without having to go through their cloud service. I still see bursts of errors in my logs every few days. So they likely haven’t sorted out all their infrastructure issues…

Any reply from Ecobee on your request for a Dev account?

Yes. I finally got a response after tweeting to their VP of Technology. :wink:

As soon as the test environment is ready, they’ll give me access.

Note that I’ll be posting updates on the main Ecobee binding forum thread.

Please tell me the change, if viable, will come to the latest stable 2.x line of openhab as well and not just 3.x

Only if you say pretty please. :wink: :laughing:

If any changes are required (which at the moment I don’t think there will be), I’ll make the change in 2.5.x and 3.0.

1 Like

Pretty please :slight_smile:

1 Like

Pretty please (still running v2.4) that you helped me out with many months ago.

Best, Jay

As soon as they get back to me with a test environment, I’ll verify what needs to change, if anything. It’s getting late. I pinged them again a couple days ago.

The plan is to change both 2.5.x and 3.0 (assuming a change is necessary). @jwiseman Are you running the 2.5.x version on 2.4?

I made a mistake stating 2.4, I’m still running the 1.x version of Ecobee. I understand I’ll need to upgrade to 2.5 when the API is fixed and change some items to get it working again.

openhab> list -s | grep ecobee
289 │ Active │ 80 │ 1.13.0 │ org.openhab.action.ecobee
290 │ Active │ 80 │ 1.13.0 │ org.openhab.binding.ecobee

Best, Jay

I’m running 3.0.0-SNAPSHOT - Build #2039 which has the new api changes and I’m getting errors when trying to enter the pin in My Apps on the ecobee website. They pin is in the format ‘XXXX-YYYY’:

image

Thats the correct format for the new PINs. I have no idea Ecobee would be throwing an error.

The interface for entering the PIN has changed. Are you seeing that new interface?

No I still see the old interface. I’ll email ecobee support

After you enter the XXXX-XXXX PIN, you should see this.

Followed by this.

Followed by this.

I don’t see anything like that. BTW, I have one of the original smart thermostats. This is the My Apps panel:

Then I get this when I enter the pin and press the “Install App” button:

Hmm. What app is that that you’re using?

Have you tried doing it from the Ecobee web portal, or does that not work for that model thermostat?

https://www.ecobee.com/consumerportal/index.html