Batas dan kuota melindungi infrastruktur Google dari proses otomatis yang menggunakan Reports API dengan cara yang tidak tepat. Permintaan yang berlebihan dari API dapat disebabkan oleh kesalahan ketik yang tidak berbahaya, atau mungkin akibat sistem yang tidak dirancang secara efisien yang membuat panggilan API yang tidak perlu. Apa pun penyebabnya, memblokir traffic dari sumber tertentu setelah mencapai tingkat tertentu diperlukan untuk memastikan kesiapan sistem Google Workspace secara keseluruhan. Memastikan bahwa tindakan developer tertentu tidak dapat berdampak negatif pada komunitas yang lebih besar.
Jika permintaan API Anda gagal, Anda akan menerima respons kode status HTTP. Kode status 403 berisi informasi error mengenai input yang salah, dan kode status HTTP 503 berisi informasi error yang menunjukkan kuota API mana yang telah terlampaui. Respons ini memungkinkan aplikasi kustom mendeteksi error ini dan mengambil tindakan yang sesuai.
Jika permintaan Anda harus diselesaikan dalam jangka waktu yang tetap, kirim permintaan Anda secara paralel atau gunakan beberapa thread di aplikasi Java atau C# Anda. Contoh permintaan paralel adalah meminta batch kecil email dari pengguna yang berbeda, bukan menambahkan atau menghapus banyak email dari satu pengguna secara bersamaan. Untuk rangkaian pesan, coba mulai dengan 10 rangkaian pesan, satu rangkaian pesan per email pengguna. Perhatikan bahwa rekomendasi thread memiliki konsekuensi dan hanya berguna untuk sebagian situasi API. Jika jumlah permintaan terlalu tinggi, error kuota akan terjadi.
Untuk semua error yang berbasis waktu (maksimum N hal selama N detik per thread), terutama error kode status 503, sebaiknya kode Anda menangkap pengecualian dan, dengan menggunakan algoritma backoff eksponensial, tunggu sedikit penundaan sebelum mencoba kembali panggilan yang gagal. Contoh Reports API untuk satu thread adalah menunggu 5 detik dan mencoba lagi panggilan yang gagal. Jika permintaan berhasil, ulangi pola ini untuk thread lainnya. Jika permintaan kedua tidak berhasil, aplikasi Anda harus mengurangi frekuensi permintaan tersebut hingga panggilan berhasil. Misalnya, tingkatkan penundaan 5 detik awal menjadi 10 detik dan coba lagi panggilan yang gagal. Selain itu, tentukan batas percobaan ulang. Misalnya, coba lagi permintaan 5 hingga 7 kali dengan waktu tunda berbeda sebelum aplikasi Anda menampilkan error kepada pengguna.
Kategori Batas API | Batas |
---|---|
Melaporkan tarif QPS dan QPD | API membatasi jumlah permintaan untuk project Google Cloud Anda.
Nilai default yang ditetapkan di konsol Google Cloud adalah 2.400 kueri per menit per pengguna per project Google Cloud.
Anda dapat meningkatkan batas ini dari halaman Quotas Admin SDK API di project Google Cloud Anda.
Jika batas ini terlampaui, server akan menampilkan kode status HTTP 503. Gunakan algoritme backoff eksponensial saat mencoba kembali permintaan Anda. |
Kategori Kuota API | Kuota |
maxResults | Jumlah catatan yang tercantum di setiap halaman respons API adalah dari 1 hingga 1.000 peristiwa. Defaultnya adalah 1.000 data. |
Jenis Batas Lainnya | Batasan dan Panduan |
---|---|
Format data, default | Format data default adalah JSON. API ini juga mendukung format Atom. |
Permintaan tidak sah | Google tidak mengizinkan permintaan tidak sah ke API. Permintaan dianggap tidak sah jika tidak ada token otorisasi yang diberikan. Untuk informasi selengkapnya, lihat Mengizinkan permintaan. |
Pesan peringatan |
|