SparkPost driver to use with Laravel 6.x|7.x|8.x

4.0.1 2020-09-09 11:32 UTC

This package is auto-updated.

Last update: 2020-10-16 05:46:30 UTC


Latest Version on Packagist Total Downloads


This package allows you to still use SparkPost as MailDriver in Laravel.

This package is inspired by: and updated with driver from Laravel 5.8.x


Find the correct version to use in the table below:

Laravel version Version
6.x 2.x
7.x 3.x
8.x 4.x


You can install the package via composer:

composer require vemcogroup/laravel-sparkpost-driver

The package will automatically register its service provider.


Sparkpost API options

You can define specific [SparkPost options] ( like open_tracking, click_tracking, transactional


You are able to use the EU endpoint for Europe GDPR compliance by setting the endpoint option or the default will be used.

SparkPost (default): SparkPost EU:

Guzzle options

You are able to specify Guzzle options in the SparkPost config section guzzle.

Just add the sparkpost service to your config/services.php.

'sparkpost' => [
    'secret' => env('SPARKPOST_SECRET'),

    // optional guzzle specific configuration
    'guzzle' => [
        'verify' => true,
        'decode_content' => true,
    'options' => [
        // configure endpoint, if not default
        'endpoint' => env('SPARKPOST_ENDPOINT'),

        // optional Sparkpost API options go here
        'return_path' => '',
        'options' => [
            'open_tracking' => false,
            'click_tracking' => false,
            'transactional' => true,


You will also need to add the SparkPost API Key to your environment file


Finally you need to set your mail driver to SparkPost. You can do this by changing the driver in config/mail.php

'driver' => env('MAIL_DRIVER', 'sparkpost'),

Or by setting the environment variable MAIL_DRIVER in your .env file


Laravel 7

If you are using a clean Laravel 7.x installation its important you add the following sparkpost config in config/mail.php mailer section.

'mailers' => [
    'sparkpost' => [
        'transport' => 'sparkpost'

And replace the MAIL_DRIVER from .env with MAIL_MAILER, make sure to keep the sparkpost config on config/services.php.