ceytek-labs/matomo-services-lite

Matomo Services Lite is a lightweight and extendable library designed to help you manage data easily using the Matomo in your PHP projects.

v1.11.0 2024-11-14 14:16 UTC

README

Matomo Services Lite

Total Downloads Latest Version Size License

Matomo Services Lite - Matomo API for PHP

Matomo Services Lite is a lightweight and extendable library designed to help you manage data easily using the Matomo in your PHP projects.

Disclaimer: This package is not an official product of Matomo. The developers accept no responsibility for any issues, discrepancies, or damages that may arise from its use.

Requirements

  • PHP 7.0 or higher (including PHP 8)

Installation

You can add this package to your projects via Composer:

composer require ceytek-labs/matomo-services-lite

Services

Actions

The Actions API lets you request reports for all your Visitor Actions: Page URLs, Page titles, Events, Content Tracking, File Downloads and Clicks on external websites.

Example Usage

The following example demonstrates how to manage data in a Actions document:

⬆ Back to services

Actions: Get

use CeytekLabs\MatomoServicesLite\Matomo;

$result = Matomo::make()
    ->setApi('<your-api-url>')
    ->setToken('<your-token>')
    ->actions()
    ->setIdSite('<your-id-site>')
    ->setPeriod('<your-period>')
    ->setDate('<your-date>')
    ->get();

echo '<pre>'; print_r($result);

⬆ Back to services

Actions: Get Page Urls

use CeytekLabs\MatomoServicesLite\Matomo;

$result = Matomo::make()
    ->setApi('<your-api-url>')
    ->setToken('<your-token>')
    ->actions()
    ->setIdSite('<your-id-site>')
    ->setPeriod('<your-period>')
    ->setDate('<your-date>')
    ->getPageUrls();

echo '<pre>'; print_r($result);

⬆ Back to services

Devices Detection

The DevicesDetection API lets you access reports on your visitors devices, brands, models, Operating system, Browsers.

Example Usage

The following example demonstrates how to manage data in a Devices Detection document:

⬆ Back to services

Devices Detection: Get Type

use CeytekLabs\MatomoServicesLite\Matomo;

$result = Matomo::make()
    ->setApi('<your-api-url>')
    ->setToken('<your-token>')
    ->devicesDetection()
    ->setIdSite('<your-id-site>')
    ->setPeriod('<your-period>')
    ->setDate('<your-date>')
    ->getType();

echo '<pre>'; print_r($result);

⬆ Back to services

Events

The Events API lets you request reports about your users' Custom Events.

Example Usage

The following example demonstrates how to manage data in a Devices Detection document:

⬆ Back to services

Events: Get Action

use CeytekLabs\MatomoServicesLite\Matomo;

$result = Matomo::make()
    ->setApi('<your-api-url>')
    ->setToken('<your-token>')
    ->events()
    ->setIdSite('<your-id-site>')
    ->setPeriod('<your-period>')
    ->setDate('<your-date>')
    ->getAction();

echo '<pre>'; print_r($result);

⬆ Back to services

Events: Get Category

use CeytekLabs\MatomoServicesLite\Matomo;

$result = Matomo::make()
    ->setApi('<your-api-url>')
    ->setToken('<your-token>')
    ->events()
    ->setIdSite('<your-id-site>')
    ->setPeriod('<your-period>')
    ->setDate('<your-date>')
    ->getCategory();

echo '<pre>'; print_r($result);

⬆ Back to services

Events: Get Name

use CeytekLabs\MatomoServicesLite\Matomo;

$result = Matomo::make()
    ->setApi('<your-api-url>')
    ->setToken('<your-token>')
    ->events()
    ->setIdSite('<your-id-site>')
    ->setPeriod('<your-period>')
    ->setDate('<your-date>')
    ->getName();

echo '<pre>'; print_r($result);

⬆ Back to services

Events: Get Name From Action ID

use CeytekLabs\MatomoServicesLite\Matomo;

$result = Matomo::make()
    ->setApi('<your-api-url>')
    ->setToken('<your-token>')
    ->events()
    ->setIdSite('<your-id-site>')
    ->setPeriod('<your-period>')
    ->setDate('<your-date>')
    ->setIdSubtable('<your-id-subtable>')
    ->getNameFromActionId();

echo '<pre>'; print_r($result);

⬆ Back to services

Marketing Campaigns Reporting

API for plugin MarketingCampaignsReporting

Example Usage

The following example demonstrates how to manage data in a Marketing Campaigns Reporting document:

⬆ Back to services

Marketing Campaigns Reporting: Get Name

use CeytekLabs\MatomoServicesLite\Matomo;

$result = Matomo::make()
    ->setApi('<your-api-url>')
    ->setToken('<your-token>')
    ->marketingCampaignsReporting()
    ->setIdSite('<your-id-site>')
    ->setPeriod('<your-period>')
    ->setDate('<your-date>')
    ->getName();

echo '<pre>'; print_r($result);

⬆ Back to services

Sites Manager

The SitesManager API gives you full control on Websites in Matomo (create, update and delete), and many methods to retrieve websites based on various attributes.

Example Usage

The following example demonstrates how to manage data in a Sites Manager document:

⬆ Back to services

Sites Manager: Get All Sites

use CeytekLabs\MatomoServicesLite\Matomo;

$result = Matomo::make()
    ->setApi('<your-api-url>')
    ->setToken('<your-token>')
    ->sitesManager()
    ->getAllSites();

echo '<pre>'; print_r($result);

⬆ Back to services

Users Manager

The UsersManager API lets you Manage Users and their permissions to access specific websites.

Example Usage

The following example demonstrates how to manage data in a Users Manager document:

⬆ Back to services

Users Manager: Get Users With Site Access

use CeytekLabs\MatomoServicesLite\Matomo;

$result = Matomo::make()
    ->setApi('<your-api-url>')
    ->setToken('<your-token>')
    ->usersManager()
    ->setIdSite('<your-id-site>')
    ->setAccess('<your-access>')
    ->getUsersWithSiteAccess();

echo '<pre>'; print_r($result);

⬆ Back to services

Visits Summary

VisitsSummary API lets you access the core web analytics metrics (visits, unique visitors, count of actions (page views & downloads & clicks on outlinks), time on site, bounces and converted visits).

Example Usage

The following example demonstrates how to manage data in a Visits Summary document:

⬆ Back to services

Visits Summary: Get

use CeytekLabs\MatomoServicesLite\Matomo;

$result = Matomo::make()
    ->setApi('<your-api-url>')
    ->setToken('<your-token>')
    ->visitsSummary()
    ->setIdSite('<your-id-site>')
    ->setPeriod('<your-period>')
    ->setDate('<your-date>')
    ->get();

echo '<pre>'; print_r($result);

Contributing

Feel free to submit a pull request or report an issue. Any contributions and feedback are highly appreciated!

License

This project is licensed under the MIT License.