toitzi / laravel-cloudflare-mail
Cloudflare Email Service transport for Laravel mailers.
v1.0.2
2026-04-16 17:20 UTC
Requires
- php: ^8.4
- illuminate/http: ^12.0 || ^13.0
- illuminate/mail: ^12.0 || ^13.0
- illuminate/support: ^12.0 || ^13.0
- symfony/mailer: ^8.0
- symfony/mime: ^8.0
Requires (Dev)
- orchestra/testbench: ^9.0 || ^10.0 || ^11.0
- pestphp/pest: ^4.0
README
toitzi/laravel-cloudflare-mail adds a cloudflare mail transport to Laravel so mailers can send through the Cloudflare Email Service REST API.
Installation
composer require toitzi/laravel-cloudflare-mail
Laravel discovers the package automatically.
Configuration
Define the mailer directly in config/mail.php:
'default' => env('MAIL_MAILER', 'cloudflare'), 'mailers' => [ 'cloudflare' => [ 'transport' => 'cloudflare', 'account_id' => env('CLOUDFLARE_EMAIL_ACCOUNT_ID'), 'api_token' => env('CLOUDFLARE_EMAIL_API_TOKEN'), 'base_url' => env('CLOUDFLARE_EMAIL_BASE_URL', 'https://api.cloudflare.com/client/v4'), 'timeout' => 30, 'connect_timeout' => 10, ], ],
Supported message features
- HTML and plain text bodies
from,to,cc,bcc, and singlereply-toaddresses- Standard attachments
- Custom headers such as
In-Reply-To,References,List-Unsubscribe, andX-*
Limitations
- Cloudflare's REST API only supports a single
fromaddress. - Cloudflare's REST API only supports a single
reply_toaddress. - Inline attachments are not supported by the REST API and will throw an exception.
Testing
composer test