Gmail API มีขีดจำกัดการใช้งานที่จำกัดอัตราที่คุณสามารถเรียกใช้เมธอด API ขีดจำกัดจะกำหนดในรูปของหน่วยโควต้า ซึ่งเป็นหน่วยวัดนามธรรมที่แสดงถึงการใช้ทรัพยากรของ Gmail
โควต้า Gmail API
Gmail API บังคับใช้โควต้า 2 ประเภท ได้แก่
ต่อนาทีต่อโปรเจ็กต์: จำนวนหน่วยโควต้าที่โปรเจ็กต์ที่อยู่ในระบบคลาวด์ Google ใช้ได้ใน 1 นาที
ต่อนาทีต่อผู้ใช้ต่อโปรเจ็กต์: จำนวนหน่วยโควต้าที่ผู้ใช้รายใดรายหนึ่งสามารถใช้ได้ในโปรเจ็กต์ที่อยู่ในระบบคลาวด์ ขีดจำกัดนี้ช่วยให้มั่นใจได้ว่าผู้ใช้จะมีการใช้งานอย่างเป็นธรรม
ตารางต่อไปนี้แสดงรายละเอียดขีดจำกัดเหล่านี้
| ประเภทขีดจำกัดการใช้งาน | ขีดจำกัด |
|---|---|
| ต่อนาทีต่อโปรเจ็กต์ | หน่วยโควต้า 1,200,000 หน่วย |
| ต่อนาทีต่อผู้ใช้ต่อโปรเจ็กต์ | 6,000 หน่วยโควต้า |
โปรดดูข้อมูลเกี่ยวกับการจัดการข้อผิดพลาดเกี่ยวกับขีดจำกัดที่หัวข้อแก้ไขข้อผิดพลาด
เกณฑ์การเรียกเก็บเงินรายวัน
ขีดจำกัดต่อวันต่อโปรเจ็กต์นี้จะกำหนดจำนวนหน่วยโควต้าสูงสุดที่โปรเจ็กต์ Google Cloud ของคุณสามารถใช้ได้ภายในระยะเวลา 24 ชั่วโมงก่อนที่จะมีการเรียกเก็บเงิน
การใช้งานที่ต่ำกว่าเกณฑ์นี้จะไม่ทำให้เกิดค่าใช้จ่ายเพิ่มเติม และระบบจะไม่เรียกเก็บเงินจากบัญชี Google Cloud ของคุณ Google จะแชร์รายละเอียดการเรียกเก็บเงินทั้งหมดในภายหลังในปี 2026 โดยจะแจ้งให้ทราบล่วงหน้าอย่างน้อย 90 วันก่อนที่การเปลี่ยนแปลงจะมีผล
คุณไม่สามารถขอเพิ่มเกณฑ์รายวันนี้ได้
ตารางต่อไปนี้แสดงรายละเอียดขีดจำกัด
| ประเภทเกณฑ์การชำระเงิน | ขีดจำกัด |
|---|---|
| ต่อวันต่อโปรเจ็กต์ | โควต้า 80,000,000 หน่วย |
ดูข้อมูลเพิ่มเติมได้ที่โมเดลมาตรฐานของ Google Workspace สำหรับเครื่องมือและ API ของ Agent
การใช้โควต้าต่อเมธอด
จำนวนหน่วยโควต้าที่คำขอแต่ละรายการใช้จะแตกต่างกันไปตามเมธอดที่คุณเรียกใช้และพารามิเตอร์การค้นหา ตารางต่อไปนี้แสดงการใช้หน่วยโควต้าต่อเมธอด
| วิธีการ | หน่วยโควต้า |
|---|---|
drafts.create |
10 |
drafts.delete |
10 |
drafts.get |
20 (60 เมื่อ format เป็น full, raw หรือ 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 เมื่อ format เป็น full, raw หรือ 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 เมื่อ format เป็น full) |
threads.list |
10 |
threads.modify |
10 |
threads.trash |
20 |
threads.untrash |
10 |
watch |
100 |
เมื่อใช้ Gmail API จะมีขีดจำกัดผู้รับ 500 รายต่อข้อความอีเมลด้วย
แก้ไขข้อผิดพลาดเกี่ยวกับโควต้าตามเวลา
สำหรับข้อผิดพลาดที่อิงตามเวลาทั้งหมด (คำขอสูงสุด N รายการต่อ X นาที) เราขอแนะนำให้โค้ดของคุณตรวจจับข้อยกเว้นและใช้ Truncated Exponential Backoff เพื่อให้แน่ใจว่าอุปกรณ์จะไม่สร้างภาระงานมากเกินไป
Exponential Backoff เป็นกลยุทธ์การจัดการข้อผิดพลาดมาตรฐานสำหรับแอปพลิเคชันเครือข่าย อัลกอริทึม Exponential Backoff จะลองส่งคำขออีกครั้งโดยใช้เวลารอที่เพิ่มขึ้นแบบทวีคูณระหว่างคำขอ จนถึงเวลา Backoff สูงสุด หากคำขอยังคงไม่สำเร็จ คุณต้องเพิ่มความล่าช้าระหว่างคำขอเมื่อเวลาผ่านไปจนกว่าคำขอจะสำเร็จ
ตัวอย่างอัลกอริทึม
อัลกอริทึม Exponential Backoff จะลองส่งคำขอซ้ำแบบทวีคูณ โดยเพิ่มเวลารอระหว่างการลองใหม่จนถึงเวลา Backoff สูงสุด เช่น
- ส่งคำขอไปยัง Gmail API
- หากคำขอล้มเหลว ให้รอ 1 +
random_number_millisecondsแล้วลองส่งคำขออีกครั้ง - หากคำขอล้มเหลว ให้รอ 2 +
random_number_millisecondsแล้วลองส่งคำขออีกครั้ง - หากคำขอล้มเหลว ให้รอ 4 +
random_number_millisecondsแล้วลองส่งคำขออีกครั้ง - และต่อไปเรื่อยๆ จนถึงครั้งที่
maximum_backoff - รอต่อไปและลองใหม่จนกว่าจะถึงจำนวนครั้งสูงสุดที่อนุญาต แต่ไม่ต้องเพิ่มระยะเวลารอระหว่างการลองใหม่แต่ละครั้ง
โดยที่
- เวลารอคือ
min(((2^n)+random_number_milliseconds), maximum_backoff)โดยnจะเพิ่มขึ้น 1 สำหรับการทำซ้ำ (คำขอ) แต่ละครั้ง random_number_millisecondsคือจำนวนมิลลิวินาทีแบบสุ่มที่น้อยกว่าหรือเท่ากับ 1,000 ซึ่งจะช่วยหลีกเลี่ยงกรณีที่ไคลเอ็นต์จำนวนมากซิงค์ข้อมูลตามสถานการณ์บางอย่างและลองใหม่ทั้งหมดพร้อมกัน โดยส่งคำขอเป็นคลื่นที่ซิงค์ข้อมูล ระบบจะคำนวณค่าของrandom_number_millisecondsใหม่หลังจากคำขอให้ลองอีกครั้งแต่ละรายการmaximum_backoffมักจะมีความยาว 32 หรือ 64 วินาที ค่าที่เหมาะสมจะขึ้นอยู่กับกรณีการใช้งาน
ไคลเอ็นต์จะลองใหม่ได้หลังจากถึงเวลา maximum_backoff แล้ว
การลองใหม่หลังจากจุดนี้ไม่จำเป็นต้องเพิ่มเวลา Backoff ต่อไป ตัวอย่างเช่น หากไคลเอ็นต์ใช้เวลา maximum_backoff 64 วินาที หลังจากถึงค่านี้แล้ว ไคลเอ็นต์จะลองใหม่ได้ทุกๆ 64 วินาที เมื่อถึงจุดหนึ่ง คุณควรป้องกันไม่ให้ไคลเอ็นต์ลองใหม่ไปเรื่อยๆ อย่างไม่มีที่สิ้นสุด
เวลารอระหว่างการลองใหม่และจำนวนครั้งที่ลองใหม่จะขึ้นอยู่กับ Use Case และสภาพเครือข่ายของคุณ
ราคา
การใช้งาน Gmail API แบบมาตรฐานทั้งหมดจะไม่มีค่าใช้จ่ายเพิ่มเติม เราวางแผนที่จะเรียกเก็บเงินจากบัญชีสำหรับการเรียกเก็บเงินใน Google Cloud ของคุณในภายหลังในปี 2026 หากมีการส่งคำขอเกินขีดจำกัดโควต้า โปรดดูข้อมูลเพิ่มเติมที่หัวข้อโมเดลมาตรฐานของ Google Workspace สำหรับเครื่องมือและ API ของ Agent
ขอเพิ่มโควต้า
คุณอาจต้องขอปรับโควต้า ทั้งนี้ขึ้นอยู่กับการใช้ทรัพยากรของโปรเจ็กต์ การเรียก API โดยบัญชีบริการจะถือว่าเป็นการใช้บัญชีเดียว การขอปรับโควต้าอาจไม่ได้รับการอนุมัติเสมอไป คำขอปรับโควต้าที่เพิ่มค่าโควต้าอย่างมีนัยสำคัญอาจใช้เวลานานกว่าจะได้รับอนุมัติ
โปรเจ็กต์ทั้งหมดไม่ได้มีโควต้าเหมือนกัน เมื่อคุณใช้ Google Cloud มากขึ้นเรื่อยๆ คุณอาจต้องเพิ่มค่าโควต้า หากคาดว่าการใช้งานจะเพิ่มขึ้นอย่างเห็นได้ชัดในอนาคต คุณสามารถขอปรับโควต้าล่วงหน้าได้จากหน้าโควต้าและขีดจำกัดของระบบในคอนโซล Google Cloud
ดูข้อมูลเพิ่มเติมได้ที่แหล่งข้อมูลต่อไปนี้
โควต้าเซิร์ฟเวอร์ MCP ของ Gmail
เซิร์ฟเวอร์ MCP ของ Gmail ใช้เมตริกการจัดสรรต้นทุนการค้นหา ตารางต่อไปนี้แสดงรายละเอียดต้นทุนการค้นหาสำหรับเมธอดเซิร์ฟเวอร์ Gmail MCP แต่ละเมธอดตามส่วนต่างๆ
โควต้า MCP ของ Gmail
เซิร์ฟเวอร์จะบังคับใช้โควต้า 2 ประเภท ได้แก่
ต่อนาทีต่อโปรเจ็กต์: นี่คือค่าใช้จ่ายในการค้นหาสำหรับโปรเจ็กต์ที่อยู่ในระบบคลาวด์เป็นเวลา 1 นาที
ต่อนาทีต่อผู้ใช้ต่อโปรเจ็กต์: นี่คือค่าใช้จ่ายในการค้นหาสำหรับโปรเจ็กต์ที่อยู่ในระบบคลาวด์เป็นเวลา 1 นาทีที่ผู้ใช้รายใดรายหนึ่งสามารถใช้ได้
ตารางต่อไปนี้แสดงรายละเอียดโควต้าเหล่านี้
| ประเภทขีดจำกัดการใช้งาน | ค่าใช้จ่ายในการค้นหา |
|---|---|
| ต่อนาทีต่อโปรเจ็กต์ | 1,200,000 |
| ต่อนาทีต่อผู้ใช้ต่อโปรเจ็กต์ | 6,000 |
โควต้าชุดเครื่องมือ MCP ของ Gmail
ตารางต่อไปนี้แสดงรายละเอียดค่าใช้จ่ายในการค้นหาสำหรับชุดเครื่องมือ gmailmcp.googleapis.com แต่ละชุด
| ปลายทาง | เครื่องมือ | ค่าใช้จ่ายในการค้นหา |
|---|---|---|
/mcp/v1 |
|
10 |
|
40 |
|
|
10 |
|
|
10 |
|
|
5 |
|
|
1 |
|
|
10 |
|
|
10 |
|
|
10 |
ดูข้อมูลเพิ่มเติมได้ที่เอกสารอ้างอิง Gmail MCP API