oauth-pythonclient icon indicating copy to clipboard operation
oauth-pythonclient copied to clipboard

get_bearer_token and refresh should return the parsed JSON response.

Open dreid opened this issue 4 years ago • 4 comments

Currently these only set the values in the json response as attributes of the AuthClient this makes it difficult to know which attributes will be available when, for instance, get_bearer_token sets realm_id but refresh doesn't.

We want results of talking to AuthClient to be able to participate in our strict runtime type checking which involves converting a primitive python type into an attrs dataclass. Having to construct this dictionary out of the AuthClient before we can do that is annoying and error prone.

dreid avatar Oct 29 '19 23:10 dreid

Thanks @dreid. I'll see about returning the JSON response.

fjolin-intuit avatar Nov 15 '19 22:11 fjolin-intuit

@dreid We are opening up our clients for contribution for hacktoberfest.

fjolin-intuit avatar Sep 10 '20 19:09 fjolin-intuit

currently, because it doesn't return JSON, it seems to return nothing. But after Intuit hits your callback url it implicitly passes the access_token and refresh_ token into the auth_client object.

So you write a callback that looks like this: Screen Shot 2021-01-19 at 11 40 00 AM

and then in the next line, after pdb you can access the access_token like this: auth_client.access_token auth_client.refresh_token

nothing is returned from auth_client.get_bearer_token(auth_code) it is only implicitly added to the auth_client object itself.

b4thestorm avatar Jan 19 '21 16:01 b4thestorm

Hi @b4thestorm - This is the expected behavior with get_bearer_token making the request : send_request('POST', self.token_endpoint, headers, self, body=urlencode(body), session=self) and if things looks good we set the dictionary in that set_attributes(obj, response_json): method. As this isn't a breaking issue - I thought I'd let the community collaborate on it but if enough folks are being confused by it we can have a look at returning the parsed JSON.

fjolin-intuit avatar Jan 19 '21 17:01 fjolin-intuit