uber-api

Uber Request API: Unable to get "request" scope


Every time I make a request to the sandbox using the /requests endpoint, I get a "Missing scope: request" error. I've double checked and triple checked that I'm requesting the correct scope in the auth request:

{'scopes': u'profile,history,request', 'redirect_uri': 'http://localhost:5000/submit', 'response_type': 'code'}

In the reply I get back from the server with the Auth token, it very clearly skips the request scope.

{u'last_authenticated': 1455088324, u'access_token': u'XX', u'expires_in': 2592000, u'token_type': u'Bearer', u'scope': u'profile history', u'refresh_token': u'XX'}

I've verified that I'm using the same account to authenticate as my developer account.

One possible issue, if I look at the developer console, it doesn't let me select the "request" scope. The checkbox is disabled. Could this be the problem? How do I enable it?

What else could I be missing? Thanks!


Solution

  • As the docs on the authorize endpoint says about the scope parameter:

    scope (optional) Space delimited list of grant scopes you would like to have permission to access on behalf of the user.

    The request scope works in sandbox mode only by default.
    To enable it in production mode you have to request access from Uber by using the contact form present in the Uber Developers dashboard specific to the app you have created on Uber.