Last active
October 30, 2021 18:03
-
-
Save claudijd/4dec32edc3d696d3f161a8f190bbbf55 to your computer and use it in GitHub Desktop.
Example method to obtain a bearer token and obtain users uuid
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import json | |
import requests | |
import pdb | |
import os | |
BASE_URL = "https://auth.mozilla.auth0.com" | |
def get_bearer_token(): | |
url = BASE_URL + '/oauth/token' | |
headers = {'Content-Type': 'application/json'} | |
payload = { | |
'audience': 'api.sso.mozilla.com', | |
'scope': 'read:fullprofile', | |
'grant_type': 'client_credentials', | |
'client_id': os.environ.get('CLIENT_ID'), | |
'client_secret': os.environ.get('CLIENT_SECRET') | |
} | |
response = requests.post(url, data=json.dumps(payload), headers=headers) | |
if response.status_code == 200: | |
parsed_response_body = json.loads(response.text) | |
bearer_token = parsed_response_body['access_token'] | |
return bearer_token | |
return None | |
def get_uuid_by_email(bearer_token, email): | |
url = BASE_URL + '/v2/user/primary_email/' + email | |
headers = {'Authorization': 'Bearer ' + bearer_token} | |
response = requests.get(url, headers=headers) | |
if response.status_code == 200: | |
parsed_response_body = json.loads(response.text) | |
uuid = parsed_response_body['uuid']['value'] | |
return uuid | |
return None | |
bearer_token = get_bearer_token() | |
if bearer_token is None: | |
print("Failed to obtain bearer_token.") | |
exit(1) | |
uuid = get_uuid_by_email(bearer_token, "[email protected]") | |
print(uuid) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment