Question

Persist Access Token Life Time

  • 18 July 2017
  • 4 replies
  • 3029 views

I want to persist access token life time remain same once i got after login.is there any way to do it ?. other thing is can i get access token from back end without opening RingCentral Popup or login page ?


we are having C# and JavaScript base application.


4 replies

"persist access token life time" is impossible for security reasons. What you can do is to refresh your access token periodically to make it always non-expired.  Refresh token can live as long as a week, so you can refresh access token once a week to make it non-expired.
"can i get access token from back end without opening RingCentral Popup or login page"

Please read http://ringcentral-api-docs.readthedocs.io/en/latest/oauth/#authorization-flows . If you use authorization code flow, RingCentral Popup or login page is inevitable. If you use password flow, you don't need RingCentral login page because you can login via code programmatically. However, not every app supports password flow for security reasons.
Also, if the access token and refresh tokens are captured and maintained at the backend (maybe in a db), you can run a script to keep the access token/refresh token pair active and the user's auth will not expire. 

Since the Access token has expiration time of 60 minutes , one of the easy and better way would be use Cache and storing it into Cache for 30 mins rather than persisting it into a database.

This will also help in efficient call of API reducing the rate limit issue. Storing in DB will not be a good idea as it will be expiring after 60 mins and so no use of persisting it .

You can also generate the access token from refresh token whose expiration time is longer compared to access token

"other thing is can i get access token from back end without opening RingCentral Popup or login page ? "

For grant type =Authorization code, you will be compulsorily getting login page , but you can you can avoid it if you use grant type =Password


Reply