⚠️ 免責聲明
本文內容 純粹學習分享與教學示範,僅供參考。
Gmail API、Gmail SMTP、EmailJS 等方式的操作結果及風險,作者不負任何責任。使用前請自行評估並承擔可能的後果。
在專案中若需要透過程式寄送 Gmail,Google 官方提供的 Gmail API 是最穩定、安全的選擇。本文會先比較常見寄信方式,再一步步帶你完成 Gmail API 設定、取得 Refresh Token,以及監控使用量。
免費額度說明
1. Gmail API 免費額度
使用 Gmail API 前,建議先了解官方提供的免費額度,以免超量:- 每天:250,000 次請求
- 每月:7,500,000 次請求
- 每秒:100 次請求
✅ 此數據為官方公布的免費配額,實際配額可至官方 用量限制頁面 查詢最新數據。
⚠️ 注意:這是「API 請求次數」的限制,不是單封信件數量。實際寄信量仍可能受 Gmail 本身每日寄信上限影響。2. Gmail SMTP 📮(僅參考)
- 免費 Gmail 帳戶:每天最多可發送 500 封郵件。
- Google Workspace 帳戶:每天最多可發送 2,000 封郵件。
- 每封郵件的收件人數量限制:每封郵件最多可包含 100 位收件人。
✅ 實際配額,可至 官方 查詢最新數據
⚠️ 本文未實作 Gmail SMTP,僅供參考,相關問題需自行承擔。
3. EmailJS ✨(僅參考)
- 每月最多 200 次請求:適合小型專案或測試使用。
- 最多 2 種郵件範本:你可以建立自訂的郵件內容。
✅ 實際配額,可至 官方 查詢最新數據
⚠️ 本文未實作 EmailJS,僅供參考,相關問題需自行承擔。
評估問題回報的收件方式
在決定使用 Gmail API 前,我們先簡單比較幾種常見寄信方式(僅供參考,本篇教學僅實作 Gmail API):
1. Gmail API 🛠️
想像它是 Google 官方開的「後門」,讓你可以直接控制 Gmail 功能。
你可以用它來:讀信、發信、標記已讀、整理信件夾……幾乎跟 Gmail 網頁版一樣。
- 適合情境:需要做「進階操作」的應用程式,例如客服系統自動讀信、回信。
- 優點:安全性高,功能完整。
- 缺點:設定比 SMTP 或 EmailJS 複雜,需要 OAuth 驗證。
2. Gmail SMTP 📮(僅參考)
SMTP 就像一個老派郵差,只負責「送信」出去,不管收件、標籤或信件整理。
- 適合情境:只想「寄信」,不需要控制 Gmail 其他功能。
- 優點:設定簡單,快速上手。
- 缺點:安全性沒 Gmail API 高,權限較粗,功能有限。
⚠️ 注意:本文未實作 Gmail SMTP,相關問題需自行承擔3. EmailJS ✨(僅參考)
第三方服務,幫你「中介」寄信,前端程式直接呼叫就能發送,不需要自己架 SMTP 或寫 Gmail API。
- 適合情境:前端工程師快速寄信或小型專案。
- 優點:設定快速,前端友好。
- 缺點:依賴第三方服務,信件自由度與安全性不如 Gmail API 高
⚠️ 注意:本文未實作 EmailJS,相關問題需自行承擔💡 總結:
如果你的應用需要完整控制 Gmail、處理收件與進階操作,Gmail API 是最佳選擇;只想單純寄信的話,SMTP 或 EmailJS 也能滿足需求,但功能和安全性有限。
第一步:Google Cloud Console 設定
1. 建立帳戶
- 登入您的 Google 帳號
- 登入您的 Google 帳號
- 新用戶需要先建立帳戶:
- 選取「個人」
- 稅務身份選「未登記稅籍的個人」
- 若需要英文地址,可到 中華郵政英文地址查詢
- 這裡可以依照自己的需求做調整
- 完成後啟動完整帳戶


- 選取「個人」
- 稅務身份選「未登記稅籍的個人」

- 若需要英文地址,可到 中華郵政英文地址查詢


這裡可以依照自己的需求做調整


- 完成後,點選「Activate full account」。



2. 建立新專案
- 點擊「建立專案」
- 輸入專案名稱
- 建立完成後,記得選取剛剛建立的專案


- 輸入專案名稱

- 建立完成後,記得選取剛剛建立的專案

3. 啟用 Gmail API
- 前往 Gmail API Library
- 點擊「Enable」
- 出現啟用成功畫面

- 啟用成功畫面

4. 設定 OAuth 同意畫面
在專案中需要設定應用程式的使用對象,分成 Internal(內部使用) 和 External(外部使用):
- Internal(內部使用)
- 適用於公司、學校或政府機關
- 必須是 Google Workspace 帳號
- 僅限組織內成員使用
- 例如:員工回報系統、學校學生管理、政府內部系統
- External(外部使用)
- 適用於一般個人或公司對外服務
- 任何 Google 帳號使用者都能授權
- 例如:公開網站、個人專案、Web 應用程式


- 個人用,建議選擇 External(外部使用)

- 填寫信箱後建立成功。



- 建立成功

5. 設定範圍(Scopes)
- 在「範圍」頁面點擊「新增或移除範圍」
- 搜尋「Gmail API」,並勾選:
https://www.googleapis.com/auth/gmail.send
- 點擊「Update」→「Save」


6. 新增測試使用者
- 在「測試使用者」頁面,輸入你的 Gmail 地址
- 點擊「Save」


7. 建立 OAuth 憑證
- 建立完成後,記得 複製 Client ID 與 Client Secret
注意:之後在介面上會隱藏,會看不到- 如果有正式環境,也可以填
- 創建完成後再次確認 Client ID、Client Secret 已備份



- 如果有正式環境,也可以填

- 創建完成後再次確認 Client ID、Client Secret 已備份

第二步:取得 Refresh Token
1. 前往 OAuth 2.0 Playground
- 進入 OAuth Playground
- 點擊右上角齒輪 ⚙️
- 勾選「Use your own OAuth credentials」
- 輸入剛剛的 Client ID 和 Client Secret
- 點擊「Close」

2. 授權並取得 Token
- 在左側「Step 1」搜尋並勾選:
https://www.googleapis.com/auth/gmail.send
- 點擊「Authorize APIs」並登入授權

登入您的 Google 帳號並授權



- 在「Step 2」中點擊「Exchange authorization code for tokens」
重要:複製 Refresh Token(很長的字串,開頭通常是 1//)

⚠️ 請妥善保存 Refresh Token,因為之後寄信都會依賴它。
3. 設定環境變數
將以下資訊寫入 .env 檔案:
- CLIENT_ID
- CLIENT_SECRET
- REFRESH_TOKEN

第三步:監控 Gmail API 使用量
Google 提供免費額度,基本上個人專案很夠用,但若有大量寄信需求,建議設定監控。
1. 查看配額
- 前往 配額頁面
- 預設免費額度:
- 每天 250,000 次請求
- 每月 7,500,000 次請求
- 每秒 100 次請求
2. 查看使用量統計
- 前往:https://console.cloud.google.com/apis/dashboard
- 點擊「Gmail API」
- 查看「Metrics」和「Quotas」標籤
3. 設定配額警告
- 在配額頁面設定提醒門檻
- 例如:當達到 80% 使用量時,觸發警告通知




- 設定完成-配額警告

結論
到這裡,你已經完成 Gmail API 的設定:
- 建立 Google Cloud 專案並啟用 Gmail API
- 設定 OAuth 同意畫面與憑證
- 透過 OAuth Playground 取得 Refresh Token
- 監控 Gmail API 的使用量
這樣一來,你的程式就能透過 Gmail API 安全地寄送電子郵件。
⚠️ 再次提醒
本文內容純粹學習分享與教學示範,Gmail API、SMTP、EmailJS 等操作結果及風險,作者不負任何責任。請讀者自行評估並承擔可能的後果。












