SMTP
Ruby (Mail)
Send emails through Lettermint’s SMTP relay using Ruby and the Mail gem.
Installation
Copy
gem install mail
Or add to your Gemfile:
Copy
gem 'mail'
Basic Configuration
Copy
require 'mail'
# Configure Mail defaults
Mail.defaults do
delivery_method :smtp, {
address: 'smtp.lettermint.co',
port: 587,
user_name: 'lettermint',
password: 'your-api-token',
authentication: 'plain',
enable_starttls_auto: true
}
end
# Send email
mail = Mail.new do
from 'sender@yourdomain.com'
to 'recipient@example.com'
subject 'Test Email'
text_part do
body 'Hello! This is a test email.'
end
html_part do
content_type 'text/html; charset=UTF-8'
body '<h1>Hello!</h1><p>This is a test email.</p>'
end
end
mail.deliver!
Advanced Features
Multiple Recipients
Copy
mail = Mail.new do
from 'sender@yourdomain.com'
to ['user1@example.com', 'user2@example.com']
cc 'manager@yourdomain.com'
bcc 'archive@yourdomain.com'
subject 'Newsletter'
body '<h1>Monthly Update</h1>'
end
Attachments
Copy
mail = Mail.new do
from 'sender@yourdomain.com'
to 'recipient@example.com'
subject 'Document Attached'
body 'Please find the document attached.'
add_file '/path/to/document.pdf'
add_file filename: 'data.txt', content: 'Custom content'
end
Custom Headers
Copy
mail = Mail.new do
from 'sender@yourdomain.com'
to 'recipient@example.com'
subject 'Custom Headers'
body 'Email with custom headers.'
header['X-Priority'] = '1'
header['X-Custom-Header'] = 'Custom Value'
end
Rails Integration
In config/environments/production.rb
:
Copy
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
address: 'smtp.lettermint.co',
port: 587,
user_name: 'lettermint',
password: ENV['LETTERMINT_API_TOKEN'],
authentication: 'plain',
enable_starttls_auto: true
}
Assistant
Responses are generated using AI and may contain mistakes.