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 Permintaan otorisasi. Anda dapat membuat grup untuk domain apa pun yang terkait dengan akun. Untuk string kueri, permintaan, dan properti 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 di Permintaan otorisasi. groupKey adalah alamat email grup, salah satu alamat email alias grup, atau id unik grup. Untuk string kueri, permintaan, dan properti 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 Permintaan otorisasi. groupKey adalah alamat email grup, salah satu alamat email alias grup, atau id unik grup. Untuk string kueri, permintaan, dan properti 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 direpresentasikan 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 Permintaan otorisasi. groupKey adalah alamat email grup, salah satu alamat email alias grup, atau id unik grup. Untuk string kueri, permintaan, dan properti 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 di Permintaan otorisasi. Untuk string kueri, permintaan, dan properti respons, lihat metode groups.list. Agar mudah dibaca, contoh ini menggunakan baris yang ditampilkan:

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 reseller, gunakan customerId akun reseller tersebut. 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 akan menampilkan error. Anda harus membuat dua permintaan terpisah dengan argumen ini.

Pada 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

Dalam contoh berikut, permintaan administrator reseller menampilkan semua grup untuk akun reseller 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 sesuai urutan abjad 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 tempat anggota memiliki langganan, gunakan permintaan GET berikut dan sertakan otorisasi yang dijelaskan di Permintaan otorisasi. Agar mudah dibaca, contoh ini menggunakan hasil 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 primer pengguna, alamat email alias pengguna, alamat email utama grup, alias email grup, atau id unik pengguna yang dapat ditemukan menggunakan operasi Mengambil pengguna.
  • Pengguna atau grup yang ditentukan dalam userKey harus menjadi bagian dari domain Anda.
  • Gunakan string kueri pageToken untuk respons dengan grup dalam jumlah besar. Dalam kasus penomoran halaman, respons menampilkan properti nextPageToken yang memberikan token untuk halaman hasil respons berikutnya. Permintaan Anda berikutnya menggunakan token ini sebagai nilai string kueri pageToken.
  • Menggunakan argumen customer dan userKey: Directory API akan 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 tempat anggota memiliki langganan, termasuk grup dari luar domain pengguna, akan ditampilkan.
  • Grup akan ditampilkan sesuai urutan abjad dari setiap alamat email grup.
  • Dalam isi respons, id adalah ID unik grup.
  • Dalam respons tersebut, 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 Permintaan otorisasi. groupKey dapat berupa alamat email utama grup, id unik grup, atau email alias grup apa 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 di Permintaan otorisasi. groupKey dapat berupa alamat email utama grup, id unik grup, atau email alias grup apa pun. aliasId adalah alias yang sedang dihapus. Untuk properti permintaan dan respons, lihat referensi 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 Permintaan otorisasi. groupKey adalah id unik grup:

DELETE https://admin.googleapis.com/admin/directory/v1/groups/groupKey
Misalnya, permintaan DELETE ini akan 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.

Saat grup dihapus, hal berikut akan terjadi:

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