Hello,
I'm integrating Box into our standalone rails Portal Web App using the Boxr SDK.
https://github.com/cburnette/boxr
I can successfully get the SSL set up, and then get either an enterprise_token or a user_token depending on the request sent.
However, Boxr explicitly discusses the use of refresh tokens in two explicit ways: (scheduled refresh and automatic refresh):
"The next way is to use an access token retrieved after going through the OAuth2 process. If your application is going to handle refreshing the tokens in a scheduled way (more on this later) then this is the way to go.
client = Boxr::Client.new('v2eAXqhZ28WIEpIWeAJcmyamLLt77icP') #a valid OAuth2 access token
# Boxr will raise an error if this token becomes invalid. It is up to your application to generate
# a new pair of access and refresh tokens in a timely manner.
If you want Boxr to automatically refresh the tokens once the access token becomes invalid you can supply a refresh token, along with your client_id and client_secret, and a block that will get invoked when the refresh occurs.
token_refresh_callback = lambda {|access, refresh, identifier| some_method_that_saves_them(access, refresh)}
client = Boxr::Client.new('zX3UjFwNerOy5PSWc2WI8aJgMHtAjs8T',
refresh_token: 'dvfzfCQoIcRi7r4Yeuar7mZnaghGWexXlX89sBaRy1hS9e5wFroVVOEM6bs0DwPQ',
client_id: 'kplh54vfeagt6jmi4kddg4xdswwvrw8y',
client_secret: 'sOsm9ZZ8L8svwrn9FsdulLQVwDizKueU',
&token_refresh_callback)
# By default Boxr will look for client_id and client_secret in your environment variables as
# BOX_CLIENT_ID and BOX_CLIENT_SECRET, respectively. You can omit the two optional parameters above
# if those are present.
# You can provide another parameter called as_user. Read about what that means here: https://developers.box.com/docs/#users-as-user
# You can provide yet another parameter called identifier. This can be used, for example, to
# hold the id of the user associated with this Boxr client. When the callback is invoked this value
I can't find any way to get a refresh token, either when using Boxr::get_enterprise_token or Boxr::get_user_token.
The documentation around the use of the refresh token with the SDK's seems incomplete. Can you please point me in the right direction?