I'm writing some code to send emails with attachments through the Mailgun email service. They give the following example in their API docs using CURL and I need to figure out how to do the same thing in Node.js (preferably using the Request library).
curl -s -k --user api:key-3ax6xnjp29jd6fds4gc373sgvjxteol0 \
https://api.mailgun.net/v2/samples.mailgun.org/messages \
-F from='Excited User <me@samples.mailgun.org>' \
-F to='obukhov.sergey.nickolayevich@yandex.ru' \
-F cc='sergeyo@profista.com' \
-F bcc='serobnic@mail.ru' \
-F subject='Hello' \
-F text='Testing some Mailgun awesomness!' \
-F html='\<html\>HTML version of the body\<\html>' \
-F attachment=@files/cartman.jpg \
-F attachment=@files/cartman.png
My current code (Coffescript) looks like the following:
r = request(
url: mailgun_uri
method: 'POST'
headers:
'content-type': 'application/x-www-form-urlencoded'
body: email
(error, response, body) ->
console.log response.statusCode
console.log body
)
form = r.form()
for attachment in attachments
form.append('attachment', fs.createReadStream(attachment.path))