Add to your composer.json those lines
"require": {
"vtalbot/mailgun": "1.*"
}
Run php artisan config:publish vtalbot/mailgun
Then edit config.php
in app/packages/vtalbot/mailgun
to your needs.
Add 'VTalbot\Mailgun\MailgunServiceProvider',
to providers
in app/config/app.php
and 'Mailgun' => 'VTalbot\Mailgun\Facades\Mailgun',
to aliases
in app/config/app.php
$app['mailgun']->message(function($mail)
{
$mail->from = 'email@email.com';
$mail->to = 'email@email.com';
$mail->subject = 'test';
$mail->text = 'content';
})->deliver();
Simple.
- message: Send messages (post)
- unsubscribe: Unsubscribe an address (post)
- unsubscribes: Get unsubscribes list (get)
- complaint: Add add address to spam complaints (post)
- complaints: Get spam complaints list (get)
- bounce: Add a bounce (post)
- bounces: Get bounces list (get)
- stats: Get stats (get)
- log: Get logs (get)
- route: Add route (post)
- routes: Get routes list (get)
- mailbox: Add mailbox (post)
- mailboxes: Get mailboxes (get)
- campaign: Add campaign (post)
- campaigns: Get campaigns lists (get)
- list: Add mailing list (post)
- lists: Get mailing lists (get)
You can change function behavior
$mail->delete(); // Call DELETE
$mail->put(); // Call PUT
$mail->post(); // Call POST
$mail->get(); // Call GET
And set parameters by using the parameter name in the documentation on each methods.
Use $mail->param('o:dkim', 'value')
when the parameter has special caracters.
$mail->attachment = 'image'; // create an attachment key in parameters
$mail->attachment = 'image2'; // transform attachment parameters in array and add image2
$mail->path('more'); // Will add 'more' after the url (eg. https://api.mailgun.net/v2/domain.com/complaints/more)