Hey Product Hunt 👋 Get 30% off your first 3 months if you sign up using this link

JavaScript Integration

This package helps with integrating Userlist into Node.js applications for server side tracking.

For client side tracking, please see our documentation about it.

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

Installation

To install this package, use one of the commands corresponding to your package manager.

Via NPM:

1
npm install @userlist/push

Via Yarn:

1
yarn add @userlist/push

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 either be set via the constructor or as environment variables. The environment take precedence over configuration values from the constructor.

Configuration via environment variables:

1
USERLIST_PUSH_KEY=401e5c498be718c0a38b7da7f1ce5b409c56132a49246c435ee296e07bf2be39

Configuration via an constructor:

1
2
3
var Userlist = require('@userlist/push');

var userlist = new Userlist({ pushKey: '401e5c498be718c0a38b7da7f1ce5b409c56132a49246c435ee296e07bf2be39' });

Usage

Tracking Users

To manually send user data into Userlist, use the userlist.users.create method.

1
2
3
4
5
6
7
8
9
10
var userlist = new Userlist();

userlist.users.create({
  identifier: user.id,
  email: user.email,
  properties: {
    first_name: user.first_name,
    last_name: user.last_name
  }
});

It's also possible to delete a user from Userlist, using the userlist.users.delete method.

1
userlist.users.delete(user.id)

Tracking Events

To track custom events use the userlist.events.create method.

1
2
3
4
5
6
7
8
9
var userlist = new Userlist();

userlist.events.create({
  name: 'project_created',
  user: user.id,
  properties: {
    project_name: project.name
  }
})

Book your free strategy call

Solve your biggest email marketing problem in 30 minutes. Bring your own agenda: campaign strategy, email lists, customer data, anything else. No strings attached.