PHP Integration

This library helps with integrating Userlist into PHP applications.

See more details on the customer data structure in our general integration guide.

Installation

This library can be installed via Composer:

1
composer require userlist/userlist dev-master

Configuration

The only required configuration is the Push API key. You can get your Push API key via the Push API settings in your Userlist account.

Configuration values can be set when creating a new push client or via environment variables. The environment takes precedence over values provided during the initialization process.

Configuration via environment variables

1
USERLIST_PUSH_KEY=401e5c498be718c0a38b7da7f1ce5b409c56132a49246c435ee296e07bf2be39

Configuration during initialization

1
$userlist = new \Userlist\Push(['push_key' => '401e5c498be718c0a38b7da7f1ce5b409c56132a49246c435ee296e07bf2be39']);

Usage

Before tracking user or event data, create a new push client. If you configured your push key via environment variables, there's nothing to add. Otherwise, see the example above.

1
$userlist = new \Userlist\Push();

Tracking Users

Creating & updating Users

1
2
3
4
5
6
7
8
9
10
11
12
13
$user = [
    'identifier' => 'user-1',
    'email' => 'user@example.com',
    'properties' => [
        'first_name' => 'Jane',
        'last_name' => 'Doe'
    ]
];

$userlist->users->push($user);

$userlist->user($user); // Alias
$userlist->users->create($user); // Alias

Deleting Users

1
2
$userlist->users->delete('user-1');
$userlist->users->delete($user);

Tracking Companies

Creating & updating Companies

1
2
3
4
5
6
7
8
9
10
11
12
13
$company = [
    'identifier' => 'company-1',
    'name' => 'Example, Inc.',
    'properties' => [
        'industry' => 'Software Testing'
    ]
];

$userlist->companies->push($company);

$userlist->company($company); // Alias
$userlist->companies->create($company); // Alias

Deleting Companies

1
2
$userlist->companies->delete('company-1');
$userlist->companies->delete([ 'identifier' => 'company-1' ]);

Tracking Events

1
2
3
4
5
6
7
8
9
10
11
12
$event = [
    'name' => 'project_created',
    'user' => 'user-1',
    'properties' => [
        'name' => 'Example Project',
    ]
];

$userlist->events->push($event);

$userlist->event($event); // Alias
$userlist->events->create($event); // Alias

Book your discovery demo

Let's see how Userlist fits into the bigger picture of your SaaS business. You'll learn about our automation features, integrations, proven lifecycle frameworks, and how we can help you hit your SaaS growth targets.