Grupları yönet

Bu sayfa, Google Gruplar'ın Directory API ile nasıl yönetileceği hakkındadır:

  • Grup oluşturun
  • Grubu güncelleme
  • Grup takma adı ekleme
  • Grup alma
  • Bir alan veya hesaba ait tüm grupları alma
  • Bir üyenin tüm gruplarını alma
  • Tüm grup takma adlarını al
  • Grup takma adını silme
  • Grubu silme

Grup oluşturun

Grup oluşturmak için aşağıdaki POST isteğini kullanın ve yetkilendirmeyi ekleyin şurada açıklandığı: İstekleri yetkilendirin. Hesapla ilişkili herhangi bir alan adı için grup oluşturabilirsiniz. Sorgu dizeleri için istek, özellikleri görmek için groups.insert yöntemini kullanın.

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

Aşağıdaki JSON isteğinde, grup oluşturan örnek bir istek gövdesi gösterilmektedir. Grubun e-posta adresi adres, [email protected]'dur:

{
   "email": "[email protected]",
   "name": "Sales Group",
   "description": "This is the Sales group."
}

Başarılı bir yanıt, HTTP 201 durum kodu ve yeni grubun özelliklerini yazın.

Grubu güncelleme

Bir grubun ayarlarını güncellemek için aşağıdaki PUT isteğini kullanın ve şunu ekleyin: yetki belgesinin bu bölümünde İstekleri yetkilendirin. groupKey, grubun e-posta adresidir ve herhangi bir grup takma adının e-posta adresidir. veya grubun benzersiz id değeri. Sorgu dizeleri, istek ve yanıt özellikleri için bkz. groups.update yöntemini kullanın.

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

Genel olarak Google, grubun e-posta adresinin kalıcı veriler için anahtar olarak kullanılmamasını önerir. çünkü e-posta adresi değişebilir.

Aşağıdaki örnekte benzersiz groupKey, nnn ve grubun adı APAC Satış Grubu:

PUT https://admin.googleapis.com/admin/directory/v1/groups/nnn
{
    "email": "[email protected]",
    "name": "APAC Sales Group"
}

Güncelleme isteği için yalnızca isteğinizdeki güncellenmiş bilgileri göndermeniz gerekir. Hayır tüm grubun özelliklerini istekte girmeniz gerekir.

Başarılı bir yanıt, HTTP 201 durum kodu ve yeni grubun özellikleri:

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

Grup takma adı ekleme

Grup takma adı eklemek için aşağıdaki POST isteğini kullanın ve yetkilendirmeyi ekleyin İstekleri yetkilendirme bölümünde açıklanmıştır. groupKey, grubun e-posta adresidir (herhangi bir grup takma adı) e-posta adresi veya grubun benzersiz id. Sorgu dizeleri, istek ve yanıt özellikleri için groups kaynağı.

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

Genel olarak Google, grubun e-posta adresinin kalıcı veriler için anahtar olarak kullanılmamasını önerir. çünkü e-posta adresi değişebilir.

Aşağıdaki JSON isteğinde, grup takma adı oluşturmaya yönelik örnek bir istek gösterilmektedir. İlgili içeriği oluşturmak için kullanılan groupKey, grubun NNNN ile temsil edilen benzersiz id değeridir

POST https://admin.googleapis.com/admin/directory/v1/groups/NNNN/aliases
{
    "alias": "[email protected]"
}

Başarılı bir yanıt, HTTP 201 durum kodu ve yeni grup takma adının özelliklerini içerir.

Grup alma

Bir grubu almak için aşağıdaki GET isteğini kullanın ve yetkilendirmeyi ekleyin şurada açıklandığı: İstekleri yetkilendirin. groupKey, grubun e-posta adresidir (herhangi bir grup takma adı) e-posta adresi veya grubun benzersiz id. Sorgu dizeleri, istek ve yanıt özellikleri için groups.get yöntemini kullanın.
GET https://admin.googleapis.com/admin/directory/v1/groups/groupKey

Genel olarak Google, grubun e-posta adresinin kalıcı veriler için anahtar olarak kullanılmamasını önerir. çünkü e-posta adresi değişebilir.

Aşağıdaki örnekte benzersiz groupKey kimliği nnnn şeklindedir:

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

Başarılı bir yanıt, HTTP 200 durum kodu ve grubun ayarları:

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

Bir alan veya hesaba ait tüm grupları alma

Belirli bir alan adına veya hesaba ait tüm grupları almak için şu GET yönergesini kullanın: içinde açıklanan yetkilendirmeyi içeren bir e-posta alırsınız İstekleri yetkilendirin. Şu sorgu için: dizeleri, istek ve yanıt özelliklerini öğrenmek için groups.list yöntemini kullanın. Bu örnekte okunabilirlik için satır sonları kullanılmaktadır:

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

Bir alan veya hesaba ait tüm grupları alırken aşağıdakileri göz önünde bulundurun:

  • Alt alandaki tüm gruplar: domain bağımsız değişkenini alan adıyla birlikte kullanın.
  • Hesapla ilişkili tüm gruplar: customer bağımsız değişkenini şunlardan biriyle kullanın: my_customer veya hesabın customerId değeri. Hesap olarak yönetici hesabı için my_customer dizesini kullanarak hesabınızın customerId. Yeniden satış yapılan bir müşterinin hesabına erişen bir bayiyseniz Yeniden satışı yapılan hesabın customerId. customerId değeri için şunu kullanın: hesabın birincil alan adı Bir alandaki tüm kullanıcıları alma işleminin isteği. Sonuçta elde edilen yanıt customerId değerine sahiptir.
  • Hem domain hem de customer bağımsız değişkenlerinin kullanılması: Directory API, domain için tüm grupları döndürür.
  • domain ve customer bağımsız değişkenleri kullanılmamaktadır: Directory API, şununla ilişkilendirilmiş hesabın tüm gruplarını döndürür: my_customer. Bu, customerId işlemini gerçekleştiren yönetici hesabı talep ediyor.
  • Hem customer hem de userKey bağımsız değişkenlerinin kullanılması: Directory API hata döndürüyor. Bu bilgilerle iki ayrı istekte bulunmanız gerekir bağımsız değişkenlerdir.

Aşağıdaki örnekte bir hesap yöneticisi, tüm boyutların listesini istemek için my_customer hesabın grupları:

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

Aşağıdaki örnekte, bir bayi yöneticisinin isteği, yeniden satış yapılan hesabın tüm gruplarını döndürür. customerId C03az79cb ile. Yanıt sayfası başına döndürülen maksimum sonuç sayısı 2'dir. Bu yanıttaki kullanıcıların takip listesinde nextPageToken bulunur:

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

Başarılı bir yanıt, HTTP 200 durum kodu ve grup e-postasındaki alfabetik sırayla şu grupları içerir:

{
"kind": "directory#groups",
    "groups": [
     {
      "kind": "directory#groups",
      "id": "group's unique ID",
      "etag": "group's unique ETag",
      "email": "[email protected]",
      "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": "[email protected]",
      "name": "Sales travel",
      "directMembersCount": "2",
      "description": "The travel group supporting sales",
      "adminCreated": false,
      "aliases": [
       {
         "alias": "[email protected]"
       }
      ],
      "nonEditableAliases: [
       {
         "alias": "liz@test.com"
       }
      ]
     },
  "nextPageToken": "NNNN"
  }

Bir üyenin tüm gruplarını alma

Üyenin aboneliği olan tüm grupları almak için şu GET politikasını kullanın: içinde açıklanan yetkilendirmeyi içeren bir e-posta alırsınız İstekleri yetkilendirin. Okunabilirlik açısından aşağıdaki örnekte şu satır sonuçları kullanılmaktadır:

GET https://admin.googleapis.com/admin/directory/v1/groups?userKey=user key
?pageToken=pagination token
&maxResults=maximum results per response page
  • Üye, bir kullanıcı veya grup olabilir.
  • userKey; kullanıcının birincil e-posta adresi, kullanıcının takma ad e-posta adresi, grubun birincil e-posta adresi, grubun e-posta takma adı veya kullanıcının benzersiz id Bu bilgileri Bir kullanıcı işlemini alın.
  • userKey politikasında belirtilen kullanıcı veya grup alanınıza ait olmalıdır.
  • Çok sayıda grup içeren yanıtlar için pageToken sorgu dizesini kullanın. sayfalandırma durumunda yanıt, nextPageToken özelliğini döndürerek jeton. Bir sonraki isteğiniz, pageToken sorgu dizesi değeri.
  • Hem customer hem de userKey bağımsız değişkenlerinin kullanılması: Directory API hata döndürüyor. Bu bilgilerle iki ayrı istekte bulunmanız gerekir bağımsız değişkenlerdir.

İstek ve yanıt özellikleri için groups.list yöntemini kullanın.

Başarılı bir yanıt, HTTP 200 durum kodu ve üye bilgilerinin listesi:

  • Kullanıcının aboneliği dışındaki gruplar da dahil olmak üzere, bir üyenin aboneliği olduğu tüm gruplar alan adı gibi tüm URL'ler döndürülür.
  • Gruplar, her grubun e-posta adresi alfabetik sırayla döndürülür.
  • Yanıtın gövdesinde id, grubun benzersiz kimliğidir.
  • Yanıtta, kullanıcının alanı dışından bir grubun listelemesinde takma adlar da dahil değil.
{
    "kind": "directory#groups",
    "groups": [
     {
      "kind": "directory#group",
      "id": "group's unique ID",
      "etag": "group's unique ETag",
      "email": "[email protected]",
      "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"
}

Tüm grup takma adlarını al

Bir grubun tüm takma adlarını almak için aşağıdaki GET isteğini kullanın ve yetki belgesinin bu bölümünde İstekleri yetkilendirin. İlgili içeriği oluşturmak için kullanılan groupKey, grubun birincil e-posta adresi (grubun benzersiz e-posta adresi) olabilir id veya e-postalar. İstek ve yanıt özellikleri için bkz. groups kaynağı.

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

Başarılı bir yanıt, HTTP 201 durum kodu ve grubun takma adlarının listesini içerir.

Grup takma adını silme

Bir grubun takma adını silmek için aşağıdaki DELETE isteğini kullanın ve yetki belgesinin bu bölümünde İstekleri yetkilendirin. groupKey, grubun birincil e-posta adresi, grubun benzersiz e-posta adresi olabilir. id veya e-postalar. aliasId, kullanılan takma addır silindi. İstek ve yanıt özellikleri için groups kaynağına bakın:

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

Başarılı bir yanıt, HTTP 201 durum kodu.

Grubu silme

Bir grubu silmek için aşağıdaki DELETE isteğini kullanın ve yetkilendirmeyi ekleyin şurada açıklandığı: İstekleri yetkilendirin. groupKey, grubun benzersiz id öğesidir:

DELETE https://admin.googleapis.com/admin/directory/v1/groups/groupKey
Örneğin, bu DELETE isteği, nnnn id grubuna sahip olan grubu siler:
DELETE https://admin.googleapis.com/admin/directory/v1/group/nnnn

Başarılı bir yanıt, HTTP 200 durum kodu.

Bir grup silindiğinde aşağıdakiler gerçekleşir:

  • Grubun tüm üyeleri silinir. Üyenin kullanıcı hesapları silinmez.
  • Grup arşivi silindi.
  • Silinen grubun adresine gönderilen iletiler teslim edilmez. Gönderen, bunun yerine geri dönen ileti.