0

我想使用 域共享联系人 API作为 python 客户端库的一部分。

我在其他情况下使用的流程: 创建凭据:

credentials = service_account.Credentials.from_service_account_info(....)

“创建”我稍后执行的服务对象

service = googleapiclient.discovery.build(service_name, api_version,credentials=credentials)

在域共享联系人 API 的情况下,我不知道使用Google API 发现服务的 service_name 或 api_version (如果有)。是否可以使用联系人或人员 API 创建/更新/删除域的外部联系人?

如果没有,使用此 API 的过程是在您的代码库中使用 OAuth 2.0 为 Web 服务器应用程序创建请求到 REST 端点,例如: https ://www.google.com/m8/feeds/contacts/example.com/full

4

1 回答 1

0

我设法仅通过使用域共享联系人 API 解决了我的问题

  1. 我创建了一个服务帐户。

  2. 使用此处的示例准备授权 (HTTP/REST) API 调用。特别注意附加索赔

  3. 因为我使用的是 Python,所以我安装了pyjwt并用它来创建和签署我的 JWT。作为秘密,我使用了 service_account.private_key:

    jwt.encode(jwt_claim_set, secret, algorithm="RS256")
    

然后根据用例(获取联系人,创建一个..)。我将 Google 令牌(签名的 JWT)分配给我的请求。

例子:

endpoint = 'https://www.google.com/m8/feeds/contacts/{}/{}'.format(your_own_domain, projection_value)
headers = {"Authorization": "Bearer " + token}
gsuite_get_response = requests.get(endpoint, headers=headers)
于 2021-10-28T08:46:44.110 回答