Bu sayfada, Directory API ile Google Grupları'nın nasıl yönetileceği açıklanmaktadır:
- Grup oluşturun
- Grubu güncelleme
- Grup takma adı ekleme
- Grubu alma
- Bir alan veya hesapla ilgili tüm grupları alma
- Bir üyenin tüm gruplarını alma
- Tüm grup takma adlarını alma
- Grup takma adını silme
- Grup silme
Grup oluşturun
Grup oluşturmak için aşağıdaki POST isteğini kullanın ve İstekleri yetkilendirme bölümünde açıklanan yetkilendirmeyi ekleyin. Hesapla ilişkili herhangi bir alan için grup oluşturabilirsiniz. Sorgu dizeleri, istek ve yanıt özellikleri için groups.insert
yöntemine bakı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 satis_grubu@example.com ise:
{ "email": "sales_group@example.com", "name": "Sales Group", "description": "This is the Sales group." }
Başarılı bir yanıt, HTTP
201 durum kodu ve yeni grubun özelliklerini döndürür.
Grubu güncelleme
Bir grubun ayarlarını güncellemek için aşağıdaki PUT isteğini kullanın ve İstekleri yetkilendirme bölümünde açıklanan yetkilendirmeyi ekleyin. groupKey, grubun e-posta adresi, grup takma adının e-posta adresi veya grubun benzersiz id'sidir. Sorgu dizeleri, istek ve yanıt özellikleri için groups.update
yöntemine bakın.
PUT https://admin.googleapis.com/admin/directory/v1/groups/groupKey
Genel olarak, e-posta adresi değişebileceğinden grubun e-posta adresini kalıcı veriler için anahtar olarak kullanmamanızı öneririz.
Genel olarak, e-posta adresi değişebileceğinden grubun e-posta adresini kalıcı veriler için anahtar olarak kullanmamanızı öneririz.
Aşağıdaki örnekte, benzersiz groupKey nnn
ve grubun adı APAC Satış Grubu'dur:
PUT https://admin.googleapis.com/admin/directory/v1/groups/nnn
{ "email": "sales_group@example.com", "name": "APAC Sales Group" }
Güncelleme isteği için yalnızca isteğinizdeki güncellenmiş bilgileri göndermeniz gerekir. İstekte grubun tüm özelliklerini girmeniz gerekmez.
Başarılı bir yanıt, HTTP
201 durum kodu ve yeni grubun özelliklerini döndürür:
{ "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" } ] }
Grup takma adı ekleme
Grup takma adı eklemek için aşağıdaki POST isteğini kullanın ve İstekleri yetkilendirme bölümünde açıklanan yetkilendirmeyi ekleyin. groupKey, grubun e-posta adresi, grubun takma ad e-posta adreslerinden herhangi biri veya grubun benzersiz id'sidir. Sorgu dizeleri, istek ve yanıt özellikleri için groups
kaynağı bölümüne bakın.
POST https://admin.googleapis.com/admin/directory/v1/groups/groupKey/aliases
Genel olarak Google, e-posta adresi değişebileceğinden grubun e-posta adresinin kalıcı veriler için anahtar olarak kullanılmamasını önerir.
Aşağıdaki JSON isteğinde, bir grubun diğer adını oluşturmaya yönelik örnek bir istek gösterilmektedir.
groupKey, grubun id olan benzersiz NNNN ile gösterilir.
POST https://admin.googleapis.com/admin/directory/v1/groups/NNNN/aliases
{ "alias": "best_sales_group@example.com" }
Başarılı bir yanıt, HTTP
201 durum kodu ve yeni grup takma adının özelliklerini döndürür.
Grubu alma
Bir grubu almak için aşağıdaki GET isteğini kullanın ve İstekleri yetkilendirme bölümünde açıklanan yetkilendirmeyi ekleyin. groupKey, grubun e-posta adresi, grubun takma ad e-posta adreslerinden herhangi biri veya grubun benzersiz id'sidir. Sorgu dizeleri, istek ve yanıt özellikleri için groups.get
yöntemine bakın.
GET https://admin.googleapis.com/admin/directory/v1/groups/groupKey
Genel olarak Google, e-posta adresi değişebileceğinden grubun e-posta adresinin kalıcı veriler için anahtar olarak kullanılmamasını önerir.
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ını döndürür:
{ "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" } ] }
Bir alan veya hesapla ilgili tüm grupları alma
Belirli bir alan veya hesapla ilgili tüm grupları almak için aşağıdaki GET isteğini kullanın ve İstekleri yetkilendirme bölümünde açıklanan yetkilendirmeyi ekleyin. Sorgu dizeleri, istek ve yanıt özellikleri için groups.list
yöntemine bakın. Okunabilirliği artırmak açısından bu örnekte satır sonları kullanılmıştı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 hesap için tüm gruplar alınırken aşağıdakiler göz önünde bulundurulmalıdır:
- Bir alt alanla ilgili tüm gruplar:
domainbağımsız değişkenini alanın adıyla birlikte kullanın. - Hesaptaki tüm gruplar:
customerbağımsız değişkeninimy_customerveya hesabıncustomerIddeğeriyle birlikte kullanın. Hesap yöneticisi olarak, hesabınızıncustomerIddeğerini temsil etmek içinmy_customerdizesini kullanın. Yeniden satış yapan bir bayiyseniz ve yeniden satış yapılan bir müşterinin hesabına erişiyorsanız yeniden satış yapılan hesabıncustomerIdözelliğini kullanın.customerIddeğeri için Bir alandaki tüm kullanıcıları alma işleminin isteğinde hesabın birincil alan adını kullanın. Sonuçta elde edilen yanıtın değericustomerIdolur. - Hem
domainhem decustomerbağımsız değişkenlerini kullanma: Directory API,domainiçin tüm grupları döndürür. domainvecustomerbağımsız değişkenleri kullanılmıyor: Directory API,my_customerile ilişkili hesap için tüm grupları döndürür. Bu, isteği gönderen yöneticinincustomerIdhesabıdır.- Hem
customerhem deuserKeybağımsız değişkenlerini kullanma: Directory API hata döndürür. Bu bağımsız değişkenlerle iki ayrı istekte bulunmanız gerekir.
Aşağıdaki örnekte, bir hesap yöneticisi, bir hesabın tüm gruplarının listesini istemek için my_customer kullanıyor:
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, customerId C03az79cb ile yeniden satılan hesabın tüm gruplarını döndürür. Yanıt sayfası başına döndürülen maksimum sonuç sayısı 2'dir. Bu yanıttaki takip eden kullanıcı listesi için nextPageToken vardır:
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ına göre alfabetik sıradaki grupları döndürür:
{ "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" }
Bir üyenin tüm gruplarını alma
Bir üyenin aboneliğinin olduğu tüm grupları almak için aşağıdaki GET isteğini kullanın ve İstekleri yetkilendirme bölümünde açıklanan yetkilendirmeyi ekleyin. Okunabilirliği artırmak açısından bu örnekte satır sonları kullanılmıştır:
GET https://admin.googleapis.com/admin/directory/v1/groups?userKey=user key &pageToken=pagination token &maxResults=maximum results per response page
- Üyeler kullanıcı veya grup olabilir.
userKey, kullanıcının birincil e-posta adresi, kullanıcının takma ad e-posta adresi, bir grubun birincil e-posta adresi, bir grubun e-posta takma adı veya Kullanıcı işlemini alma kullanılarak bulunabilen kullanıcının benzersizid'si olabilir.userKeyiçinde belirtilen kullanıcı veya grup, alanınıza ait olmalıdır.- Çok sayıda grup içeren yanıtlarda
pageTokensorgu dizesini kullanın. Sayfalama durumunda yanıt, yanıt sonuçlarının bir sonraki sayfası için jeton verennextPageTokenözelliğini döndürür. Bir sonraki isteğinizde bu jeton,pageTokensorgu dizesi değeri olarak kullanılır. - Hem
customerhem deuserKeybağımsız değişkenlerini kullanma: Directory API hata döndürür. Bu bağımsız değişkenlerle iki ayrı istekte bulunmanız gerekir.
İstek ve yanıt özellikleri için groups.list
yöntemine bakın.
Başarılı bir yanıtta HTTP 200 durum kodu ve üye bilgilerinin listesi döndürülür:
- Bir üyenin aboneliğinin olduğu tüm gruplar (kullanıcının alanının dışındaki gruplar dahil) döndürülür.
- Gruplar, her grubun e-posta adresinin alfabetik sırasına göre döndürülür.
- Yanıtın gövdesindeki
id, grubun benzersiz kimliğidir. - Yanıt, kullanıcının alanı dışındaki bir grubun listesini içerdiğinde bu grubun diğer adları dahil edilmez.
{ "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" } ], "nextPageToken": "NNNNN" }
Tüm grup takma adlarını alma
Bir grubun tüm takma adlarını almak için aşağıdaki GET
isteğini kullanın ve İstekleri
yetkilendirme bölümünde açıklanan yetkilendirmeyi ekleyin. groupKey, grubun birincil e-posta adresi, grubun benzersiz id veya grubun takma ad e-posta adreslerinden herhangi biri olabilir. İstek ve yanıt özellikleri için groups
kaynağına bakın.
GET https://admin.googleapis.com/admin/directory/v1/groups/groupKey/aliasesBaşarılı bir yanıt, HTTP
201 durum kodu ve grubun diğer adlarının listesini döndürür.
Grup takma adını silme
Bir grubun diğer adını silmek için aşağıdaki DELETE isteğini kullanın ve İstekleri yetkilendirme bölümünde açıklanan yetkilendirmeyi ekleyin. groupKey, grubun birincil e-posta adresi, grubun benzersiz id veya grubun takma ad e-posta adreslerinden herhangi biri olabilir. aliasId, silinen takma addır. İ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 döndürür.
Grup silme
Bir grubu silmek için aşağıdaki DELETE isteğini kullanın ve İstekleri yetkilendirme bölümünde açıklanan yetkilendirmeyi ekleyin. groupKey, grubun benzersiz id:
DELETE https://admin.googleapis.com/admin/directory/v1/groups/groupKeyÖrneğin, bu DELETE isteği, nnnn grubu id olan grubu siler:
DELETE https://admin.googleapis.com/admin/directory/v1/group/nnnn
Başarılı bir yanıt, HTTP
200 durum kodu döndürür.
Bir grup silindiğinde şunlar olur:
- Grubun tüm üyeleri silinir. Üyenin kullanıcı hesapları silinmez.
- Grup arşivi silinir.
- Silinen grubun adresine gönderilen iletiler teslim edilmez. Bunun yerine, gönderen bir geri dönen ileti alır.