本文說明如何使用 Gmail API 建立、更新及傳送電子郵件草稿。
電子郵件草稿是指套用 DRAFT 系統標籤的未傳送郵件。
草稿建立後,其中的訊息內容就無法編輯,但可以替換。就這個意義來說,drafts 資源是提供穩定 ID 的容器,因為基礎訊息 ID 會在每次訊息遭到取代時變更。
草稿中的 messages 資源行為與其他郵件類似,但有以下差異:
- 草稿郵件只能有
DRAFT系統標籤,不得有其他標籤。 - 傳送草稿後,系統會自動刪除草稿,並建立含有更新 ID 的新郵件,且附上
SENT系統標籤。這則訊息會以drafts.send方法回應的形式傳回。
建立草稿
您的應用程式可以使用 drafts.create 方法建立草稿。如要撰寫草稿,請按照下列步驟操作:
- 建立符合 RFC 2822 規範的 MIME 郵件。
- 將訊息轉換為 base64URL 編碼字串。
- 呼叫
drafts.create方法,將messages.raw欄位的值設為編碼字串。
以下程式碼範例說明這個程序:
Java
Python
cURL
curl --request POST \
'https://gmail.googleapis.com/gmail/v1/users/me/drafts' \
--header 'Authorization: Bearer ACCESS_TOKEN" \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"message":{"raw":"MESSAGE"}}'
更改下列內容:
- ACCESS_TOKEN:授予 API 存取權的存取權杖。
- MESSAGE:以 RFC 2822 格式設定的 MIME 郵件,並以 base64URL 編碼。
更新草稿
與建立草稿類似,如要更新草稿,您必須在要求主體中提供 drafts 資源,並將 messages.raw 欄位設為包含 MIME 郵件的 base64URL 編碼字串。由於訊息無法更新,因此系統會刪除草稿中的訊息,並以更新要求中提供的新 MIME 訊息取代。
如要擷取草稿中目前的 MIME 訊息,請使用查詢參數 format=raw 呼叫 drafts.get 方法。
詳情請參閱 drafts.update 方法。
傳送草稿
傳送草稿時,您可以直接傳送,也可以在傳送要求中提供更新。
如要在傳送時更新草稿,請在 drafts.send 方法的要求主體中提供 drafts 資源。在 drafts 資源中,您必須指定要傳送的草稿 id,並將 messages.raw 欄位設為以 base64URL 字串編碼的新 MIME 郵件。
如要瞭解如何傳送 Gmail 郵件,請參閱「傳送郵件」。