Это однажды работал идеально, а затем по необъяснимым причинам перестал включать пользовательские схемы в ответ без каких-либо изменений в коде. Объекты пользовательской схемы полностью отсутствуют в ответе, а не являются пустыми, т. е. ответ является эквивалентом установки project='basic'.
Никаких изменений в разрешениях не было. учетная запись службы или делегированный пользователь, и когда я вхожу в консоль администратора с помощью делегированного пользователя, я могу видеть и редактировать данные пользовательской схемы. Я пробовал использовать разные удаленные учетные записи с тем же результатом.
Есть ли другая причина, по которой ответ API не включает пользовательские схемы?
Я использую Python версии 3.11.5 и google-api-python-client 2.115.0.
Соответствующий раздел кода приведен ниже:
Код: Выделить всё
from google.oauth2 import service_account
from googleapiclient.discovery import build
service_account_key = {
"type": "service_account",
"project_id": "
",
"private_key_id": "",
"private_key": "-----BEGIN PRIVATE KEY----------END PRIVATE KEY-----/n",
"client_email": "",
"client_id": "",
"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_x509_cert_url": ""
}
scopes = ['https://www.googleapis.com/auth/admin.directory.user']
delegate = ''
credentials = service_account.Credentials.from_service_account_info(service_account_key, scopes=scopes)
credentials_delegated = credentials.with_subject(delegate)
api_query = 'isSuspended=False'
customer = ''
max_results = 500
service = build('admin', 'directory_v1', credentials=credentials_delegated, cache_discovery=False)
try:
response = service.users().list(customer=customer, query=api_query,
maxResults=max_results, projection='full').execute()
print(response)
except Exception as err:
print(err)
Я обнаружил причину проблемы. Пользовательская информация schmea исчезала только в том случае, если во время тестирования я возвращал только часть общего количества страниц в ответе. Итак, в приведенном выше фрагменте кода я извлекаю только первую страницу. Запустив полный скрипт, чтобы вернуть все страницы, доступны пользовательские схемы.
Я еще не до конца понимаю, как именно структурирован ответ с разбивкой на страницы, чтобы добиться такого эффекта, но это придется быть отдельным постом/вопросом.
Подробнее здесь: https://stackoverflow.com/questions/792 ... ction-full
Мобильная версия