管理群組

本頁說明如何透過 Directory API 管理 Google 網路論壇:

  • 建立群組
  • 更新群組
  • 新增群組別名
  • 擷取群組
  • 擷取網域或帳戶的所有群組
  • 擷取成員的所有群組
  • 擷取所有群組別名
  • 刪除群組別名
  • 刪除群組

建立群組

如要建立群組,請使用以下 POST 要求並附上授權 描述 授權要求。 您可以為與該帳戶相關聯的任何網域建立群組。如果是查詢字串,「request」 和回應屬性,請參閱 groups.insert 方法

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

下列 JSON 要求顯示了建立群組的要求主體範例。群組的電子郵件地址 地址為 sales_group@example.com:

{
   "email": "sales_group@example.com",
   "name": "Sales Group",
   "description": "This is the Sales group."
}

成功的回應會傳回 HTTP 201 狀態碼 和新群組的屬性

更新群組

如要更新群組設定,請使用下列 PUT 要求並加入 授權程序 授權要求groupKey 是群組的電子郵件地址、任何群組別名的電子郵件地址。 或是特定群組的專屬「id」如果是查詢字串、要求和回應屬性 請參閱 groups.update 方法

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

一般而言,Google 建議您不要使用群組的電子郵件地址做為永久資料的關鍵 因為電子郵件地址可能會變動

在以下範例中,不重複的 groupKeynnn,而該群組的 名稱為 APAC 銷售集團:

PUT https://admin.googleapis.com/admin/directory/v1/groups/nnn
{
    "email": "sales_group@example.com",
    "name": "APAC Sales Group"
}

如要申請更新,只需在要求中提交更新的資訊即可。不要 必須在要求中輸入群組的所有屬性。

成功的回應會傳回 HTTP 201 狀態碼 以及新群組的屬性:

{
    "kind": "directory#groups",
    "id": "group's unique ID",
    "etag": "group's unique ETag",
    "email": "sales_group@example.com",
    "name": "APAC Sales Group",
    "directMembersCount": "5",
    "description": "This is the APAC sales group.",
    "adminCreated": true,
    "aliases": [
     {
        "alias": "best_sales_group@example.com"
     }
    ],
    "nonEditableAliases: [
     {
        "alias": "liz@test.com"
     }
    ]
}

新增群組別名

如要新增群組別名,請使用下列 POST 要求並附上授權 中所述的授權要求中所述。 groupKey 是群組的電子郵件地址,或任何群組別名電子郵件地址,或 群組專屬的「id」如需查詢字串、要求和回應屬性的相關資訊,請參閱 groups 資源

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

一般而言,Google 建議您不要使用群組的電子郵件地址做為永久資料的關鍵 因為電子郵件地址可能會變動

下列 JSON 要求顯示了建立群組別名的範例要求。 groupKey 是群組的唯一id,以 NNNN 代表

POST https://admin.googleapis.com/admin/directory/v1/groups/NNNN/aliases
{
    "alias": "best_sales_group@example.com"
}

成功的回應會傳回 HTTP 201 狀態碼 和新群組別名的屬性。

擷取群組

如要擷取群組,請使用下列 GET 要求並加入授權 描述 授權要求groupKey 是群組的電子郵件地址,或任何群組別名電子郵件地址,或 群組專屬的「id」如需查詢字串、要求和回應屬性的相關資訊,請參閱 groups.get 方法
GET https://admin.googleapis.com/admin/directory/v1/groups/groupKey

一般而言,Google 建議您不要使用群組的電子郵件地址做為永久資料的關鍵 因為電子郵件地址可能會變動

在以下範例中,專屬 groupKey ID 為 nnnn

GET https://admin.googleapis.com/admin/directory/v1/groups/nnnn

成功的回應會傳回 HTTP 200 狀態碼 以及群組設定:

{
    "kind": "directory#groups",
    "id": "group's unique ID",
    "etag": "group's unique ETag",
    "email": "sales_group@example.com",
    "name": "APAC Sales Group",
    "directMembersCount": "5",
    "description": "This is the APAC sales group.",
    "adminCreated": true,
    "aliases": [
     {
        "alias": "best_sales_group@example.com"
     }
    ],
    "nonEditableAliases: [
     {
        "alias": "liz@test.com"
     }
    ]
}

擷取網域或帳戶的所有群組

如要擷取特定網域或帳戶的所有群組,請使用下列GET 請求並附上 授權要求。查詢 字串、要求和回應屬性,請參閱 groups.list 方法。 為了方便閱讀,這個範例使用了一行回傳:

GET https://admin.googleapis.com/admin/directory/v1/groups?domain=domain name
&customer=my_customer or customerId&pageToken=pagination token
&maxResults=max results

擷取網域或帳戶的所有群組時,請考慮下列事項:

  • 子網域的所有群組:使用 domain 引數搭配網域名稱。
  • 帳戶的所有群組:使用 customer 引數並搭配下列任一參數 my_customer 或帳戶的 customerId 值。做為帳戶 系統管理員,請使用 my_customer 字串來代表您帳戶的 customerId。如果您是存取經銷商客戶帳戶的經銷商,請使用 經銷商帳戶的 customerId。如果是 customerId 值,請使用 帳戶主網域名稱在 擷取網域中的所有使用者 作業請求。產生的回應會包含 customerId 值。
  • 同時使用 domaincustomer 引數: Directory API 會傳回 domain 的所有群組。
  • 不使用 domaincustomer 引數: Directory API 會傳回與帳戶相關聯的所有群組 my_customer。這是系統管理員帳戶的 customerId 要求。
  • 同時使用 customeruserKey 引數: Directory API 傳回錯誤。您必須以這些 引數。

在以下範例中,帳戶管理員使用 my_customer 要求系統列出 您帳戶的群組:

GET https://admin.googleapis.com/admin/directory/v1/groups?domain=sales.com&customer=my_customer&maxResults=2

在下列範例中,經銷商管理員的要求傳回經銷商帳戶的所有群組 使用 customerId C03az79cb。每個回應頁面傳回的結果數量上限為 2 個。 這個回應中的後續使用者清單有 nextPageToken

GET https://admin.googleapis.com/admin/directory/v1/groups?domain=sales.com&customer=C03az79cb&maxResults=2

成功的回應會傳回 HTTP 200 狀態碼 會依群組電子郵件中的字母順序排列群組:

{
"kind": "directory#groups",
    "groups": [
     {
      "kind": "directory#groups",
      "id": "group's unique ID",
      "etag": "group's unique ETag",
      "email": "support@sales.com",
      "name": "Sales support",
      "directMembersCount": "6",
      "description": "The sales support group",
      "adminCreated": true
     },
     {
      "kind": "directory#groups",
      "id": "group's unique ID",
      "etag": "group's unique ETag",
      "email": "travel@sales.com",
      "name": "Sales travel",
      "directMembersCount": "2",
      "description": "The travel group supporting sales",
      "adminCreated": false,
      "aliases": [
       {
         "alias": "best_sales_group@example.com"
       }
      ],
      "nonEditableAliases: [
       {
         "alias": "liz@test.com"
       }
      ]
     },
  "nextPageToken": "NNNN"
  }

擷取成員的所有群組

如要擷取成員包含訂閱項目的所有群組,請使用下列 GET 請求並附上 授權要求。為了方便閱讀 這個範例使用 line 傳回:

GET https://admin.googleapis.com/admin/directory/v1/groups?userKey=user key
?pageToken=pagination token
&maxResults=maximum results per response page
  • 成員可以是使用者或群組。
  • userKey 可以是使用者的主要電子郵件地址、使用者的別名電子郵件地址 群組的主要電子郵件地址、群組電子郵件別名,或使用者的專屬id 可透過 擷取使用者作業
  • userKey 中指定的使用者或群組必須屬於您的網域。
  • 使用 pageToken 查詢字串處理含有大量群組的回應。在 為分頁的情況下,回應會傳回 nextPageToken 屬性,該屬性會提供 符記。下一個要求會使用此權杖做為 pageToken 查詢字串值。
  • 同時使用 customeruserKey 引數: Directory API 傳回錯誤。您必須以這些 引數。

如需要求和回應屬性,請參閱 groups.list 方法

成功的回應會傳回 HTTP 200 狀態碼 以及成員資訊清單:

  • 成員擁有訂閱的所有群組,包括來自使用者外部的群組 網域,
  • 系統會按照每個群組電子郵件地址的字母順序傳回群組。
  • 在回應的主體中,id 是群組的專屬 ID。
  • 回應中,來自使用者網域之外的群組清單不會包含 外部別名 IP 範圍
{
    "kind": "directory#groups",
    "groups": [
     {
      "kind": "directory#group",
      "id": "group's unique ID",
      "etag": "group's unique ETag",
      "email": "sales_group@example.com",
      "name": "sale group",
      "directMembersCount": "5",
      "description": "Sales group"
     },
     {
      "kind": "directory#group",
      "id": "group's unique ID",
      "etag": "group's unique ETag",
      "email": "support_group.com",
      "name": "support group",
      "directMembersCount": "5",
      "description": "Support group"
     }
  ],
   "nextPakeToken": "NNNNN"
}

擷取所有群組別名

如要擷取群組的所有別名,請使用下列 GET 要求並加入 授權程序 授權要求groupKey 可以是群組的主要電子郵件地址,而是群組的專屬地址 id,或任何群組別名電子郵件。如需要求和回應屬性,請參閱 groups 資源

GET https://admin.googleapis.com/admin/directory/v1/groups/groupKey/aliases
敬上

成功的回應會傳回 HTTP 201 狀態碼 以及群組別名的清單

刪除群組別名

如要刪除群組別名,請使用下列 DELETE 要求並加入 授權程序 授權要求groupKey 可以是群組的主要電子郵件地址,也是群組的專屬地址 id,或任何群組別名電子郵件。aliasId 是系統根據 已刪除。如需要求和回應屬性,請參閱 groups 資源

DELETE https://admin.googleapis.com/admin/directory/v1/groups/groupKey/aliases/aliasId

成功的回應會傳回 HTTP 201 狀態碼

刪除群組

如要刪除群組,請使用下列 DELETE 要求並附上授權 描述 授權要求groupKey 是群組的唯一 id

DELETE https://admin.googleapis.com/admin/directory/v1/groups/groupKey
敬上 舉例來說,這項 DELETE 要求會刪除含有 nnnn 群組 id 的群組:
DELETE https://admin.googleapis.com/admin/directory/v1/group/nnnn

成功的回應會傳回 HTTP 200 狀態碼

刪除群組後會發生下列情況:

  • 系統會刪除所有群組成員。但不會刪除成員的使用者帳戶。
  • 群組封存資料已刪除。
  • 傳送給已刪除群組地址的郵件不會成功送達。但是,寄件者會收到 退信訊息。