本記事では、現役Railsエンジニアの管理人が、RailsアプリからMailtrapのテスト用サンドボックスにメール送信する方法を解説します。
本記事の前提
- Railsアプリを作成済み。
- Mailtrapアカウントを作成済み。
Mailtrapアカウントを持っていない方は、Mailtrap公式サイトより作成ください。
本サイトの別記事でアカウント登録方法をスクショ付きで詳しく解説していますので、参考にしてください。
MailtrapのAPIトークン作成
Mailtrapにログインし、左サイドメニューのSettings -> API TokensからAPI Tokenを作成します。
本記事ではSandbox宛てにテストメールを送信するので、PermissionsでMy SandboxのAdminにチェックを入れ、トークン名を「Rails development」として「Save」ボタンをクリックします。

画面に表示されるAPIトークンをコピーします。この画面を閉じると、セキュリティ上の理由からトークンが表示されなくなるので気をつけてください。

コピーしたAPIトークンをRailsのMAILTRAP_API_KEY環境変数に設定します。本記事ではdotenv-rails gemを使って設定します。
# .env
MAILTRAP_API_KEY=your_api_token
mailtrap gemのインストールと設定
Mailtrapの公式Rubyクライアント(gem)をインストールします。
# Gemfile
gem 'mailtrap'
# Bash
bundle install
Mailtrapを利用する環境用の設定ファイルで、メール送信方法を:mailtrapに指定します(本記事では開発環境を例に設定します)。
# config/environments/development.rb
config.action_mailer.delivery_method = :mailtrap
config.action_mailer.mailtrap_settings = {
api_key: ENV['MAILTRAP_API_KEY'],
sandbox: true,
inbox_id: your_sandbox_id,
}
サンドボックスのID(inbox_id)の確認方法は以下の通りです。
- 左サイドメニューのSandboxes -> Projectsより、受信箱の歯車アイコンをクリック。
- Integrationタブ -> APIタブをクリックし、Code SamplesでRuby: Actionmailerを選択し、表示されたinbox_idをコピー。


テストメール送信
RailsアプリからActionMailerでメールを送信し、Sandboxにメールが届いたら成功です。
ActionMailerコード例:
MyMailer.with(params).new_email.deliver_later

まとめ:Mailtrapを使ってRailsからメール送信しよう
Mailtrapを使うと、Railsから簡単にメールを送信できます。
- MailtrapでAPIトークンを作成
- mailtrap gemをRailsにインストールして設定
Mailtrapは無料で登録できるので、ぜひ試してみてください。
