python-samples
python-samples copied to clipboard
Credentials.from_authorized_user_file refresh_token is missing
Expected Behavior
quickstart.py script will give me the last 10 login as described here: https://developers.google.com/admin-sdk/reports/v1/quickstart/python
Actual Behavior
I'm trying to run the quickstart.py with a downloaded token.json for Desktop apps.
{
"installed": {
"client_id": "************.apps.googleusercontent.com",
"project_id": "sentinel-314815",
"auth_uri": "https://accounts.google.com/o/oauth2/auth",
"token_uri": "https://oauth2.googleapis.com/token",
"auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
"client_secret": "*************",
"redirect_uris": [
"urn:ietf:wg:oauth:2.0:oob",
"http://localhost"
]
}
}
It gives me the following erro:
$ python quickstart.py
Traceback (most recent call last):
File "quickstart.py", line 50, in <module>
main()
File "quickstart.py", line 20, in main
creds = Credentials.from_authorized_user_file('token.json', SCOPES)
File "/home/zfejer/.local/lib/python3.8/site-packages/google/oauth2/credentials.py", line 326, in from_authorized_user_file
return cls.from_authorized_user_info(data, scopes)
File "/home/zfejer/.local/lib/python3.8/site-packages/google/oauth2/credentials.py", line 277, in from_authorized_user_info
raise ValueError(
ValueError: Authorized user info was not in the expected format, missing fields client_secret, client_id, refresh_token.
Seems like the refresh_token is missing from my token.json. I've just generated the token.json.
Steps to Reproduce the Problem
- follow the instruction on the page above
Specifications
- Python version (
python --version) Python 3.8.5 - OS (Mac/Linux/Windows) Ubuntu 20.04 on WSL2 (5.4.72-microsoft-standard-WSL2)