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

Start now. We will help.

You don't just get a new platform — you get a team of email professionals to back you up. We'll do a free 60-min roadmapping session with you, create your custom design theme, and help you adopt our signature framework.