Kelola grup

Halaman ini membahas cara mengelola Google Grup dengan Directory API:

  • Buat grup
  • Memperbarui grup
  • Menambahkan alias grup
  • Mengambil grup
  • Mengambil semua grup untuk domain atau akun
  • Mengambil semua grup untuk anggota
  • Mengambil semua alias grup
  • Menghapus alias grup
  • Menghapus grup

Buat grup

Untuk membuat grup, gunakan permintaan POST berikut dan sertakan otorisasi yang dijelaskan dalam Mengizinkan permintaan. Anda dapat membuat grup untuk domain apa pun yang terkait dengan akun. Untuk properti string kueri, permintaan, dan respons, lihat metode groups.insert.

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

Permintaan JSON berikut menunjukkan contoh isi permintaan yang membuat grup. Alamat email grup adalah sales_group@example.com:

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

Respons yang berhasil akan menampilkan kode status 201 HTTP dan properti untuk grup baru.

Memperbarui grup

Untuk memperbarui setelan grup, gunakan permintaan PUT berikut dan sertakan otorisasi yang dijelaskan dalam Meminta otorisasi. groupKey adalah alamat email grup, alamat email alias grup, atau id unik grup. Untuk properti string kueri, permintaan, dan respons, lihat metode groups.update.

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

Secara umum, Google merekomendasikan untuk tidak menggunakan alamat email grup sebagai kunci untuk data persisten karena alamat email dapat berubah sewaktu-waktu.

Dalam contoh berikut, groupKey unik adalah nnn dan nama grupnya adalah APAC Sales Group:

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

Untuk permintaan pembaruan, Anda hanya perlu mengirimkan informasi yang diperbarui dalam permintaan Anda. Anda tidak perlu memasukkan semua properti grup dalam permintaan.

Respons yang berhasil akan menampilkan kode status 201 HTTP dan properti untuk grup baru:

{
    "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"
     }
    ]
}

Menambahkan alias grup

Untuk menambahkan alias grup, gunakan permintaan POST berikut dan sertakan otorisasi yang dijelaskan dalam Meminta otorisasi. groupKey adalah alamat email grup, alamat email alias grup, atau id unik grup. Untuk properti string kueri, permintaan, dan respons, lihat resource groups.

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

Secara umum, Google merekomendasikan untuk tidak menggunakan alamat email grup sebagai kunci untuk data persisten karena alamat email dapat berubah sewaktu-waktu.

Permintaan JSON berikut menunjukkan contoh permintaan untuk membuat alias grup. groupKey adalah id unik grup yang diwakili oleh NNNN

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

Respons yang berhasil akan menampilkan kode status 201 HTTP dan properti untuk alias grup baru.

Mengambil grup

Untuk mengambil grup, gunakan permintaan GET berikut dan sertakan otorisasi yang dijelaskan dalam Meminta otorisasi. groupKey adalah alamat email grup, alamat email alias grup, atau id unik grup. Untuk properti string kueri, permintaan, dan respons, lihat metode groups.get.
GET https://admin.googleapis.com/admin/directory/v1/groups/groupKey

Secara umum, Google merekomendasikan untuk tidak menggunakan alamat email grup sebagai kunci untuk data persisten karena alamat email dapat berubah sewaktu-waktu.

Dalam contoh berikut, ID groupKey unik adalah nnnn:

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

Respons yang berhasil akan menampilkan kode status 200 HTTP dan setelan grup:

{
    "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"
     }
    ]
}

Mengambil semua grup untuk domain atau akun

Untuk mengambil semua grup untuk domain atau akun tertentu, gunakan permintaan GET berikut dan sertakan otorisasi yang dijelaskan dalam Meminta otorisasi. Untuk properti string kueri, permintaan, dan respons, lihat metode groups.list. Agar mudah dibaca, contoh ini menggunakan pemisahan baris:

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

Saat mengambil semua grup untuk domain atau akun, pertimbangkan hal berikut:

  • Semua grup untuk subdomain: Gunakan argumen domain dengan nama domain.
  • Semua grup untuk akun: Gunakan argumen customer dengan my_customer atau nilai customerId akun. Sebagai administrator akun, gunakan string my_customer untuk mewakili customerId akun Anda. Jika Anda adalah reseller yang mengakses akun pelanggan yang dijual kembali, gunakan customerId akun yang dijual kembali. Untuk nilai customerId, gunakan nama domain primer akun dalam permintaan operasi Retrieve all users in a domain. Respons yang dihasilkan memiliki nilai customerId.
  • Menggunakan argumen domain dan customer: Directory API menampilkan semua grup untuk domain.
  • Tidak menggunakan argumen domain dan customer: Directory API menampilkan semua grup untuk akun yang terkait dengan my_customer. Ini adalah akun customerId administrator yang membuat permintaan.
  • Menggunakan argumen customer dan userKey: Directory API menampilkan error. Anda harus membuat dua permintaan terpisah dengan argumen ini.

Dalam contoh berikut, administrator akun menggunakan my_customer untuk meminta daftar semua grup akun:

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

Pada contoh berikut, permintaan administrator reseller menampilkan semua grup untuk akun yang dijual kembali dengan customerId C03az79cb. Hasil maksimum yang ditampilkan per halaman respons adalah 2. Ada nextPageToken untuk daftar pengguna berikutnya dalam respons ini:

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

Respons yang berhasil akan menampilkan kode status 200 HTTP dan grup dalam urutan alfabet email grup:

{
"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"
  }

Mengambil semua grup untuk anggota

Untuk mengambil semua grup yang langganannya dimiliki oleh anggota, gunakan permintaan GET berikut dan sertakan otorisasi yang dijelaskan dalam Meminta otorisasi. Agar mudah dibaca, contoh ini menggunakan pemisahan baris:

GET https://admin.googleapis.com/admin/directory/v1/groups?userKey=user key
?pageToken=pagination token
&maxResults=maximum results per response page
  • Anggota dapat berupa pengguna atau grup.
  • userKey dapat berupa alamat email utama pengguna, alamat email alias pengguna, alamat email utama grup, alias email grup, atau id unik pengguna yang dapat ditemukan menggunakan Mengambil operasi pengguna.
  • Pengguna atau grup yang ditentukan di userKey harus berasal dari domain Anda.
  • Gunakan string kueri pageToken untuk respons dengan jumlah grup yang besar. Dalam hal penomoran halaman, respons akan menampilkan properti nextPageToken yang memberikan token untuk halaman hasil respons berikutnya. Permintaan Anda berikutnya akan menggunakan token ini sebagai nilai string kueri pageToken.
  • Menggunakan argumen customer dan userKey: Directory API menampilkan error. Anda harus membuat dua permintaan terpisah dengan argumen ini.

Untuk properti permintaan dan respons, lihat metode groups.list.

Respons yang berhasil akan menampilkan kode status HTTP 200 dan daftar informasi anggota:

  • Semua grup yang langganannya dimiliki oleh anggota, termasuk grup dari luar domain pengguna, akan ditampilkan.
  • Grup ditampilkan dalam urutan alfabet dari setiap alamat email grup.
  • Dalam isi respons, id adalah ID unik grup.
  • Dalam respons, listingan grup dari luar domain pengguna tidak menyertakan alias grup luar.
{
    "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"
}

Mengambil semua alias grup

Untuk mengambil semua alias grup, gunakan permintaan GET berikut dan sertakan otorisasi yang dijelaskan dalam Meminta otorisasi. groupKey dapat berupa alamat email utama grup, id unik grup, atau email alias grup mana pun. Untuk properti permintaan dan respons, lihat resource groups.

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

Respons yang berhasil akan menampilkan kode status 201 HTTP dan daftar alias grup.

Menghapus alias grup

Untuk menghapus alias grup, gunakan permintaan DELETE berikut dan sertakan otorisasi yang dijelaskan dalam Meminta otorisasi. groupKey dapat berupa alamat email utama grup, id unik grup, atau email alias grup mana pun. aliasId adalah alias yang dihapus. Untuk properti permintaan dan respons, lihat resource groups:

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

Respons yang berhasil akan menampilkan kode status 201 HTTP.

Menghapus grup

Untuk menghapus grup, gunakan permintaan DELETE berikut dan sertakan otorisasi yang dijelaskan dalam Meminta otorisasi. groupKey adalah id unik grup:

DELETE https://admin.googleapis.com/admin/directory/v1/groups/groupKey
Misalnya, permintaan DELETE ini menghapus grup yang memiliki grup nnnn id:
DELETE https://admin.googleapis.com/admin/directory/v1/group/nnnn

Respons yang berhasil akan menampilkan kode status 200 HTTP.

Jika grup dihapus, hal berikut akan terjadi:

  • Semua anggota grup akan dihapus. Akun pengguna anggota tidak akan dihapus.
  • Arsip grup dihapus.
  • Pesan yang dikirim ke alamat grup yang dihapus tidak akan terkirim. Sebagai gantinya, pengirim akan menerima pesan email tidak terkirim.