bebo2xd / laravel-rest-mail-transport
Laravel custom mail transport for REST API integration with Digital Ocean deployments
Installs: 0
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/bebo2xd/laravel-rest-mail-transport
Requires
- php: ^8.1
- guzzlehttp/guzzle: ^7.0
- laravel/framework: ^9.0|^10.0|^11.0
Requires (Dev)
- phpunit/phpunit: ^10.0
This package is auto-updated.
Last update: 2025-10-08 16:28:37 UTC
README
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