Package Data | |
---|---|
Maintainer Username: | hocza |
Maintainer Contact: | jozsef@hocza.com (Jozsef Hocza) |
Package Create Date: | 2015-03-17 |
Package Last Update: | 2024-01-15 |
Home Page: | https://hocza.com/packages/sendy/ |
Language: | PHP |
License: | MIT |
Last Refreshed: | 2024-11-22 03:03:47 |
Package Statistics | |
---|---|
Total Downloads: | 156,624 |
Monthly Downloads: | 2,157 |
Daily Downloads: | 98 |
Total Stars: | 71 |
Total Watchers: | 5 |
Total Forks: | 21 |
Total Open Issues: | 4 |
A service provider for Sendy API in Laravel 5
composer require hocza/sendy:1.*
or append your composer.json with:
{
"require" : {
"hocza/sendy": "1.*"
}
}
Add the following settings to the config/app.php
Service provider:
'providers' => [
// ...
'Hocza\Sendy\SendyServiceProvider',
]
For the Sendy::
facade
'aliases' => [
// ...
'Sendy' => 'Hocza\Sendy\Facades\Sendy',
]
php artisan vendor:publish --provider="Hocza\Sendy\SendyServiceProvider"
It will create sendy.php within the config directory.
<?php
return [
'listId' => '',
'installationUrl' => '',
'apiKey' => '',
];
$data = [
'email' => 'johndoe@example.com',
'name' => 'John Doe',
'any_custom_column' => 'value',
];
Sendy::subscribe($data);
RESPONSE (array)
In case of success:
['status' => true, 'message' => 'Subscribed']
['status' => true, 'message' => 'Already subscribed']
In case of error:
['status' => false, 'message' => 'The error message']
$email = 'johndoe@example.com';
Sendy::unsubscribe($email);
RESPONSE (array)
In case of success:
['status' => true, 'message' => 'Unsubscribed']
In case of error:
['status' => false, 'message' => 'The error message']
$email = 'johndoe@example.com';
Sendy::status($email);
RESPONSE (Plain text)
Success:
Subscribed
Unsubscribed
Unconfirmed
Bounced
Soft bounced
Complained
Error:
No data passed
API key not passed
Invalid API key
Email not passed
List ID not passed
Email does not exist in list
Sendy::count();
#To check other list:
Sendy::setListId($list_id)->count();
RESPONSE (Plain text)
Success:
You'll get an integer of the active subscriber count
Error:
No data passed
API key not passed
Invalid API key
List ID not passed
List does not exist
<?php
$campaignOptions = [
'from_name' => 'My Name',
'from_email' => 'test@mail.com',
'reply_to' => 'test@mail.com',
'title' => 'My Campaign',
'subject' => 'My Subject',
'list_ids' => '1,2,3', // comma-separated, optional
'brand_id' => 1,
'query_string' => 'utm_source=sendy&utm_medium=email&utm_content=email%20newsletter&utm_campaign=email%20newsletter',
];
$campaignContent = [
'plain_text' => 'My Campaign',
'html_text' => View::make('mail.my-campaign'),
];
$send = false;
Sendy::createCampaign($campaignOptions, $campaignContent, $send);
RESPONSE (Plain text)
Success:
Campaign created
Campaign created and now sending
Error:
No data passed
API key not passed
Invalid API key
From name not passed
From email not passed
Reply to email not passed
Subject not passed
HTML not passed
List ID(s) not passed
One or more list IDs are invalid
List IDs does not belong to a single brand
Brand ID not passed
Unable to create campaign
Unable to create and send campaign
To change the default list ID simply prepend with setListId($list_id)
Examples:
Sendy::setListId($list_id)->subscribe($data);
Sendy::setListId($list_id)->unsubscribe($email);
Sendy::setListId($list_id)->status($email);
Sendy::setListId($list_id)->count();