如何使用Google Directory API对members.get()调用“includeDerivedMembership”?

2024-06-07 04:25:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我目前正在用Python编写一个人力资源程序,该程序可以执行与管理Google工作区中的用户相关的特定任务。我正在尝试使用谷歌目录API自动添加和删除谷歌组的用户。要将成员添加到组中,我知道我必须在请求正文中有一个成员对象,如下所示:https://developers.google.com/admin-sdk/directory/reference/rest/v1/members/insert,但我不希望必须手动创建这些成员对象。我的想法是使用members.get方法在包含组织中每个成员的组中搜索用户,并返回其特定的成员对象

然而,我们建立完整团队组的方式是使用“组织中的所有用户”实用程序(由Google Workspace提供)作为组成员。这使得团队成员可以自动波动,所以我不打算改变这一点

经过一番探索,我找到了members.list方法的“includeDerivedMembership”参数,当该参数设置为true时,允许API返回组织中的整个用户列表。如果未设置,则不会返回完整列表

我的问题是,是否有人想出了一种使用members.get方法“includeDerivedMembership”的方法。我已尝试将参数附加到members.get的API查询,但没有乐趣

我真的不想遍历members.list方法返回的大量成员对象,但是如果没有更好的方法,我会:L

提前感谢,

特拉维斯W


Tags: 对象方法用户程序api列表参数get
1条回答
网友
1楼 · 发布于 2024-06-07 04:25:18

方法members.get返回带有以下信息的member resource object

{
  "kind": string,
  "email": string,
  "role": string,
  "etag": string,
  "type": string,
  "status": string,
  "delivery_settings": string,
  "id": string
}

如您所见,不幸的是,无法通过此方法检索DerivedMembership状态

作为一种解决方法,您可能需要调用members.list方法两次—一次将includeDerivedMembership设置为true,一次调用false。两个结果数组的重叠将允许您确定哪些成员是直接成员而不是派生成员

相关问题 更多 >