Sınırlar ve kotalar, Google altyapısını Directory API'yi uygunsuz şekilde kullanan otomatik işlemlerden korur. Bir API'den gelen aşırı istekler, zararsız bir yazım hatasından veya gereksiz API çağrıları yapan verimsiz tasarlanmış bir sistemden kaynaklanabilir. Nedeni ne olursa olsun, belirli bir kaynaktan gelen trafiğin belirli bir düzeye ulaştığında engellenmesi, Google Workspace sisteminin genel sağlığı için gereklidir. Bu sayede, bir geliştiricinin eylemlerinin daha geniş bir topluluğu olumsuz etkilemesi önlenir.
API isteğinizin başarısız olması durumunda API, bir HTTP durum kodu ve hatanın nedenini döndürür. Ayrıca, yanıtın gövde bölümünde hatanın nedenine dair ayrıntılı bir açıklama yer alır.
Aşağıdaki listede, kota sınırlarına ulaşılmasından kaynaklanan hatalar için olası hata kodları, nedenleri, ilgili açıklamaları ve önerilen işlemler gösterilmektedir.
| Kod | Neden | Açıklama | Önerilen işlem |
|---|---|---|---|
| 403 | userRateLimitExceeded | Kullanıcı sıklık sınırının aşıldığını gösterir. Google Cloud Console'da ayarlanan varsayılan değer,Google Cloud projesi başına kullanıcı başına dakikada 2.400 sorgudur. | Google Cloud projenizin Admin SDK API kotaları sayfasından kullanıcı başına sınırları artırın veya eksponansiyel geri yükleme kullanarak istekleri gönderme hızınızı azaltın. |
| 403 | quotaExceeded | Belirli bir işlem için eşzamanlı istek sınırına ulaşıldığını gösterir. | Üstel geri çekilme kullanarak yeniden deneyin. İstekleri gönderme hızınızı azaltmanız gerekir. |
| 429 | rateLimitExceeded | Belirli bir işlem için eşzamanlı istek sınırına ulaşıldığını gösterir. | Üstel geri yükleme kullanarak yeniden deneyin. İstekleri gönderme hızınızı düşürmeniz gerekir. Bu sınır, API istemcisi veya kullanıcı başına değil, Google Workspace hesabı başınadır. Bu sınır artırılamaz. |
Eksponansiyel geri yükleme uygulama
Eksponansiyel geri yükleme, istemcinin başarısız bir isteği artan bir süre boyunca düzenli olarak yeniden denemesi işlemidir. Bu, ağ uygulamaları için standart bir hata işleme stratejisidir. Eksponansiyel geri yükleme kullanmak, bant genişliği kullanımının verimliliğini artırır, başarılı bir yanıt almak için gereken istek sayısını azaltır ve eşzamanlı ortamlarda isteklerin işleme hızını en üst düzeye çıkarır.
Basit eksponansiyel geri yüklemeyi uygulama akışı aşağıdaki gibidir.
- API'ye istek gönderme
- Yeniden denenebilir bir hata kodu içeren hata yanıtı alma
- 1 saniye +
random_number_millisecondssaniye bekleyin - İsteği yeniden deneyin
- Yeniden denenebilir bir hata kodu içeren hata yanıtı alma
- 2 sn +
random_number_millisecondssaniye bekleyin - İsteği yeniden dene
- Yeniden denenebilir bir hata kodu içeren hata yanıtı alma
- 4 saniye +
random_number_millisecondssaniye bekleyin - İsteği yeniden deneyin
- Yeniden denenebilir bir hata kodu içeren hata yanıtı alma
- 8 saniye +
random_number_millisecondssaniye bekleyin - İsteği yeniden dene
- Yeniden denenebilir bir hata kodu içeren hata yanıtı alma
- 16 saniye +
random_number_millisecondssaniye bekleyin - İsteği yeniden deneyin
- Hata almaya devam ederseniz işlemi durdurun ve hatayı günlüğe kaydedin.
Yukarıdaki akışta random_number_milliseconds, 1.000'den küçük veya 1.000'e eşit rastgele bir milisaniye sayısıdır. Bu, bazı eşzamanlı uygulamalarda belirli kilit hatalarını önlemek için gereklidir.
random_number_milliseconds her beklemeden sonra yeniden tanımlanmalıdır.
Not: Bekleme süresi her zaman (2 ^ n) + random_number_milliseconds şeklindedir. Burada n, başlangıçta 0 olarak tanımlanan ve sırayla artan bir tam sayıdır. n, her iterasyon (her istek) için 1 artırılır.
Algoritma, n 5 olduğunda sonlanacak şekilde ayarlanmıştır. Bu üst sınır, yalnızca istemcilerin sonsuza kadar yeniden denemesini önlemek için uygulanır ve bir isteğin "düzeltilemeyen hata" olarak kabul edilmesinden önce yaklaşık 32 saniyelik bir toplam gecikmeye neden olur. API istemciniz, gerekirse daha fazla deneme yapabilir.
API Sınırları ve Kotaları
| API Sınırı Kategorileri | Sınırlar |
|---|---|
| Kullanıcılar oluşturuluyor | Directory API'yi kullanarak alan başına saniyede 10'dan fazla kullanıcı oluşturamazsınız. |
| Kullanıcı silme | Directory API'yi kullanarak alan başına saniyede en fazla 5 kullanıcı silebilirsiniz. Bu, Google Cloud Console proje kotalarında ayarlanamayan, alan başına arka uç hizmet sınırıdır. Toplu istek gönderirken toplu işlemlerin toplamının saniyedeki sorgu sayısı (QPS) olarak saniyede 5'in altında kaldığından emin olun. |
| Grup üyelerini silme | Directory API'yi kullanarak alan başına saniyede en fazla 30 grup üyesini silebilirsiniz. Bu, Google Cloud Console proje kotalarında ayarlanamayan, alan başına arka uç hizmet sınırıdır. Toplu istek gönderirken toplu işlemlerin toplamının saniyedeki sorgu sayısı (QPS) olarak saniyede 30'un altında kaldığından emin olun. |
| Grup, başka bir gruba üye olarak eklendi | Alt grup üyelerinin üst grup üyeleri olarak görünmesi 10 dakikayı bulabilir. Bu sınır, sistemin kapasitesine bağlı olarak değişebilir. |
| Mobil cihazlar |
Directory API'yi kullanarak şunları yapabilirsiniz:
|
| Kullanıcıları yeniden adlandırma | Tüm hizmetlere yayılması 10 dakikayı bulabilir. Bir kullanıcıyı yeniden adlandırmadan önce, kullanıcının tüm tarayıcı oturumlarından ve hizmetlerden çıkış yapması önerilir. Daha fazla bilgi için Kullanıcıları güncelleme başlıklı makaleyi inceleyin. |
| Kuruluş birimleri oluşturma/güncelleme |
|
| API Kotası Kategorileri | Kotalar |
Chrome cihazlar annotatedLocation, maksimum karakter sayısı
|
Bir cihazın konum bilgisi için maksimum karakter sayısı 200'dür. |
Chrome cihazlar notes, maksimum karakter sayısı
|
Bir cihazın not bilgileri için maksimum karakter sayısı 500'dür. |
Chrome cihazlar, maksimum user karakter
|
Cihaz kullanıcısının adı en fazla 100 karakter olabilir. |
| Alan takma adları, maksimum | Maksimum alan takma adı sayısı 20'dir. |
| Gruplar, açıklama | Bir açıklamadaki maksimum karakter sayısı 4.096'dır. |
| Hesap başına grup sayısı | G Suite'in eski ücretsiz sürümü hesabıyla grup sayısı 10 ile sınırlıdır. Diğer sürümlerde grup sayısı sınırı yoktur. |
| Gruplar, grup başına üye sayısı | G Suite'in eski ücretsiz sürümü hesabıyla bir grupta en fazla 100 üye bulunabilir. Diğer sürümlerde, bir grubun sahip olabileceği üye sayısı için bir sınır yoktur. Kullanıcı başına grup üyeliği sınırları için Grup politikalarını ve sınırlamalarını anlama başlıklı makaleyi inceleyin. |
| maxResults sorgu dizesi | API şunları döndürür:
|
| Birden fazla alan, bir hesapta izin verilen maksimum alan sayısı | 600 (1 birincil alan + 599 ek alan) |
| Kuruluş birimi, tek seferde taşınan maksimum kullanıcı sayısı | Tek seferde 20 kullanıcı taşınabilir. Kullanıcının birincil e-posta adresleri de hesapta zaten mevcut olmalıdır. |
| Kullanıcı takma adları | Her kullanıcı hesabı için izin verilen toplam takma ad sayısı 30'dur. |
| Silinen bir takma adı kullanan kullanıcı takma adları | Silinen bir kullanıcı takma adı hemen tekrar kullanılabilir. |
| Diğer Sınır Türleri | Sınırlamalar ve yönergeler |
|---|---|
| Faturalandırma ve kullanıcı oluşturma | Google Workspace için esnek plan kullanan kullanıcılar söz konusu olduğunda, bu API kullanılarak kullanıcı oluşturulması maddi etkiye neden olur ve müşteri faturalandırma hesabınızdan ücret alınır. Örneğin, Google Workspace için esnek plan kullanıyorsanız 10 kullanıcı oluşturduğunuzda, oluşturma işleminden itibaren hesaplanan 10 Google Workspace lisansının ücreti hesabınıza yansıtılır. Yıllık plan kullanıyorsanız belirli sayıda lisans için önceden ödeme yapmayı taahhüt etmiş olursunuz ve yalnızca taahhüdünüz kadar kullanıcı oluşturabilirsiniz. Faturalandırma planları ve faturalandırma hesabınız hakkında daha fazla bilgi için Yönetim Yardım Merkezi'ne bakın. |
| Ad ve Soyadı | Ad ve soyadı en fazla 40 karakterden oluşabilir. Unicode/UTF-8 karakterlerini destekler ve boşluk, harf (a-z), rakam (0-9), kısa çizgi (-), eğik çizgi (/) ve nokta (.) içerebilir. Karakter kullanım kuralları hakkında daha fazla bilgi için Yönetim Yardım Merkezi'ne bakın. |
| Gruplar, siliniyor | Bir grubun silinmesi, grup üyelerinin kullanıcı hesaplarını silmez. |
| Gruplar ve grup üyeleri, e-posta adresi değişikliği | API'nin bu sürümünde, Google Workspace hizmeti etkinleştirilmeden önce bir grubun e-posta adresi değiştirilebilir. Bir grup üyesinin e-posta adresini değiştirmek için Google Yönetici Konsolu'nu kullanın. Değişiklik yapıldıktan sonra API, e-posta adresi değişikliklerini otomatik olarak yansıtır. |
| Gruplar, ayarlar | Gruplar'ın erişim ayarları, paylaşım seçenekleri, izleme ve tartışma arşivi Google Yönetici Konsolu kullanılarak yönetilir. Grup ayarları hakkında daha fazla bilgi için Yönetici Yardım Merkezi'ne bakın. |
| Gruplar, mesaj gönderme | Google, spam ve e-posta kötüye kullanımını önlemek için harici alıcılara tek seferde gönderebileceğiniz ileti sayısını sınırlandırır. Bir gruba ileti gönderirseniz her harici üye bir alıcı olarak sayılır. Daha fazla bilgi için E-posta gönderme sınırları ve Gmail kullanıcılarına giden postaların engellenmesini veya spam klasörüne gönderilmesini önleme başlıklı makaleleri inceleyin. |
| Gruplar, NDR mesajları gönderme | "Geri dönen iletiler" olarak da adlandırılan teslim edilmedi bilgilerini (NDR) bir gruba gönderemez veya yönlendiremezsiniz. |
| Kullanıcılar tarafından oluşturulan gruplar, sınırlamalar | Kullanıcı tarafından oluşturulan grup sınırları için Yönetici Yardım Merkezi'ni inceleyin. |
| Kuruluş birimi, hizmetleri etkinleştirme/devre dışı bırakma | Bir kuruluş birimi için hizmetleri etkinleştirme ve devre dışı bırakma işlemlerini yönetmek üzere Google Yönetici Konsolu'nu kullanın. |
| Şifreler | Herhangi bir karakter kombinasyonunu içerebilir. En az 8 karakter girilmelidir. Maksimum uzunluk 100 karakterdir. |
| Fotoğraflar | API'nin bu sürümünde fotoğraf, kullanıcının en son Google profil fotoğrafıdır. |
| Kullanıcı adları | Kullanıcı adları harf (a-z), rakam (0-9), kısa çizgi (-), alt çizgi (_) içerebilir ve Google Workspace, noktaları (.) tanır. Bu, Gmail'den farklıdır. Kullanıcı adları eşittir işareti (=), büyüktür-küçüktür işareti (<,>) veya art arda birden fazla nokta (.) içeremez. Daha fazla bilgi için Yönetim Yardım Merkezi'ne göz atın. |
| Kullanıcı adları, yeniden adlandırma | Google Hangouts, yeniden adlandırma işleminden sonra hatırlanan tüm sohbet davetiyelerini siler. Kullanıcının arkadaşlarıyla tekrar sohbet edebilmek için izin istemesi gerekir. Eski kullanıcı adı, e-posta yönlendirme ayarları söz konusu olduğunda postaların kesintisiz olarak teslim edilmesini sağlamak için e-posta takma adı olarak saklanır ve yeni bir kullanıcı adı olarak kullanılamaz. Kullanıcıları yeniden adlandırmanın etkisiyle ilgili önemli ayrıntılar için Yönetim Yardım Merkezi'ne bakın. Yeniden adlandırma işleminden sonra e-posta takma adını kaldırmak için Kullanıcının takma adını silme işlemini kullanın. |
| Birden fazla alan adındaki kullanıcılar | Bir Google Workspace hesabı, alanlarınızdan herhangi birini içerebilir. Birden fazla alan içeren bir hesapta, bir alandaki kullanıcılar hizmetleri diğer hesap alanlarındaki kullanıcılarla paylaşabilir. Birden fazla alan adı bileşeni:
|
| Uyarılar, grup üyeleri | GROUP_CANNOT_CONTAIN_CYCLE: API, grup üyeliklerinde döngüye izin vermez. Örneğin, grup1, grup2'nin üyesiyse grup2, grup1'in üyesi olamaz. |