Weby, ciele a zdieľané odkazy
Analytiku môžete zriaďovať z kódu — užitočné pre multi-tenant produkty, kde má každý zákazník vlastný web v Plausible. Všetky tri API zdieľajú limit požiadaviek oblasti sites.
Weby
Sites API je funkcia plánu Enterprise a vyžaduje kľúč Sites API — kľúč Stats API tam bude odmietnutý (pozri API kľúče v Konfigurácii).
use RoundlyConsulting\Plausible\Facades\Plausible;
use RoundlyConsulting\Plausible\Requests\Sites\CreateSiteRequest;
use RoundlyConsulting\Plausible\Requests\Sites\UpdateSiteRequest;
$site = Plausible::sites()->create(CreateSiteRequest::make(
domain: 'my.domain.tld',
timezone: 'Europe/Bratislava', // default 'Etc/UTC'
)); // -> SiteResult
$site = Plausible::sites()->get('my.domain.tld'); // -> SiteResult
$site->domain; // 'my.domain.tld'
$site->timezone; // 'Europe/Bratislava'
$site->data; // the full payload
$sites = Plausible::sites()->list(); // -> list<SiteResult>
Plausible::sites()->update(UpdateSiteRequest::make(
site: 'my.domain.tld', // the current domain
domain: 'new.domain.tld', // optional: new domain
timezone: 'Europe/Prague', // optional: new timezone
)); // -> SiteResult
$deleted = Plausible::sites()->delete('my.domain.tld'); // -> boolcreate(), get(), list() a update() vracajú typované objekty SiteResult; delete() vráti true, pokiaľ Plausible neodpovie deleted: false, a neúspešná požiadavka vyhodí výnimku. list() prechádza kurzorovým stránkovaním Plausible (meta.after, 100 na stranu) a vráti všetky weby. Identifikátory webov a cieľov sa v ceste požiadavky URL-kódujú, takže hodnota s / alebo ? sa nedostane k inému endpointu.
Ciele
Ciele sú súčasťou Sites API — funkcie plánu Enterprise, ktorá vyžaduje kľúč Sites API. CreateGoalRequest::event() vytvorí cieľ pre vlastnú udalosť, ::page() cieľ pre zobrazenie stránky a list() prejde všetky strany:
use RoundlyConsulting\Plausible\Requests\Sites\CreateGoalRequest;
$goal = Plausible::goals()->create(CreateGoalRequest::event('my-site.com', 'Signup')); // -> GoalResult
Plausible::goals()->create(CreateGoalRequest::page('my-site.com', '/checkout'));
$goal->id; // 42
$goal->goalType; // 'event' or 'page'
$goal->eventName; // 'Signup'
$goal->pagePath; // null for event goals
$goals = Plausible::goals()->list('my-site.com'); // -> list<GoalResult>, every page
Plausible::goals()->delete('my-site.com', $goal->id); // -> boolZdieľané odkazy
Aj zdieľané odkazy patria do Sites API. create() nájde existujúci odkaz alebo vytvorí nový — ak odkaz s daným názvom už existuje, Plausible vráti ten — a endpoint berie iba web a názov, takže ochrana heslom nie je k dispozícii:
use RoundlyConsulting\Plausible\Requests\Sites\CreateSharedLinkRequest;
// Find-or-create: Plausible returns the existing link when one with that name exists
$link = Plausible::sharedLinks()->create('my-site.com', 'Public dashboard'); // -> SharedLinkResult
$link->name; // 'Public dashboard'
$link->url; // shareable dashboard URL
// Or pass an explicit request object
Plausible::sharedLinks()->createFrom(CreateSharedLinkRequest::make('my-site.com', 'Board'));Životný cyklus zákazníka
Spolu to znamená, že analytika je pripravená od prvého dňa zákazníka a zmizne, keď odíde:
// Provision analytics when a tenant signs up …
Plausible::sites()->create(CreateSiteRequest::make(domain: $tenant->domain, timezone: $tenant->timezone));
Plausible::goals()->create(CreateGoalRequest::event($tenant->domain, 'Signup'));
$dashboard = Plausible::sharedLinks()->create($tenant->domain, 'Customer dashboard')->url;
// … and tear it down when they leave
Plausible::sites()->delete($tenant->domain);Prejavte lásku k open source
Tento balík je zadarmo pod licenciou MIT. Ak vám šetrí čas, jednorazový príspevok alebo členstvo na Patreone nám pomôže ho ďalej udržiavať, testovať a dokumentovať.
Ďalšie spôsoby podpory vrátane kryptomienOdoslaním daru súhlasíte s našimi podmienkami prijímania darov.
Chcete to zabudovať do svojho produktu?
Naše balíky integrujeme do zákazkových Laravel a AI riešení. Napíšte nám, na čom pracujete, a ozveme sa do 48 hodín.