Skip to content

Instantly share code, notes, and snippets.

@claudijd
Last active October 30, 2021 18:03
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save claudijd/4dec32edc3d696d3f161a8f190bbbf55 to your computer and use it in GitHub Desktop.
Save claudijd/4dec32edc3d696d3f161a8f190bbbf55 to your computer and use it in GitHub Desktop.
Example method to obtain a bearer token and obtain users uuid
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, "example@mozilla.com")
print(uuid)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment