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