Gmail API'yi kullanarak e-posta göndermenin iki yolu vardır:
messages.send
yöntemini kullanarak doğrudan gönderebilirsiniz.drafts.send
yöntemini kullanarak taslaklardan gönderebilirsiniz.
E-postalar, ileti kaynağının raw
mülkünde base64url kodlamalı dize olarak gönderilir. E-posta göndermeyle ilgili genel iş akışı şu şekildedir:
- E-posta içeriğini uygun bir şekilde oluşturun ve base64url dizesi olarak kodlayın.
- Yeni bir mesaj kaynağı oluşturun ve
raw
mülkünü, az önce oluşturduğunuz base64url dizesine ayarlayın. - Mesajı göndermek için
messages.send
'ü veya taslak gönderiyorsanızdrafts.send
'ü arayın.
Bu iş akışının ayrıntıları, istemci kitaplığı ve programlama dili seçiminize bağlı olarak değişiklik gösterebilir.
Mesaj oluşturma
Gmail API, RFC 2822 ile uyumlu ve base64url dizesi olarak kodlanmış MIME e-posta iletileri gerektirir. Birçok programlama dilinde, MIME mesajları oluşturma ve kodlama sürecini basitleştiren kitaplıklar veya yardımcı programlar bulunur. Aşağıdaki kod örnekleri, çeşitli diller için Google API'leri istemci kitaplıklarını kullanarak MIME mesajının nasıl oluşturulacağını gösterir.
Java
javax.mail.internet
paketindeki MimeMessage
sınıfı ile e-posta mesajı oluşturma işlemi büyük ölçüde basitleştirilebilir. Aşağıdaki örnekte, üstbilgiler dahil olmak üzere e-posta mesajının nasıl oluşturulacağı gösterilmektedir:
Sonraki adımda MimeMessage
öğesini kodlayın, bir Message
nesnesi oluşturun ve base64url kodlamalı mesaj dizesini raw
mülkünün değerine ayarlayın.
Python
Aşağıdaki kod örneğinde, bir MIME mesajı oluşturma, base64url dizesi olarak kodlama ve Message
kaynağının raw
alanına atama işlemleri gösterilmektedir:
Ek içeren iletiler oluşturma
Ek içeren bir ileti oluşturmak diğer iletileri oluşturmaya benzer ancak dosyayı çok parçalı MIME mesajı olarak yükleme işlemi programlama diline bağlıdır. Aşağıdaki kod örnekleri, ek içeren çok parçalı bir MIME mesajı oluşturmanın olası yollarını göstermektedir.
Java
Aşağıdaki örnekte çok parçalı bir MIME mesajının nasıl oluşturulacağı gösterilmektedir. Kodlama ve atama adımları yukarıdakiyle aynıdır.
Python
Önceki örneğe benzer şekilde bu örnekte de mesajın base64url olarak kodlanması ve Message
kaynağının raw
alanına atanması işlenir.
İleti gönderme
Oluşturduğunuz mesajı, aşağıdaki örneklerde gösterildiği gibi messages.send
adresine yapılan bir çağrının istek gövdesinde sağlayarak gönderebilirsiniz.
Java
Python
Yanıt göndermeye çalışıyorsanız ve e-postanın ileti dizisine eklenmesini istiyorsanız aşağıdakilerden emin olun:
Subject
üstbilgileri eşleşiyorReferences
veIn-Reply-To
üstbilgileri RFC 2822 standardını izler.
Taslaklardan ileti gönderme hakkında bilgi edinmek için Taslak oluşturma başlıklı makaleyi inceleyin.