يوضّح هذا المستند كيفية إنشاء رسائل إلكترونية وإرسالها باستخدام Gmail API.
تتوفّر طريقتان لإرسال رسائل إلكترونية باستخدام Gmail API:
- يمكنك إرسالها مباشرةً باستخدام طريقة
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 لعدة لغات:
جافا
يمكن تبسيط عملية إنشاء رسالة إلكترونية باستخدام فئة 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: رمز الدخول الذي يمنح الإذن بالوصول إلى واجهة برمجة التطبيقات.MESSAGE: رسالة MIME منسَّقة وفقًا لمعيار RFC 2822، وتم ترميزها بتنسيق base64URL.
إنشاء رسائل تتضمّن مرفقات
إنشاء رسالة تتضمّن مرفقًا يشبه إنشاء أي رسالة أخرى، ولكن عملية تحميل الملف كرسالة MIME متعددة الأجزاء تعتمد على لغة البرمجة.
تعرض عيّنات الرموز البرمجية التالية طرقًا محتملة لإنشاء رسالة MIME متعددة الأجزاء تتضمّن مرفقًا:
جافا
يوضّح نموذج الرمز البرمجي التالي كيفية إنشاء رسالة 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: رمز الدخول الذي يمنح الإذن بالوصول إلى واجهة برمجة التطبيقات.-
MESSAGE: رسالة MIME منسَّقة وفقًا لمعيار RFC 2822 وتتضمّن مرفقًا، تم ترميزها باستخدام base64URL.
إرسال الرسائل
بعد إنشاء رسالة، يمكنك إرسالها من خلال توفيرها في نص الطلب الخاص بطريقة messages.send، كما هو موضّح في الأمثلة التالية:
جافا
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: رمز الدخول الذي يمنح الإذن بالوصول إلى واجهة برمجة التطبيقات.MESSAGE: رسالة MIME منسَّقة وفقًا لمعيار RFC 2822، وتم ترميزها بتنسيق base64URL.
إذا كنت تحاول إرسال ردّ وتريد تجميع الرسالة الإلكترونية في سلسلة محادثات، تأكَّد مما يلي:
- تتطابق العناوين
Subject - يتّبع العنوانان
ReferencesوIn-Reply-Toمعيار RFC 2822.