Skip to main content
Use a public key for tracking events, and a secret key for listing event names.

Track an event (events->track)

<?php

use Mailrify\Mailrify;

$tracker = new Mailrify($_ENV['MAILRIFY_PUBLIC_KEY']);

$result = $tracker->events->track([
    'email' => '[email protected]',
    'event' => 'purchase',
    'subscribed' => true,
    'data' => [
        'product' => 'premium',
        'amount' => 99,
    ],
]);

echo $result->contact . PHP_EOL;
echo $result->event . PHP_EOL;
echo $result->timestamp . PHP_EOL;

List event names (events->listNames)

<?php

use Mailrify\Mailrify;

$client = new Mailrify($_ENV['MAILRIFY_SECRET_KEY']);

$eventNames = $client->events->listNames();
print_r($eventNames);

List event names with alias (events->getNames)

getNames() is an alias for listNames():
<?php

$eventNames = $client->events->getNames();
print_r($eventNames);

Key-type mismatch example

<?php

use Mailrify\Exceptions\AuthenticationException;
use Mailrify\Mailrify;

$client = new Mailrify($_ENV['MAILRIFY_SECRET_KEY']);

try {
    $client->events->track([
        'email' => '[email protected]',
        'event' => 'signup',
    ]);
} catch (AuthenticationException $error) {
    echo $error->getMessage() . PHP_EOL;
}
See endpoint details in the Track event API reference and List event names API reference.