Unable to authorize devices in my smart app


(Saikrishnan Ranganathan) #1

Hello,

I am trying to authorize a device in my smart app and I get the following error:

Please select atleast one device to authorize.

A quick check in chrome console reveals the following response:
{“error”:true,“type”:“Validation”,“message”:{“errors”:[“state does not pass custom validation”]}}

Screenshot here - https://s3-ap-southeast-1.amazonaws.com/uploads-ap.hipchat.com/38838/1000109/6DXMrSfns6XSHbY/Screen%20Shot%202015-09-03%20at%2021.06.19.png

Anyone faced this issue before?


(sidjohn1) #2

Posting a link to the code would help as well.


(Rltoscano) #3

I have the same problem. I made sure my things were in an “active” state, that I published my app, that I’m using the same user account for the app owner and the user who is authorizing the app, but it still fails with the same error message as illustrated in the first post.


(Rltoscano) #4

I finally got it to work with a new app but still don’t understand why it doesn’t work with the original app. First I created a new app, enabled oauth, and copy pasted some “preferences” code from one of the tutorials:

preferences {
    section("Control these switches...") {
        input "switches", "capability.switch"
    }
    section("Control these motion sensors...") {
        input "motion", "capability.motionSensor"
    }
}

I hit the authorization URL and it didn’t work, with the same error. I then went back to my app, published it to me, and tried again. On the second request to the authorization URL, I got a 500:

Then I retried a third time and it worked. I was able to get the auth code. One minor detail I noticed was that before I hit the authorize button on the third try, the device I previously selected in the second try was already pre-selected. Which makes me think that the second try went through, but generating the code failed or something.

I am still trying to figure out why my original app doesn’t work even though I have the same code.


(Rltoscano) #5

OK it doesn’t work after the third try. I keep getting a 500 on both apps. Would appreciate some help from the dev team. Is there only allowed one outstanding auth code per client ID? What happens if the auth code is not claimed? When does it expire?


(Rltoscano) #6

Some more data. I get the “Please select atleast one device to authorize.” error if I only allow a user to select “motionSensors” capable devices in the preferences page. If I switch from “motionSensors” to “switches”, it works.