Quarter-Internal/app/main/controller.py

34 lines
1.1 KiB
Python
Raw Normal View History

2025-03-24 01:44:56 +00:00
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]