Question

API call to Authorize from Postman

  • 24 September 2018
  • 14 replies
  • 4977 views

  • Participating Frequently
  • 7 replies

Hi all, I am trying to test the API call to Authorize RingCentral from Postman and I am receiving 'Could not complete oauth login' error. Attached the screen shot of my request.




Access Token URL: https://platform.devtest.ringcentral.com/restapi/oauth/token


Thanks!


14 replies

Try to specify "Token Name"  as "access_token"


Still same error.
I don't use postman very often and I don't even know how to bring up the UI as shown in your screenshot.

Could you please tell me how to reproduce the issue quickly?  Especially how can I bring up the "GET NEW ACCESS TOKEN" dialog?


select OAuth 2.0 from the dropdown and it will display 'NEW ACCESS TOKEN'
*and it will display 'GET NEW ACCESS TOKEN' button.


Above works like a charm for me.
When you click the "Request Token" button, there will be a modal window. Isn't it the same for you?

By the way, I am using PostMan Version 6.3.0 (6.3.0)  for macOS
I updated Postman and I am using same version. Now i am receiving the following error
{    "error" : "invalid_grant",    "error_description" : "Redirect URIs do not match",    "errors" : [ {      "errorCode" : "OAU-109",      "message" : "Redirect URIs do not match"    } ] 
}

I gave redirect uri as https://www.getpostman.com/oauth2/callback

Can you tell me what would be the redirect URI? I never worked on OAuth2 API call and I am really confused. 
 
It is working. I tried with another app in RingCentral and it is working now. Thanks for your help.
Hey Tyler, is it possible to make the authorize call automatically? or we need to login manually to authorize the request? 
Another scenario

I am trying the following method of call using Apex 

  1. Made an Authorize call to RC https://platform.devtest.ringcentral.com/restapi/oauth/authorize, Authorize call was successful and returned the 'code: XXXXXXXX' with response 
  2. Used the Code: XXXXXXX with params to make a token call https://platform.devtest.ringcentral.com/restapi/oauth/token but getting 400 error. 
Complete URL:

'https://platform.devtest.ringcentral.com/restapi/oauth/authorize?response_type=code&client_id=<CLIENT ID>&client_secret=<SECRET> &redirect_uri=<REDIRECT URI>&state=step2'

'https://platform.devtest.ringcentral.com/restapi/oauth/token?code=<AUTHIRIZE CODE FROM THE RESPONSE>&grant_type=password&client_id=<CLIENT ID>&client_secret=<SECRET> &redirect_uri=<REDIRECT URI>'


Any thoughts?
If you want to jump to Apex sooner or later. Why not simply try some programming language instead of Postman?

As far as I can tell, Apex is similar to Java.  Here is how we do the authorization in Java: https://github.com/ringcentral/ringcentral-java/blob/master/src/main/java/com/ringcentral/RestClient...
I highly recommend you to read https://github.com/ringcentral/ringcentral-ruby/blob/master/lib/ringcentral.rb  

170 line of code and covers all the things you need to know. Way more direct than trying everything with Postman.

For example: for authorization part: https://github.com/ringcentral/ringcentral-ruby/blob/master/lib/ringcentral.rb#L154-L165 
Before you get the token, use back authorization, otherwise use bearer authorization.

And in order to exchange code for token: https://github.com/ringcentral/ringcentral-ruby/blob/master/lib/ringcentral.rb#L49-L54
You can see that grant_type: 'authorization_code' and client_id & client_secret are not included in post body.(they are used in Basic authorization header instead)
And you don't have to use Apex because we don't have official SDK for Apex.

You can use Javascript instead because there are ways for Apex to communicate with JavaScript.  Check this video from me: https://www.youtube.com/watch?v=bf_Z391G2cw&t=1182s

RingCentral has official SDK for JS https://github.com/ringcentral/ringcentral-js

Here is a community version maintained by me: https://github.com/tylerlong/ringcentral-js-concise

Reply