= SendGrid SMTP API gem for Rails {}[http://travis-ci.org/kylejginavan/sendgrid_smtpapi] SendGrid SMTP API gem provides ActionMailer::Base extensions to use SendGrid API features in you emails. It extends ActionMailer with next methods: substitute(patters_string, array_of_substitunion_strings) uniq_args(hash_of_unique_args) category(category_string) open_tracking(enabled = true) add_filter_setting(filter_name, setting_name, value) standard_smtp(enabled = false) == Rails 3 configuration In your Gemfile: gem 'sendgrid_smtpapi' In your config/environment.rb: ActionMailer::Base.register_interceptor(SendGridSmtpApi::MailInterceptor) ActionMailer::Base.smtp_settings = { :address => 'smtp.sendgrid.net', :port => '25', :domain => 'example.com', :authentication => :plain, :user_name => 'login@example.com', :password => 'your password' } == Usage examples === Adding multiple recipients: class Mailer < ActionMailer::Base default :from => 'no-reply@example.com', :subject => 'An email sent via SendGridSmtpApi' def email_with_multiple_recipients mail :to => %w(email1@email.com email2@email.com) end end === Adding substitution vars Mailer class definition: class Mailer < ActionMailer::Base default :from => 'no-reply@example.com', :subject => 'An email sent via SendGridSmtpApi with substitutions' def email_with_substitutions substitute '-user_name-', %w(User1 User2) mail :to => %w(email1@email.com email2@email.com), :body => "Hello, -user_name-!" end end === Adding category Mailer class definition: class Mailer < ActionMailer::Base default :from => 'no-reply@example.com', :subject => 'An email sent via SendGridSmtpApi with substitutions' def email_with_category category 'SendGridSmtpApiRocks' mail :to => 'email1@email.com' end end == Apps (formerly called Filters) Apps can be applied to any of your email messages and can be configured through SendGridSmtpApi gem. === Open Tracking Add an invisible image at the end of the email to track e-mail opens. If the email recipient has images enabled on the email client, a request to server for the invisible image is executed and an open is logged. class Mailer < ActionMailer::Base default :from => 'no-reply@example.com', :subject => 'An email sent via SendGridSmtpApi' def email_with_open_tracking_enabled open_tracking true mail :to => 'email@email.com' end end === Use Standard SMTP if you want to customize the header for sendgrids api but you need keep standard SMTP see below: class Mailer < ActionMailer::Base default :from => 'no-reply@example.com', :subject => 'An email sent via SendGridSmtpApi' def email_standard_smtp standard_smtp true open_tracking true mail :to => 'email@email.com' end end == CONTRIBUTORS: * Kyle J. Ginavan. * Mauro Torres - http://github.com/chebyte