XeroAPI.Net icon indicating copy to clipboard operation
XeroAPI.Net copied to clipboard

Renew the token for the public authentication

Open mehmetaltuntas opened this issue 10 years ago • 0 comments

Hi there,

It has been a tough task to find out where to ask this question. I presume that this channel would be the right address.

I would like to point out how I am connecting my software with Xero and how to renew the token which I haven't figured out yet. It is not a mvc app.

The following block is basically establishing the connection once the Xero page redirects back to my web app:

string verificationCode = Request.QueryString["oauth_verifier"]; string token = Request.QueryString["oauth_token"]; Session["xero_verification_code"] = verificationCode; IOAuthSession oauthSession = IDispatch.COMMON.Xero.ServiceProvider.GetCurrentSession(); AccessToken accessToken = oauthSession.ExchangeRequestTokenForAccessToken(verificationCode); var repository = IDispatch.COMMON.Xero.ServiceProvider.GetCurrentRepository();

For instance; the end-user has done his tasks and logs out the web app. After 10 min, he logs in back to the web app and wants to export another 2 invoices into Xero. The system shouldn't redirect the page through Xero for the establishment, the system should let the user to do his task . However, I cannot initialise the connection with Xero because my web app throws me an error for the request token etc...

Here is how i try to re-initialise the connection - However, it doesn't work.

AccessToken accessToken = new AccessToken(); accessToken.Token = "xxx"; accessToken.TokenSecret = "xxxx"; IOAuthSession session = ServiceProvider.GetCurrentSession(); var newAccessToken = session.RenewAccessToken(accessToken, accessToken.SessionHandle); var repository = ServiceProvider.GetCurrentRepository(); // Get the organisation name from the api var currentOrganisation = repository.Organisation;

Could you please help me out in regards? Thank you a lot

mehmetaltuntas avatar Jun 10 '15 05:06 mehmetaltuntas