Directory API:群組成員

將成員新增至群組

如要將成員加入群組,請使用下列 POST 要求,並加入授權要求中所述的授權。群組成員可以是使用者或其他群組。groupKey 是新成員的群組電子郵件地址,或群組的專屬 id。如需要求和回應屬性,請參閱 API 參考資料

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

如果您將群組新增為其他群組的成員,最多可能要過 10 分鐘,下層群組的成員才會顯示為上層群組的成員。增加 API 時,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 時,才能使用這個角色。「管理員」角色除了將成員設為「擁有者」或刪除群組外,可執行所有由「擁有者」角色執行的各項操作。一個群組可以有多位擁有者和管理員。
  • 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 是群組的電子郵件地址或群組專屬的 id,而 memberKey 是使用者或群組的主要電子郵件地址、使用者的別名電子郵件地址,或使用者專屬的 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 是群組的電子郵件地址或群組專屬的 id,而 memberKey 是使用者或群組的主要電子郵件地址、使用者的別名電子郵件地址,或使用者專屬的 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 是群組的專屬 id,而 memberKey 是已刪除使用者或群組成員的主要電子郵件地址,或使用者專屬的 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 狀態碼

刪除成員後:

  • 成員一經移除,您就無法再收到傳送至該群組的電子郵件。
  • 從群組中移除成員並不會刪除該使用者的帳戶。
  • 即使您刪除群組擁有者,群組仍會照常運作。管理員可以接管群組,或是將擁有權指派給其他群組成員