joshua_lyon
(Josh, SharpTools.io Dashboard)
January 13, 2016, 5:55pm
111
The outage affecting the ability to control devices for third party apps which were already authorized seems to have been resolved (at least for a vast number of people), but the issue with authorizing third party SmartApps is still causing issues for some third party integrations:
There were at least two issues:
The authorization workflow was broken for many third party integrations (those using HTTP GET instead of HTTP POST for the OAuth code exchange)
Third party SmartApps were unable to control local devices
Since you were already authenticated, the first item wouldn’t have applied to you and since you are on a hub V1, the second item likely wouldn’t have applied to you either!
For what it’s worth, it seems there may have been other issues too as some “rule” SmartApps weren’t working properly and Routines were having troubles too.
There was a change in the OAuth flow that requires the code to token exchange to be done with an HTTP POST instead of an HTTP GET. The documentation originally documented the OAuth code exchange as an HTTP GET and over time switched to recommending an HTTP POST. As of the platform update yesterday, it looks like the HTTP GET was unintentionally closed. I updated SharpTools last night to work around the authorization changes, but I wouldn’t expect most developers to jump at making changes to their applications. That being said, SmartThings is looking into potentially rolling back the change.