Не удается создать псевдонимы при использовании API каталогов Google - PullRequest
0 голосов
/ 24 октября 2018

Код, который я имею, показан ниже.Моя проблема в том, что когда я пытаюсь обновить поле 'aliases', этого не произойдет.Что не так с моей реализацией?

store = file.Storage('token.json')
creds = store.get()
if not creds or creds.invalid:
    flow = client.flow_from_clientsecrets('credentials.json', SCOPES)
    creds = tools.run_flow(flow, store)
service = build('admin', 'directory_v1', http=creds.authorize(Http()))

body = { "name":{"familyName": "Aaab", "givenName": "Aaab"}, "password": "test@test", "primaryEmail": "testAAb@aaaa.no", "secondaryEmail": "test@gmail.com", 'aliases': ['testLeader@test.com']}
user_add = service.users().insert(body=body).execute()

Пользователь, созданный с его полями:

    {'kind': 'admin#directory#user', 'id': '106377021897584806221', 'etag': '"TN30oD80QTVK45AAxvl_wbzs4vs/4WNsaqcVI4y7ARsciDEXH7K8Hh4"', 'primaryEmail': 'testaab@test.no', 'name': {'givenName': 'Aaab', 'familyName': 'Aaab', 'fullName': 'Aaab Aaab'}, 'isAdmin': False, 'isDelegatedAdmin': False, 'lastLoginTime': '1970-01-01T00:00:00.000Z', 'creationTime': '2018-10-24T16:43:27.000Z', 'agreedToTerms': True, 'suspended': False, 'archived': False, 'changePasswordAtNextLogin': False, 'ipWhitelisted': False, 'emails': [{'address': 'testaab@test.no', 'primary': True}], 'customerId': 'C02dcimb3', 'orgUnitPath': '/', 'isMailboxSetup': True, 'isEnrolledIn2Sv': False, 'isEnforcedIn2Sv': False, 'includeInGlobalAddressList': True}

1 Ответ

0 голосов
/ 24 октября 2018

Кажется, проблема в том, что вы не можете указать псевдоним для пользователя при его создании в API-интерфейсе Google Directory.В документации указано здесь , для aliases поля нет.

Чтобы добавить псевдоним для пользователя, кажется, для этого используется другой вызов API.Вы должны вручную вставить каждый псевдоним, который вы хотите, используя alias.insert вызов API, как указано здесь .Кажется, все, что вам нужно, это уникальный userKey как поле для передачи вместе с псевдонимом для пользователя.

Точная документация Python для этого вызова API приведена в списке здесь .

Пример кода с использованием этой функции:

body = {"alias": "testLeader@test.com"}
service.users().aliases().insert(userKey=key, body=body).execute()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...