from flask import current_app import requests class GoogleUser: def __init__(self, id, email, first_name, last_name, full_name, phone=None): self.id = id self.email = email self.first_name = first_name self.last_name = last_name self.full_name = full_name self.phone_num = phone def get_users(auth_token): ignore_emails = ['noreply@quarterhomes.com'] response = requests.get( 'https://admin.googleapis.com/admin/directory/v1/users?' 'domain=quarterhomes.com&' 'orderBy=familyName', headers={'Authorization': f'Bearer {auth_token}'}) if response.status_code != 200: raise Exception('Call to google API failed...') users = response.json().get('users') return [GoogleUser( user['id'], user['primaryEmail'], user['name']['givenName'], user['name']['familyName'], user['name']['fullName'], user.get('recoveryPhone') ) for user in users if not user.get('primaryEmail') in ignore_emails]