เอกสารนี้อธิบายวิธีสร้างและส่งข้อความอีเมลโดยใช้ Gmail API
คุณส่งอีเมลโดยใช้ Gmail API ได้ 2 วิธี ดังนี้
- คุณส่งได้โดยตรงโดยใช้เมธอด
messages.send - คุณส่งได้จากฉบับร่างโดยใช้เมธอด
drafts.sendดูข้อมูลเพิ่มเติมเกี่ยวกับการส่งข้อความฉบับร่างได้ที่ส่งฉบับร่าง
ระบบจะส่งข้อความ Gmail เป็นสตริงที่เข้ารหัส base64URL ภายในฟิลด์
raw
ของทรัพยากร messages
วิธีส่งข้อความอีเมล
- สร้างเนื้อหาอีเมลและเข้ารหัสเป็นสตริง base64URL
- สร้างทรัพยากรข้อความใหม่และตั้งค่าพร็อพเพอร์ตี้
rawเป็นสตริง base64URL ที่คุณเพิ่งสร้าง - เรียกใช้เมธอด
messages.sendหรือหากส่งฉบับร่าง ให้เรียกใช้เมธอดdrafts.sendเพื่อส่งข้อความ
รายละเอียดของเวิร์กโฟลว์นี้อาจแตกต่างกันไปตามตัวเลือกของไลบรารีของไคลเอ็นต์ และภาษาโปรแกรม
สร้างข้อความ
Gmail API กำหนดให้ข้อความอีเมล MIME ต้องเป็นไปตาม RFC 2822 และเข้ารหัสเป็นสตริง base64URL ภาษาโปรแกรมหลายภาษามีไลบรารีหรือยูทิลิตีที่ช่วยลดความซับซ้อน ของกระบวนการสร้างและเข้ารหัสข้อความ MIME
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างข้อความ MIME โดยใช้ไลบรารีของไคลเอ็นต์ Google API สำหรับภาษาต่างๆ
Java
คุณสามารถทำให้การสร้างข้อความอีเมลง่ายขึ้นได้ด้วยคลาส MimeMessage ในแพ็กเกจ javax.mail.internet ตัวอย่างโค้ดต่อไปนี้แสดงวิธี
สร้างข้อความอีเมล รวมถึงส่วนหัว
จากนั้นเข้ารหัส MimeMessage สร้างออบเจ็กต์ messages และตั้งค่าสตริงข้อความที่เข้ารหัส base64URL เป็นค่าของพร็อพเพอร์ตี้ raw
Python
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างข้อความ MIME เข้ารหัสเป็นสตริง base64URL และกำหนดให้กับฟิลด์ raw ของทรัพยากร messages
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: โทเค็นเพื่อการเข้าถึงที่ให้สิทธิ์เข้าถึง APIMESSAGE: ข้อความ MIME ที่จัดรูปแบบ RFC 2822 ซึ่งเข้ารหัส เป็น base64URL
สร้างข้อความที่มีไฟล์แนบ
การสร้างข้อความที่มีไฟล์แนบจะเหมือนกับการสร้างข้อความอื่นๆ แต่ กระบวนการอัปโหลดไฟล์เป็นข้อความ MIME แบบหลายส่วนจะขึ้นอยู่กับ ภาษาโปรแกรม
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีที่เป็นไปได้ในการสร้างข้อความ MIME แบบหลายส่วนที่มีไฟล์แนบ
Java
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างข้อความ MIME แบบหลายส่วน ขั้นตอนการเข้ารหัสและการกำหนดจะเหมือนกับสร้าง ข้อความ
Python
ตัวอย่างนี้จะคล้ายกับตัวอย่างสร้างข้อความ โดยจะจัดการการเข้ารหัสข้อความเป็น base64URL และกำหนดให้กับฟิลด์ raw
ของทรัพยากร messages ด้วย
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: โทเค็นเพื่อการเข้าถึงที่ให้สิทธิ์เข้าถึง APIMESSAGE: ข้อความ MIME ที่จัดรูปแบบ RFC 2822 ซึ่งมีไฟล์แนบที่เข้ารหัสเป็น base64URL
ส่งข้อความ
เมื่อสร้างข้อความแล้ว คุณจะส่งข้อความได้โดยระบุข้อความในเนื้อหาคำขอของเมธอด messages.send ดังตัวอย่างต่อไปนี้
Java
Python
cURL
curl --request POST \
'https://gmail.googleapis.com/gmail/v1/users/me/messages/send' \
--header 'Authorization: Bearer ACCESS_TOKEN' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"raw":"MESSAGE"}'
แทนที่ค่าต่อไปนี้
ACCESS_TOKEN: โทเค็นเพื่อการเข้าถึงที่ให้สิทธิ์เข้าถึง APIMESSAGE: ข้อความ MIME ที่จัดรูปแบบ RFC 2822 ซึ่งเข้ารหัส เป็น base64URL
หากคุณพยายามส่งการตอบกลับและต้องการจัดกลุ่มอีเมลเป็นชุดข้อความ โปรดตรวจสอบว่า
- ส่วนหัว
Subjectตรงกัน - ส่วนหัว
ReferencesและIn-Reply-Toเป็นไปตามมาตรฐาน RFC 2822