Google Sheets API เป็นบริการที่ใช้ร่วมกัน และเราใช้โควต้าและข้อจำกัดเพื่อปกป้องประสิทธิภาพโดยรวมของระบบ Google Workspace สำหรับผู้ใช้ทุกคน
ขีดจำกัดโควต้า
แม้ว่า Sheets API จะไม่มีขีดจำกัดขนาดที่แน่นอนสำหรับคำขอ API แต่ผู้ใช้อาจพบข้อจำกัดจากคอมโพเนนต์การประมวลผลต่างๆ ที่ Google Sheets ไม่ได้ควบคุม เราขอแนะนำให้ใช้เพย์โหลดสูงสุด 2 MB เพื่อเพิ่มความเร็วในการส่งคำขอ
Sheets API มีโควต้าต่อนาทีและจะเติมโควต้าทุกนาที
เช่น มีขีดจำกัดคำขออ่านอยู่ที่ 300 รายการต่อนาทีต่อโปรเจ็กต์ หากแอปของคุณส่งคำขอ 350 รายการใน 1 นาที คำขอเพิ่มเติม 50 รายการจะเกินโควต้าและสร้างการตอบกลับรหัสสถานะ HTTP 429: Too many requests หากเกิดกรณีนี้ขึ้น คุณควรใช้อัลกอริทึม Exponential Backoff
หลังจากผ่านไป 1 นาที คุณจะส่งคำขอได้อีกครั้ง
ตารางต่อไปนี้แสดงรายละเอียดขีดจำกัดคำขอ
| โควต้า | |||||
|---|---|---|---|---|---|
| คำขอที่อ่าน |
|
||||
| คำขอที่เขียน |
|
||||
โปรดดูรายละเอียดเกี่ยวกับขีดจำกัดไฟล์ที่หัวข้อ ไฟล์ที่คุณเก็บไว้ใน Google ไดรฟ์
ลักษณะการทำงานและข้อจำกัด
เมื่อใช้ Sheets API โปรดทราบลักษณะการทำงานและข้อจำกัดต่อไปนี้ที่จะส่งผลต่อโควต้า
คำขอที่อ่านคือการเรียกใช้เมธอดใดก็ตามที่ดึงข้อมูลจากสเปรดชีต เช่น
getหรือsearchคำขอที่เขียนคือการเรียกใช้เมธอดใดก็ตามที่เปลี่ยนแปลงสเปรดชีต เช่นupdate,clearหรือcopyToผู้ใช้สามารถส่งคำขอหลายรายการพร้อมกันได้ตราบใดที่คำขอดังกล่าวไม่เกินขีดจำกัดโควต้า ระบบจะนับคำขอแบบกลุ่มแต่ละรายการ รวมถึงคำขอย่อยใดก็ตาม เป็นคำขอ API 1 รายการที่รวมอยู่ในขีดจำกัดการใช้งาน
ระบบจะใช้คำขอ Sheets ทั้งหมดแบบอะตอมมิก นั่นคือหากคำขอใดไม่ถูกต้อง การอัปเดตทั้งหมดจะไม่สำเร็จและระบบจะไม่ใช้การเปลี่ยนแปลงใดๆ (ที่อาจขึ้นอยู่กับคำขออื่น)
มีขีดจำกัดเวลาสูงสุดสำหรับการประมวลผลคำขอ API 1 รายการ เมื่อ Sheets ประมวลผลคำขอนานกว่า 180 วินาที คำขอจะแสดงข้อผิดพลาดการหมดเวลา
ตราบใดที่คุณยังคงอยู่ในโควต้าต่อนาที คุณจะส่งคำขอได้ไม่จำกัดจำนวนต่อวัน
แก้ไขข้อผิดพลาดเกี่ยวกับโควต้าตามเวลา
สำหรับข้อผิดพลาดทั้งหมดที่อิงตามเวลา (คำขอสูงสุด N รายการต่อ X นาที) เราขอแนะนำ ให้โค้ดของคุณตรวจจับข้อยกเว้นและใช้ Exponential Backoff แบบย่อ เพื่อให้แน่ใจว่าอุปกรณ์ จะไม่สร้างภาระงานมากเกินไป
Exponential Backoff เป็นกลยุทธ์การจัดการข้อผิดพลาดมาตรฐานสำหรับแอปพลิเคชันเครือข่าย อัลกอริทึม Exponential Backoff จะลองส่งคำขออีกครั้งโดยใช้เวลารอที่เพิ่มขึ้นแบบยกกำลัง ระหว่างคำขอ โดยรอสูงสุดตามเวลา Backoff สูงสุด หากคำขอไม่สำเร็จ คุณควรเพิ่มความล่าช้าระหว่างคำขอเมื่อเวลาผ่านไปจนกว่าคำขอจะสำเร็จ
อัลกอริทึมตัวอย่าง
อัลกอริทึม Exponential Backoff จะลองส่งคำขออีกครั้งแบบยกกำลัง โดยเพิ่มเวลารอ ระหว่างการลองอีกครั้งสูงสุดตามเวลา Backoff สูงสุด เช่น
- ส่งคำขอไปยัง Google Sheets 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 วินาทีได้ ไคลเอ็นต์ควรได้รับการป้องกันไม่ให้ลองอีกครั้งอย่างไม่มีกำหนด
เวลารอระหว่างการลองอีกครั้งและจำนวนการลองอีกครั้งจะขึ้นอยู่กับกรณีการใช้งาน และสภาพเครือข่าย
ราคา
การใช้ Google Sheets API ตามมาตรฐานทั้งหมดจะไม่มีค่าใช้จ่ายเพิ่มเติม การส่งคำขอเกินขีดจำกัดโควต้า จะมีการเรียกเก็บเงินจากบัญชีสำหรับการเรียกเก็บเงินของ Google Cloud ในช่วงปลายปี 2026 ดูข้อมูลเพิ่มเติมได้ที่ โมเดลมาตรฐานของ Google Workspace สำหรับเครื่องมือและ API ของตัวแทน
ขอเพิ่มโควต้า
คุณอาจต้องการขอปรับโควต้าตามการใช้ทรัพยากรของโปรเจ็กต์ ระบบจะถือว่าการเรียก API โดยบัญชีบริการเป็นการใช้บัญชีเดียว การขอโควต้าที่ปรับแล้วอาจไม่ได้รับการอนุมัติเสมอไป คำขอปรับโควต้าที่จะเพิ่มค่าโควต้าอย่างมากอาจใช้เวลาในการอนุมัตินานขึ้น
โปรเจ็กต์ทั้งหมดอาจมีโควต้าไม่เท่ากัน เมื่อคุณใช้ Google Cloud มากขึ้นเรื่อยๆ เมื่อเวลาผ่านไป ค่าโควต้าอาจต้องเพิ่มขึ้น หากคาดว่าจะมีการใช้งานเพิ่มขึ้นอย่างเห็นได้ชัดในอนาคตอันใกล้ คุณสามารถ ขอปรับโควต้าล่วงหน้า ได้จากหน้า โควต้าและขีดจำกัดของระบบ ในคอนโซล Google Cloud
ดูข้อมูลเพิ่มเติมได้จากแหล่งข้อมูลต่อไปนี้
โควต้าเซิร์ฟเวอร์ MCP ของ Sheets
เซิร์ฟเวอร์ MCP ของ Sheets ใช้เมตริกคำขออ่านและเขียน ตารางต่อไปนี้แสดงรายละเอียดโควต้าและค่าใช้จ่ายในการค้นหาสำหรับเมธอดเซิร์ฟเวอร์ MCP ของ Sheets แต่ละรายการตามส่วน
โควต้า MCP ของ Sheets
ระบบจะบังคับใช้โควต้า 2 ประเภท ได้แก่
ต่อนาทีต่อโปรเจ็กต์: ค่าใช้จ่ายในการค้นหาสำหรับโปรเจ็กต์ Google Cloud ของคุณเป็นเวลา 1 นาที
ต่อนาทีต่อผู้ใช้ต่อโปรเจ็กต์: ค่าใช้จ่ายในการค้นหาสำหรับโปรเจ็กต์ Google Cloud ของคุณเป็นเวลา 1 นาทีที่ผู้ใช้รายใดรายหนึ่งใช้ได้
ตารางต่อไปนี้แสดงรายละเอียดโควต้าเหล่านี้
| โควต้า | |||||
|---|---|---|---|---|---|
| คำขอที่อ่าน |
|
||||
| คำขอที่เขียน |
|
||||
โควต้าชุดเครื่องมือ MCP ของ Sheets
ตารางต่อไปนี้แสดงรายละเอียดค่าใช้จ่ายในการค้นหาสำหรับชุดเครื่องมือ sheetsmcp.googleapis.com แต่ละชุด
| ปลายทาง | เครื่องมือ | ค่าใช้จ่ายในการค้นหา |
|---|---|---|
| /mcp/v1 | get_values |
คำขออ่าน 1 รายการ |
get_spreadsheet |
คำขออ่าน 1 รายการ | |
update_spreadsheet |
คำขอเขียน 1 รายการ | |
update_values |
คำขอเขียน 1 รายการ | |
update_formulas |
คำขอเขียน 1 รายการ | |
insert_dimension |
คำขอเขียน 1 รายการ |
ดูข้อมูลเพิ่มเติมได้ที่ข้อมูลอ้างอิง Sheets MCP API