teraone / matomo-client
A Matomo API Client Library for Laravel
Installs: 12 372
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 3
Forks: 1
Open Issues: 0
Requires
- php: ^8
- illuminate/support: ^8.0|^9|^10
Requires (Dev)
- orchestra/testbench: ^6.0
- phpunit/phpunit: ^9.0
README
This package is based on VisualAppeal/Matomo-PHP-API
Installation
You can install the package via composer:
composer require teraone/matomo-client
Publish and edit the configuration file
php artisan vendor:publish
- Choose
matomo-client
- Update the file
app/config/matomo-client.php
with your Matomo credentials
Usage
To keep things simple, only JSON is supported.
All Methods return a Illuminate\Http\Client\Response
// get the Matomo Client $matomoClient = app()->get('matomo-client'); // get Visits of this month $matomo->setDate(now(), MatomoClient::PERIOD_MONTH) ->setFilterLimit(10) // defaults to 100 ->getVisits() ->json(); // get Event Names of the last week $matomo->setDate(now()->subWeek(), MatomoClient::PERIOD_RANGE, now()) ->getEventName() ->json();
Testing
Under the hood this library uses the Laravel HTTP Client.
You can mock all Requests in your tests
Http::fake( 'https://matomo.test/index.php*' => \Http::response(['value' => 123], 200), );
Changelog
Please see CHANGELOG for more information what has changed recently.
Contributing
Please see CONTRIBUTING for details.
Security
If you discover any security related issues, please email gotre@teraone.de instead of using the issue tracker.
Credits
- VisualAppeal
- All Contributors
- This package was generated using the Laravel Package Boilerplate.
License
The MIT License (MIT). Please see License File for more information.