จัดการกลุ่ม

หน้านี้เกี่ยวข้องกับวิธีจัดการ Google Groups ด้วย Directory API

  • สร้างกลุ่ม
  • อัปเดตกลุ่ม
  • เพิ่มชื่อแทนของกลุ่ม
  • เรียกข้อมูลกลุ่ม
  • เรียกข้อมูลกลุ่มทั้งหมดของโดเมนหรือบัญชี
  • เรียกข้อมูลกลุ่มทั้งหมดของสมาชิก
  • เรียกข้อมูลอีเมลแทนกลุ่มทั้งหมด
  • ลบชื่อแทนของกลุ่ม
  • ลบกลุ่ม

สร้างกลุ่ม

หากต้องการสร้างกลุ่ม ให้ใช้คำขอ POST ต่อไปนี้และรวมการให้สิทธิ์ที่อธิบายไว้ในคำขอสิทธิ์ คุณสามารถสร้างกลุ่มสำหรับโดเมนใดก็ได้ที่เชื่อมโยงกับบัญชี ดูสตริงการค้นหา คําขอ และพร็อพเพอร์ตี้การตอบกลับได้ที่เมธอด 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 ไม่แนะนําให้ใช้อีเมลของกลุ่มเป็นคีย์สําหรับข้อมูลที่เก็บถาวรเนื่องจากอีเมลอาจมีการเปลี่ยนแปลง

ในตัวอย่างนี้ groupKey ที่ไม่ซ้ำกันคือ nnn และชื่อกลุ่มคือ APAC Sales Group

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 ที่ไม่ซ้ำกันคือ 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
  • การใช้ทั้งอาร์กิวเมนต์ domain และ customer: Directory API จะแสดงผลกลุ่มทั้งหมดสำหรับ domain
  • ไม่ใช้อาร์กิวเมนต์ domain และ customer: Directory API จะแสดงผลกลุ่มทั้งหมดของบัญชีที่เชื่อมโยงกับ my_customer บัญชี customerId นี้เป็นบัญชีของผู้ดูแลระบบที่ส่งคำขอ
  • การใช้ทั้งอาร์กิวเมนต์ customer และ userKey: Directory API จะแสดงข้อผิดพลาด คุณต้องส่งคําขอแยกกัน 2 รายการโดยใช้อาร์กิวเมนต์เหล่านี้

ในตัวอย่างต่อไปนี้ ผู้ดูแลระบบบัญชีใช้ 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คำขอต่อไปนี้ และรวมการให้สิทธิ์ที่อธิบายไว้ในคำขอสิทธิ์ ตัวอย่างนี้มีการขึ้นบรรทัดใหม่เพื่อให้ง่ายต่อการอ่านทำความเข้าใจ

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
  • การใช้ทั้งอาร์กิวเมนต์ customer และ userKey: Directory API จะแสดงข้อผิดพลาด คุณต้องส่งคําขอแยกกัน 2 รายการโดยใช้อาร์กิวเมนต์เหล่านี้

ดูพร็อพเพอร์ตี้คำขอและการตอบกลับได้ที่เมธอด groups.list

การตอบกลับที่สำเร็จจะแสดงรหัสสถานะ HTTP 200 และรายการข้อมูลสมาชิก

  • ระบบจะแสดงกลุ่มทั้งหมดที่สมาชิกมีการสมัครใช้บริการ รวมถึงกลุ่มจากภายนอกโดเมนของผู้ใช้
  • ระบบจะแสดงผลกลุ่มตามลําดับตัวอักษรของอีเมลแต่ละกลุ่ม
  • ในเนื้อหาของการตอบกลับ id คือรหัสที่ไม่ซ้ำของกลุ่ม
  • ในการตอบกลับ ข้อมูลกลุ่มจากภายนอกโดเมนของผู้ใช้จะไม่รวมอีเมลแทนของกลุ่มภายนอก
{
    "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

สิ่งที่จะเกิดขึ้นเมื่อลบกลุ่มมีดังนี้

  • ระบบจะลบสมาชิกทั้งหมดของกลุ่ม ระบบจะไม่ลบบัญชีผู้ใช้ของสมาชิก
  • ระบบจะลบที่เก็บถาวรของกลุ่ม
  • ระบบจะไม่นำส่งข้อความที่ส่งไปยังอีเมลของกลุ่มที่ลบไปแล้ว ผู้ส่งจะได้รับข้อความตีกลับแทน