Directory API:群组成员

向群组添加成员

如需将成员添加到群组,请使用以下 POST 请求并添加向请求授权中所述的授权。群组成员可以是用户,也可以是其他群组。groupKey 是新成员的群组电子邮件地址或该群组的唯一 id。如需了解请求和响应属性,请参阅 API 参考文档

POST https://admin.googleapis.com/admin/directory/v1/groups/groupKey/members

如果您将某个群组添加为另一群组的成员,则最长可能会延迟 10 分钟,下级群组成员才会显示为上级群组成员。此外,该 API 会针对群组成员资格中的周期返回错误。例如,如果 group1 是 group2 的成员,则 group2 不能成为 group1 的成员。

JSON 请求

以下 JSON 请求显示了一个创建群组成员的示例请求正文。该成员的电子邮件地址为 liz@example.com,该成员在群组中的角色为 MEMBERPOST 请求针对 groupKey 使用 NNNNN:

POST https://admin.googleapis.com/admin/directory/v1/groups/NNNNN/members
{
   "email": "liz@example.com",
    "role": "MEMBER"
}

群组成员的 role 可以是:

  • OWNER - 此角色可以更改向群组发送邮件、添加或移除成员、更改成员角色、更改群组设置以及删除群组。OWNER 必须是该群组的成员。
  • MANAGER - 只有通过管理控制台启用 Google Workspace 后,才能使用此角色。“管理员”角色可以执行所有者角色执行的所有操作,但不能将成员设为所有者或删除群组。一个群组可以有多个 OWNER 和 MANAGER 成员。
  • MEMBER – 此角色可以订阅群组、查看讨论归档以及查看群组的成员资格列表。如需详细了解成员角色,请参阅管理帮助中心

JSON 响应

成功的响应将返回 HTTP 200 状态代码和成员的会员信息。id 是成员的唯一会员 ID:

{
   "kind": "directory#member",
   "id": "group member's unique ID",
   "email": "liz@example.com",
   "role": "MEMBER",
   "type": "GROUP"
  }

群组成员的 type 可以是:

  • GROUP – 该成员是其他群组。
  • MEMBER - 该成员是用户

更新群组成员资格

如需更新群组成员资格,请使用以下 PUT 请求并添加授权请求中所述的授权。groupKey 是群组的电子邮件地址或群组的唯一 idmemberKey 是用户或群组的主电子邮件地址、用户的别名电子邮件地址或用户的唯一 id。如需了解请求和响应属性,请参阅 API 参考文档

PUT https://admin.googleapis.com/admin/directory/v1/groups/groupKey/members/memberKey

JSON 请求

以下 JSON 请求显示了一个示例请求正文,用于更新群组成员资格设置。该成员的电子邮件地址为 liz@example.com,其在群组中的角色从 MEMBER 更改为 MANAGER。在此示例中,PUT 请求的 groupKey 为 NNNNN。要了解成员、所有者和管理员角色,请参阅管理帮助中心

PUT https://admin.googleapis.com/admin/directory/v1/groups/NNNNN/members/liz@example.com
{
   "email": "liz@example.com",
    "role": "MANAGER"
}

JSON 响应

成功的响应将返回 HTTP 200 状态代码和更新后的成员资格信息。id 是成员的唯一会员 ID:

{
   "kind": "directory#member",
   "id": "group member's unique ID",
   "email": "liz@example.com",
   "role": "MANAGER",
   "type": "GROUP"
  }

检索群组成员

如需检索群组成员资格,请使用以下 GET 请求并添加授权请求中所述的授权。groupKey 是群组的电子邮件地址或群组的唯一 idmemberKey 是用户或群组的主电子邮件地址、用户的别名电子邮件地址或用户的唯一 id。如需了解请求和响应属性,请参阅 API 参考文档

GET https://admin.googleapis.com/admin/directory/v1/groups/groupKey/members/memberKey

JSON 响应

成功的响应将返回 HTTP 200 状态代码和成员的会员信息。id 是成员的唯一会员 ID:

{
   "kind": "directory#member",
   "id": "group member's unique ID",
   "email": "liz@example.com",
   "role": "MANAGER",
   "type": "GROUP"
  }

检索所有群组成员

如需检索所有群组成员,请使用以下 GET 请求,并包含授权请求中所述的授权。groupKey 是群组的电子邮件地址或群组的唯一 id。可选的 roles 查询字符串是一个过滤条件,可让您按角色检索群组成员,并且生成的角色集合会按 roles 过滤条件的指定顺序排列。如需了解请求和响应属性,请参阅 API 参考。为确保可读性,此示例使用换行符:

GET https://admin.googleapis.com/admin/directory/v1/groups/groupKey/members
?pageToken=pagination token
&roles=one or more of OWNER,MANAGER,MEMBER separated by a comma
&maxResults=maximum results per response page

系统会按照成员电子邮件地址的字母顺序返回所有成员。对于包含大量成员的响应,请使用 pageToken 查询字符串。在分页的情况下,响应会返回 nextPageToken 属性,该属性包含下一页响应结果的令牌。您的下一个请求会将此令牌用作 pageToken 查询字符串值。

JSON 响应

成功的响应会返回 HTTP 200 状态代码和成员信息列表。id 是会员的唯一会员 ID。此响应中的后续群组成员列表有一个 nextPageToken

{
   "kind": "directory#members",
   "members": [
   {
    "kind": "directory#member",
    "id": "group member's unique ID",
    "email": "liz@example.com",
    "role": "MANAGER",
    "type": "GROUP"
   },
   {
    "kind": "directory#member",
    "id": "group member's unique ID",
    "email": "radhe@example.com",
    "role": "MANAGER",
    "type": "MEMBER"
   }
  ],
   "nextPageToken": "NNNNN"
}

删除群组中的成员资格

如需删除成员在群组中的成员资格,请使用以下 DELETE 请求并添加授权请求中所述的授权。groupKey 是群组的唯一 idmemberKey 是已删除用户或群组成员的主电子邮件地址或用户的唯一 id。如需了解请求和响应属性,请参阅 API 参考文档

DELETE https://admin.googleapis.com/admin/directory/v1/groups/groupKey/members/memberKey
例如,以下 DELETE 请求会删除 groupKey 为 nnn 且 memberKey 是用户的主电子邮件地址 liz@example.com 的成员:
DELETE https://admin.googleapis.com/admin/directory/v1/groups/nnnn/members/liz@example.com

成功的响应将返回 HTTP 200 状态代码

删除成员后:

  • 删除的成员不会再收到发送到该群组的电子邮件。
  • 从群组中移除成员不会删除其帐号。
  • 如果删除群组所有者,群组仍能正常工作。作为管理员,您可以管理群组或将所有权指派给其他群组成员