theafolayan / listmonk-laravel
A Laravel package for interacting with the Listmonk API
1.3.0
2025-02-04 18:37 UTC
Requires
- php: ^8.0
- guzzlehttp/guzzle: ^7.0
- illuminate/support: ^8.0|^9.0|^10.0
README
A Laravel package for interacting with the Listmonk API.
Installation
-
Install the package via Composer:
composer require theafolayan/listmonk-laravel
-
Publish the configuration file:
php artisan vendor:publish --tag=listmonk-config
-
Configure your
.env
file with the following variables:LISTMONK_BASE_URL= LISTMONK_API_USERE= LISTMONK_API_TOKEN=
Usage
Example: Manage Subscribers
Get all subscribers:
use Theafolayan\ListmonkLaravel\Facades\Listmonk; $subscribers = Listmonk::getSubscribers();
Add a subscriber
$newSubscriber = Listmonk::createSubscriber([ 'email' => 'john.doe@example.com', 'name' => 'John Doe', 'status' => 'enabled', ]);
Example: Manage Lists
Get all lists:
$lists = Listmonk::getLists();
Create a new list
$newList = Listmonk::createList([ 'name' => 'Weekly Newsletter', 'description' => 'Updates and news every week.', ]);
Facade
You can use the Listmonk
facade to interact with the Listmonk API:
use Theafolayan\ListmonkLaravel\Facades\Listmonk; $subscribers = Listmonk::getSubscribers(); $list = Listmonk::createList(['name' => 'New List']);
Dependency Injection
Alternatively, you can inject the Listmonk class into your services:
use Theafolayan\ListmonkLaravel\Listmonk; class YourService { protected $listmonk; public function __construct(Listmonk $listmonk) { $this->listmonk = $listmonk; } public function getSubscribers() { return $this->listmonk->getSubscribers(); } }
Methods
getSubscribers(array $filters = [])
createSubscriber(array $data)
getLists()
createList(array $data)
Contributing
Contributions are welcome! To contribute:
- Fork the repository.
- Create a feature branch.
- Submit a pull request.
License
This package is open-sourced software licensed under the MIT license.