Security News
Research
Data Theft Repackaged: A Case Study in Malicious Wrapper Packages on npm
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
This gem provides a simple low-frills way to send transactional emails using the Mad Mimi Mailer API. If you need more, please check out our full-sized madmimi gem.
Add this line to your application's Gemfile:
gem 'mimi_mailer'
And then execute:
$ bundle
Or install it yourself as:
$ gem install mimi_mailer
If you aren't using bundler,
require "mimi_mailer"
and then configure the mailer to use your Mad Mimi API settings.
MimiMailer.configure do |config|
config.username = "you@example.com"
config.api_key = "your_api_key"
config.default_from_address = "your default from address" # optional -- will use your username if not configured
end
Then, create a mailer class that subclasses MimiMailer::Base
and implements a delivery method like so:
class UserWelcomeMailer < MimiMailer::Base
from_address 'someone@example.com' # A class-specific from address
def self.deliver(user)
mail(promotion_name: 'promotion_name', to: user.email, subject: "subject", body: { name: user.name })
end
end
MimiMailer::Base.mail
accepts the following options:
{
# Required. The name of the Mad Mimi promotion you want to send
promotion_name: 'promotion_name',
# Required. Who you want to send the email to. Also may be specified with :recipient.
to: 'someone@example.com',
# Who you want the email to be from. If not specified, this will fall back to the
# class-specific from address or the configured default_from_address
from: 'you@example.com',
# The subject of the email
subject: 'A nice email',
# Placeholders that will be merged into a composed promotion on Mad Mimi. :raw_html
# and/or :raw_plain_text may be specified instead (see below)
body: {
first_name: user.first_name,
last_name: user.last_name
}
}
MimiMailer::Base.bulk_mail
accepts the following options:
{
# Required. The name of the Mad Mimi promotion you want to send
promotion_name: 'promotion_name',
# Required. The name of the audience list to import into and send to.
audience_list: 'audience_list',
# Required. The email recipients list in CSV format. Also may be specified with :csv_file.
to: "email,first name,last name,car\ndave@example.com,Dave,Hoover,Ford\ncolin@example.com,Colin,Harris,Chevy",
# Who you want the email to be from. If not specified, this will fall back to the
# class-specific from address or the configured default_from_address
from: 'you@example.com',
# The subject of the email
subject: 'A nice email',
# Placeholders that will be merged into a composed promotion on Mad Mimi. :raw_html
# and/or :raw_plain_text may be specified instead (see below)
body: {
first_name: user.first_name,
last_name: user.last_name
}
}
The email contents can be specified using either:
:body
The body hash contains keys and values that will be substituted into correspoding promotion placeholders.
or
:raw_html
The raw HTML body of the email. May be used in conjunction with :raw_plain_text
.
:raw_plain_text
The raw plain text body of the email. May be used in conjunction with :raw_html
.
Please take a look at our transactional email API guide for more information about these and other options.
FAQs
Unknown package
We found that mimi_mailer demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Research
The Socket Research Team breaks down a malicious wrapper package that uses obfuscation to harvest credentials and exfiltrate sensitive data.
Research
Security News
Attackers used a malicious npm package typosquatting a popular ESLint plugin to steal sensitive data, execute commands, and exploit developer systems.
Security News
The Ultralytics' PyPI Package was compromised four times in one weekend through GitHub Actions cache poisoning and failure to rotate previously compromised API tokens.