laravel-rest-mail-transport maintained by bebo2xd
Description
Laravel custom mail transport for REST API integration with Digital Ocean deployments
Author
Last update
2025/09/08 18:12
(dev-master)
License
Downloads
0
Laravel REST Mail Transport
A Laravel package that provides a custom mail transport for sending emails via REST API, specifically designed for Digital Ocean deployments.
Installation
Install the package via Composer:
composer require bebo2xd/laravel-rest-mail-transport
The service provider will be automatically registered via Laravel's package auto-discovery.
Configuration
- Add the
rest-apimailer configuration to yourconfig/mail.php:
'mailers' => [
// ... other mailers
'rest-api' => [
'transport' => 'rest-api',
'host' => env('MAIL_HOST'),
'port' => env('MAIL_PORT', 587),
'username' => env('MAIL_USERNAME'),
'password' => env('MAIL_PASSWORD'),
'encryption' => env('MAIL_ENCRYPTION'),
],
],
- Update your
.envfile:
MAIL_MAILER=rest-api
MAIL_HOST='https://mailserver.example.com/smtp.php'
MAIL_PORT=587
MAIL_USERNAME='email@example.com'
MAIL_PASSWORD='PASSWORD'
MAIL_ENCRYPTION=tls
MAIL_FROM_ADDRESS="${MAIL_USERNAME}"
MAIL_FROM_NAME="${APP_NAME}"
Usage
Once configured, Laravel will automatically use the REST API transport for sending emails. You can use Laravel's mail functionality as usual:
use Illuminate\Support\Facades\Mail;
use App\Mail\YourMailable;
Mail::to('user@example.com')->send(new YourMailable());
Features
- Supports all standard email features (to, cc, bcc, attachments, etc.)
- Custom headers for authentication
- Automatic logging of sent emails
- Error handling and exceptions
- Compatible with Laravel 9, 10, and 11
Requirements
- PHP ^8.1
- Laravel ^9.0|^10.0|^11.0
- Guzzle HTTP ^7.0
License
MIT License