Batas penggunaan

Gmail API tunduk pada batas penggunaan yang membatasi frekuensi Anda dapat memanggil metode API. Batas ditentukan dalam unit kuota, yaitu unit pengukuran abstrak yang mewakili penggunaan resource Gmail.

Kuota Gmail API

Gmail API menerapkan dua jenis kuota:

  • Per menit per project: Ini adalah jumlah unit kuota yang dapat digunakan project Google Cloud Anda dalam satu menit.

  • Per menit per pengguna per project: Ini adalah jumlah unit kuota yang dapat digunakan oleh satu pengguna tertentu dalam project Cloud Anda. Batas ini membantu memastikan distribusi penggunaan yang adil di antara pengguna Anda.

Tabel berikut menjelaskan batas ini secara mendetail:

Jenis batas penggunaan Batas
Per menit per project 1.200.000 unit kuota
Per menit per pengguna per project 6.000 unit kuota

Untuk mengetahui informasi tentang cara menangani error batas, lihat Menyelesaikan error.

Nilai minimum penagihan harian

Batas per hari per project ini menentukan jumlah maksimum unit kuota yang dapat digunakan project Google Cloud Anda dalam jangka waktu 24 jam sebelum dikenai biaya.

Penggunaan di bawah batas ini tidak dikenai biaya tambahan dan akun Google Cloud Anda tidak akan ditagih. Google akan membagikan detail penagihan lengkap pada tahun 2026 dengan pemberitahuan minimal 90 hari sebelum perubahan apa pun berlaku.

Anda tidak dapat meminta peningkatan batas nilai minimum harian ini.

Tabel berikut menjelaskan batas tersebut:

Jenis batas nilai minimum Batas
Per hari per project 80.000.000 unit kuota

Untuk mengetahui informasi selengkapnya, lihat Model standar Google Workspace untuk alat dan API agen.

Penggunaan kuota per metode

Jumlah unit kuota yang digunakan setiap permintaan bervariasi bergantung pada metode yang Anda panggil dan parameter kueri. Tabel berikut menguraikan penggunaan unit kuota per metode:

Metode Unit kuota
drafts.create 10
drafts.delete 10
drafts.get 20 (60 jika format adalah full, raw, atau html)
drafts.list 5
drafts.send 100
drafts.update 15
getProfile 1
history.list 2
labels.create 5
labels.delete 5
labels.get 1
labels.list 1
labels.update 5
messages.attachments.get 20
messages.batchDelete 50
messages.batchModify 50
messages.delete 10
messages.get 20 (60 jika format adalah full, raw, atau html)
messages.import 25
messages.insert 25
messages.list 5
messages.modify 5
messages.send 100
messages.trash 20
messages.untrash 5
settings.delegates.create 100
settings.delegates.delete 5
settings.delegates.get 1
settings.delegates.list 1
settings.filters.create 5
settings.filters.delete 5
settings.filters.get 1
settings.filters.list 1
settings.forwardingAddresses.create 100
settings.forwardingAddresses.delete 5
settings.forwardingAddresses.get 1
settings.forwardingAddresses.list 1
settings.getAutoForwarding 1
settings.getImap 1
settings.getPop 1
settings.getVacation 1
settings.sendAs.create 100
settings.sendAs.delete 5
settings.sendAs.get 1
settings.sendAs.list 1
settings.sendAs.update 100
settings.sendAs.verify 100
settings.updateAutoForwarding 5
settings.updateImap 5
settings.updatePop 100
settings.updateVacation 5
stop 50
threads.delete 20
threads.get 40 (120 jika format adalah full)
threads.list 10
threads.modify 10
threads.trash 20
threads.untrash 10
watch 100

Saat menggunakan Gmail API, ada juga batas 500 penerima per pesan email.

Mengatasi error kuota berbasis waktu

Untuk semua error berbasis waktu (maksimum N permintaan per X menit), sebaiknya kode Anda menangkap pengecualian dan menggunakan backoff eksponensial terpotong untuk memastikan perangkat Anda tidak menghasilkan beban berlebih.

Backoff eksponensial adalah strategi penanganan error standar untuk aplikasi jaringan. Algoritma backoff eksponensial mencoba ulang permintaan menggunakan waktu tunggu yang meningkat secara eksponensial di antara permintaan, hingga waktu backoff maksimum. Jika permintaan masih tidak berhasil, penting untuk meningkatkan penundaan di antara permintaan seiring waktu hingga permintaan berhasil.

Contoh algoritma

Algoritma backoff eksponensial mencoba ulang permintaan secara eksponensial, sehingga meningkatkan waktu tunggu antar-percobaan ulang hingga waktu backoff maksimum. Contoh:

  1. Membuat permintaan ke Gmail API.
  2. Jika permintaan gagal, tunggu 1 + random_number_milliseconds dan coba lagi permintaan tersebut.
  3. Jika permintaan gagal, tunggu 2 + random_number_milliseconds dan coba lagi permintaan tersebut.
  4. Jika permintaan gagal, tunggu 4 + random_number_milliseconds dan coba lagi permintaan tersebut.
  5. Dan seterusnya, hingga maximum_backoff.
  6. Terus tunggu dan coba ulang hingga jumlah maksimum percobaan ulang, tetapi jangan tambah waktu tunggu antar-percobaan ulang.

dengan:

  • Waktu tunggu adalah min(((2^n)+random_number_milliseconds), maximum_backoff), dengan n bertambah 1 untuk setiap iterasi (permintaan).
  • random_number_milliseconds adalah jumlah acak milidetik yang kurang dari atau sama dengan 1.000. Hal ini membantu menghindari kasus saat banyak klien disinkronkan oleh beberapa situasi dan semua mencoba lagi secara bersamaan, sehingga mengirimkan permintaan dalam gelombang yang disinkronkan. Nilai random_number_milliseconds dihitung ulang setelah setiap permintaan coba lagi.
  • maximum_backoff biasanya 32 atau 64 detik. Nilai yang sesuai bergantung pada kasus penggunaan.

Klien dapat terus mencoba ulang setelah mencapai waktu maximum_backoff. Percobaan ulang setelah tahap ini tidak perlu terus meningkatkan waktu backoff. Misalnya, jika klien menggunakan waktu maximum_backoff 64 detik, setelah mencapai nilai ini, klien dapat mencoba lagi setiap 64 detik. Pada saat tertentu, klien seharusnya dicegah untuk mencoba ulang tanpa batas waktu.

Waktu tunggu antara percobaan ulang dan jumlah percobaan ulang bergantung pada kasus penggunaan dan kondisi jaringan Anda.

Harga

Semua penggunaan standar Gmail API tersedia tanpa biaya tambahan. Melebihi batas permintaan kuota direncanakan akan dikenai biaya pada akun penagihan Google Cloud Anda pada akhir tahun 2026. Untuk mengetahui informasi selengkapnya, lihat Model standar Google Workspace untuk alat dan API agen.

Meminta penambahan kuota

Bergantung pada penggunaan resource project, Anda mungkin ingin meminta penyesuaian kuota. Panggilan API oleh akun layanan dianggap menggunakan satu akun. Mengajukan permohonan untuk penyesuaian kuota belum tentu disetujui. Permintaan penyesuaian kuota yang akan meningkatkan nilai kuota secara signifikan dapat memerlukan waktu lebih lama untuk disetujui.

Tidak semua project memiliki kuota yang sama. Seiring meningkatnya penggunaan Google Cloud dari waktu ke waktu, nilai kuota Anda mungkin perlu ditingkatkan. Jika Anda memperkirakan adanya peningkatan penggunaan yang signifikan di masa mendatang, Anda dapat secara proaktif meminta penyesuaian kuota dari halaman Kuota & Batas Sistem di konsol Google Cloud.

Untuk mempelajari lebih lanjut, lihat referensi berikut:

Kuota server MCP Gmail

Server MCP Gmail menggunakan metrik alokasi biaya kueri. Tabel berikut memerinci biaya kueri untuk setiap metode server MCP Gmail berdasarkan bagian:

Kuota MCP Gmail

Server menerapkan dua jenis kuota:

  • Per menit per project: Ini adalah biaya kueri untuk project Cloud Anda selama satu menit.

  • Per menit per pengguna per project: Ini adalah biaya kueri ke project Cloud Anda selama satu menit yang dapat digunakan oleh satu pengguna tertentu.

Tabel berikut menjelaskan kuota ini:

Jenis batas penggunaan Biaya kueri
Per menit per project 1.200.000
Per menit per pengguna per project 6.000

Kuota toolset MCP Gmail

Tabel berikut memerinci biaya kueri untuk setiap set alat gmailmcp.googleapis.com:

Endpoint Alat Biaya kueri

/mcp/v1

create_draft

10

get_thread

40

label_message

10

label_thread

10

list_drafts

5

list_labels

1

search_threads

10

unlabel_message

10

unlabel_thread

10

Untuk mengetahui informasi selengkapnya, lihat referensi Gmail MCP API.