用量限制

Gmail API 設有用量限制,會限制呼叫 API 方法的頻率。限制是以配額單位定義,這是代表 Gmail 資源用量的抽象測量單位。

Gmail API 配額

Gmail API 會強制執行兩種配額:

  • 每分鐘/每項專案:這是 Google Cloud 專案一分鐘內可使用的配額單位數量。

  • 每項專案每位使用者每分鐘:這是任何一位使用者在雲端專案中可使用的配額單位數量。這項限制有助於確保使用者公平分配用量。

下表詳細列出這些限制:

用量限制類型 限制
每項專案每分鐘 1,200,000 個配額單位
每位使用者每項專案每分鐘 6,000 個配額單位

如要瞭解如何處理限制錯誤,請參閱「解決錯誤」。

每日結算最低曝光次數門檻

這項「每日每項專案」限制,定義了 Google Cloud 專案在 24 小時內可使用的配額單位上限,超過上限就會產生費用。

用量低於這個門檻不會產生額外費用,您的 Google Cloud 帳戶也不會產生帳單。Google 將於 2026 年稍晚提供完整的帳單詳細資料,並在任何異動生效前至少 90 天通知。

您無法要求提高這項每日門檻限制。

下表詳細列出限制:

門檻限制類型 限制
每項專案每天 80,000,000 個配額單位

詳情請參閱「Google Workspace 標準化模型:代理工具和 API」。

各方法的配額用量

每項要求耗用的配額單位數量,取決於您呼叫的方法和查詢參數。下表列出各方法的配額單位用量:

方法 配額單位
drafts.create 10
drafts.delete 10
drafts.get 20 (如果 format 為 full、raw 或 html,則為 60)
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 (如果 format 為 full、raw 或 html,則為 60)
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 (如果 format 為 full,則為 120)
threads.list 10
threads.modify 10
threads.trash 20
threads.untrash 10
watch 100

使用 Gmail API 時,每封電子郵件訊息的收件者人數上限也是 500 人。

解決時間配額錯誤

對於所有時間型錯誤 (每 X 分鐘最多 N 個要求),建議您讓程式碼擷取例外狀況,並使用截斷指數輪詢,確保裝置不會產生過多負載。

指數輪詢是網路應用程式的標準錯誤處理策略,指數輪詢演算法會重試要求,並以指數方式增加要求之間的等待時間,直到達到最大輪詢時間。如果要求仍未成功,請務必逐漸增加要求之間的延遲時間,直到要求成功為止。

演算法範例

指數輪詢演算法會以指數方式重試要求,並增加重試之間的等待時間,直到達到最大輪詢時間。例如:

  1. 向 Gmail API 提出要求。
  2. 如果要求失敗,請等待 1 + random_number_milliseconds,然後重試要求。
  3. 如果要求失敗,請等待 2 + random_number_milliseconds 秒,然後重試要求。
  4. 如果要求失敗,請等待 4 + random_number_milliseconds 秒,然後重試要求。
  5. 依此類推,時間上限為 maximum_backoff。
  6. 繼續等待及重試,直到重試次數達特定上限,但不要增加重試之間的等待時間。

其中:

  • 等待時間為 min(((2^n)+random_number_milliseconds), maximum_backoff),其中 n 會在每次疊代 (要求) 時遞增 1。
  • random_number_milliseconds 是小於或等於 1,000 的隨機毫秒數。這有助於避免許多用戶端因某種情況而同步,並同時重試,以同步波傳送要求。每次重試要求後,系統都會重新計算 random_number_milliseconds 的值。
  • maximum_backoff 通常是 32 或 64 秒,適當的值取決於用途。

用戶端在達到 maximum_backoff 時間後,可以繼續重試。超過這個時間點後,重試作業就不需要繼續增加輪詢時間。舉例來說,如果用戶端使用的 maximum_backoff 時間為 64 秒,則達到這個值後,用戶端可以每 64 秒重試一次。在某些情況下,應避免用戶端無限次重試。

重試之間的等待時間和重試次數取決於您的用途和網路狀況。

定價

Gmail API 的所有標準用途均不需額外付費。預計在 2026 年稍晚,如果超出配額要求限制,Google Cloud 帳單帳戶將產生費用。詳情請參閱「Google Workspace 標準化模型:代理工具和 API」。

申請提高配額

視專案的資源用量而定,您可能需要要求調整配額。服務帳戶發出的 API 呼叫會視為使用單一帳戶。我們不保證一定能核准您提出的配額調整要求。如果配額調整要求會大幅提高配額值,可能需要較長時間才能獲得核准。

並非所有專案的配額都相同。隨著 Google Cloud 用量增加,您可能需要提高配額。如果您預期使用量將大幅攀升,可以透過 Google Cloud 控制台的「配額與系統限制」頁面,主動提出配額調整要求。

如要進一步瞭解相關內容,請參閱下列資源:

Gmail MCP 伺服器配額

Gmail MCP 伺服器會使用查詢成本分配指標。下表依部分詳細列出各 Gmail MCP 伺服器方法的查詢費用:

Gmail MCP 配額

伺服器會強制執行兩種配額:

  • 每分鐘每項專案:這是 Cloud 專案一分鐘的查詢費用。

  • 每項專案每位使用者每分鐘:這是 Cloud 專案一分鐘內,任何特定使用者可使用的查詢費用。

下表詳細列出這些配額:

用量限制類型 查詢費用
每項專案每分鐘 1,200,000
每位使用者每項專案每分鐘 6,000

Gmail MCP 工具組配額

下表詳細列出各 gmailmcp.googleapis.com 工具組的查詢費用:

端點 工具 查詢費用

/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

詳情請參閱 Gmail MCP API 參考資料。