Webhooks Reference
Webhooks allow you to receive real-time notifications when events occur in Userlist. When an event happens (such as a user being created, a message being opened, or a form being submitted), Userlist sends an HTTP POST request to your configured endpoint with details about the event.
This reference documents the structure of webhook payloads, how to verify their authenticity, and the specific events you can subscribe to.
Setting up webhooks
You can manage your webhook endpoints in the Webhooks Integration settings page. There, you can add new endpoints, select which events to subscribe to, and enable or disable webhook delivery.
Request structure
Webhooks from Userlist are sent as HTTP POST requests with a JSON payload. The payload contains information about the event that triggered the webhook. See below for a full list of webhook events and their payload structures.
Example Webhook Payload
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| POST /your/webhook/endpoint HTTP/1.1
Host: yourdomain.com
Content-Type: application/json; charset=utf-8
X-Userlist-Signature: t=1764846825,v1=b9a214590ebad332a83034b14527ff257ca19e97899164ef7625cbaa531c3dd8
{
"id": "0ed1e6d0-ba8b-4194-8999-4e7fe4821a2c",
"name": "user_updated",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"user": {
"id": "3d70d1d4-484a-4e72-8857-916ee525214e",
"identifier": "user-123",
"email": "user-123@example.com",
"properties": {
"first_name": "Delaney",
"last_name": "Jones"
},
"signed_up_at": "2024-01-15T10:30:00Z",
"last_seen_at": "2024-12-04T14:22:00Z",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-12-04T14:22:00Z"
}
}
|
Automatic retries
If your webhook endpoint returns an HTTP error status code (400-5xx) or fails to respond, Userlist will automatically retry delivering the webhook up to 10 times. Retries follow an exponential backoff strategy, with increasing delays between attempts to give your server time to recover.
Your endpoint should respond with a 2xx status code to acknowledge successful receipt of the webhook. If you need to perform long-running operations in response to a webhook, consider responding immediately with a success status and processing the webhook asynchronously to avoid timeouts.
Event ordering
Webhook events are delivered as they occur, but the order of delivery is not guaranteed. Due to network conditions, retries, or parallel processing, events may arrive out of sequence at your endpoint.
Verifing webhook payloads
In order verify that incoming webhook requests are genuinely from Userlist, you can use the X-Userlist-Signature header included with each request.
Signature Example
X-Userlist-Signature: t=1764843117,v1=4c72b7ab5caa24d653a065bb70ad77eaa00ad479393ec29b5839abf1fd085d53
The signature includes a timestamp and a hash-based message authentication code (HMAC) using SHA-256. To verify the signature, start by splitting the value of the X-Userlist-Signature header by commas to get the timestamp and signature components. Then, split each component by the equals sign (=) to extract the actual values.
Signature Format
X-Userlist-Signature: t=<timestamp>,v1=<hex_signature>
Next, prepare the string to sign by concatenating the timestamp extracted from the header and the raw request body (the exact bytes received) with a period (.) in between.
1
| "<timestamp>.<raw_request_body>"
|
Then, use your webhook secret (found in the webhook configuration screen) to compute the HMAC SHA-256 hash of the prepared string.
1
| HMAC256("<timestamp>.<raw_request_body>", webhook_secret)
|
Finally, compare the computed hash (in hexadecimal format) with the signature extracted from the X-Userlist-Signature header. If they match, the webhook request is verified as coming from Userlist. To prevent replay attacks, check that the timestamp is within an acceptable time window to the current time. To prevent timing attacks, use a constant-time comparison function.
Here are a couple of example implementations in different programming languages. Their standard libraries provide the necessary cryptographic functions to compute HMAC SHA-256 hashes.
JavaScript (Node.js)
Ruby
Python
PHP
Elixir
Verify Webhook Signature
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
| const crypto = require('crypto');
function verifyWebhookSignature(header, body, webhookSecret) {
const parts = header.split(',');
const timestamp = parts[0].split('=')[1];
const signature = parts[1].split('=')[1];
const signedPayload = `${timestamp}.${body}`;
const computedSignature = crypto
.createHmac('sha256', webhookSecret)
.update(signedPayload)
.digest('hex');
return crypto.timingSafeEqual(
Buffer.from(computedSignature),
Buffer.from(signature)
);
}
|
1
2
3
4
5
6
7
8
9
10
11
12
13
| require 'openssl'
require 'rack/utils'
def verify_webhook_signature(header, body, webhook_secret)
parts = header.split(',')
timestamp = parts[0].split('=')[1]
signature = parts[1].split('=')[1]
signed_payload = "#{timestamp}.#{body}"
computed_signature = OpenSSL::HMAC.hexdigest('SHA256', webhook_secret, signed_payload)
Rack::Utils.secure_compare.secure_compare(computed_signature, signature)
end
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
| import hmac
import hashlib
def verify_webhook_signature(header, body, webhook_secret):
parts = header.split(',')
timestamp = parts[0].split('=')[1]
signature = parts[1].split('=')[1]
signed_payload = f"{timestamp}.{body.decode()}"
computed_signature = hmac.new(
webhook_secret.encode(),
signed_payload.encode(),
hashlib.sha256
).hexdigest()
return hmac.compare_digest(computed_signature, signature)
|
1
2
3
4
5
6
7
8
9
| function verify_webhook_signature($header, $body, $webhook_secret) {
$parts = explode(',', $header);
$timestamp = explode('=', $parts[0])[1];
$signature = explode('=', $parts[1])[1];
$signed_payload = $timestamp . '.' . $body;
$computed_signature = hash_hmac('sha256', $signed_payload, $webhook_secret);
return hash_equals($computed_signature, $signature);
}
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| defmodule WebhookVerifier do
def verify_webhook_signature(header, body, webhook_secret) do
[timestamp_part, signature_part] = String.split(header, ",")
timestamp = String.split(timestamp_part, "=") |> List.last()
signature = String.split(signature_part, "=") |> List.last()
signed_payload = "#{timestamp}.#{body}"
computed_signature =
:crypto.mac(:hmac, :sha256, webhook_secret, signed_payload)
|> Base.encode16(case: :lower)
computed_signature == signature
end
end
|
List of webhook events
User Created
Triggered when a new user is created in Userlist.
Properties
-
name
string
The name of the event. This is always user_created for this event.
-
user
object
The user associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the user.
-
identifier
Optional
string
The unique identifier of the user as provided by your application.
-
email
Optional
string
The email address of the user.
-
properties
object
An object containing custom properties about the user.
-
signed_up_at
datetime
The timestamp (in UTC) when the user signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
last_seen_at
datetime
The timestamp (in UTC) when the user was last seen in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
unsubscribed_at
Optional
datetime
The timestamp (in UTC) when the user unsubscribed from all messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
opted_in_at
datetime
The timestamp (in UTC) when the user opted in to receive messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the user was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the user was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Hide default properties
Show default properties
-
id
string
The unique internal identifier for the event.
-
scope
string
The scope of the event. This is always userlist for events generated by Userlist itself.
-
properties
object
An object containing additional information about the event.
-
occurred_at
datetime
The timestamp (in UTC) when the event was created,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the event was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the event was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Example
User Created
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| {
"id": "beab5c39-c043-4392-bf8c-f786203c5c69",
"name": "user_created",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"user": {
"id": "3d70d1d4-484a-4e72-8857-916ee525214e",
"identifier": "user-123",
"email": "user-123@example.com",
"properties": {
"first_name": "Delaney",
"last_name": "Jones"
},
"signed_up_at": "2024-01-15T10:30:00Z",
"last_seen_at": "2024-12-04T14:22:00Z",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-12-04T14:22:00Z"
}
}
|
User Updated
Triggered when an existing user is updated in Userlist.
Properties
-
name
string
The name of the event. This is always user_updated for this event.
-
user
object
The user associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the user.
-
identifier
Optional
string
The unique identifier of the user as provided by your application.
-
email
Optional
string
The email address of the user.
-
properties
object
An object containing custom properties about the user.
-
signed_up_at
datetime
The timestamp (in UTC) when the user signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
last_seen_at
datetime
The timestamp (in UTC) when the user was last seen in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
unsubscribed_at
Optional
datetime
The timestamp (in UTC) when the user unsubscribed from all messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
opted_in_at
datetime
The timestamp (in UTC) when the user opted in to receive messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the user was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the user was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Hide default properties
Show default properties
-
id
string
The unique internal identifier for the event.
-
scope
string
The scope of the event. This is always userlist for events generated by Userlist itself.
-
properties
object
An object containing additional information about the event.
-
occurred_at
datetime
The timestamp (in UTC) when the event was created,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the event was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the event was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Example
User Updated
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| {
"id": "84d11026-54cb-4155-9bca-12846bab3ee1",
"name": "user_updated",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"user": {
"id": "3d70d1d4-484a-4e72-8857-916ee525214e",
"identifier": "user-123",
"email": "user-123@example.com",
"properties": {
"first_name": "Delaney",
"last_name": "Jones"
},
"signed_up_at": "2024-01-15T10:30:00Z",
"last_seen_at": "2024-12-04T14:22:00Z",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-12-04T14:22:00Z"
}
}
|
User Subscribed
Triggered when a user subscribes to receive messages. Either globally or for a specific topic.
Properties
-
name
string
The name of the event. This is always user_subscribed for this event.
-
properties
object
An object containing additional information about the event, such as the topic subscribed to. If there is no topic, the user subscribed to all messages.
Hide nested properties
Show nested properties
-
topic_id
Optional
string
The ID of the topic the user subscribed to. Present only if the subscription is for a specific topic.
-
topic_name
Optional
string
The name of the topic the user subscribed to. Present only if the subscription is for a specific topic.
-
user
object
The user associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the user.
-
identifier
Optional
string
The unique identifier of the user as provided by your application.
-
email
Optional
string
The email address of the user.
-
properties
object
An object containing custom properties about the user.
-
signed_up_at
datetime
The timestamp (in UTC) when the user signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
last_seen_at
datetime
The timestamp (in UTC) when the user was last seen in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
unsubscribed_at
Optional
datetime
The timestamp (in UTC) when the user unsubscribed from all messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
opted_in_at
datetime
The timestamp (in UTC) when the user opted in to receive messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the user was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the user was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Hide default properties
Show default properties
-
id
string
The unique internal identifier for the event.
-
scope
string
The scope of the event. This is always userlist for events generated by Userlist itself.
-
occurred_at
datetime
The timestamp (in UTC) when the event was created,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the event was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the event was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Example
User Subscribed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| {
"id": "e820ea37-0283-46af-b80e-4ca0b1b420f3",
"name": "user_subscribed",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"user": {
"id": "3d70d1d4-484a-4e72-8857-916ee525214e",
"identifier": "user-123",
"email": "user-123@example.com",
"properties": {
"first_name": "Delaney",
"last_name": "Jones"
},
"signed_up_at": "2024-01-15T10:30:00Z",
"last_seen_at": "2024-12-04T14:22:00Z",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-12-04T14:22:00Z"
}
}
|
User Unsubscribed
Triggered when a user unsubscribes from receiving messages. Either globally or for a specific topic.
Properties
-
name
string
The name of the event. This is always user_unsubscribed for this event.
-
properties
object
An object containing additional information about the event, such as the topic unsubscribed from. If there is no topic, the user unsubscribed from all messages.
Hide nested properties
Show nested properties
-
topic_id
Optional
string
The ID of the topic the user unsubscribed from. Present only if the unsubscription is for a specific topic.
-
topic_name
Optional
string
The name of the topic the user unsubscribed from. Present only if the unsubscription is for a specific topic.
-
user
object
The user associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the user.
-
identifier
Optional
string
The unique identifier of the user as provided by your application.
-
email
Optional
string
The email address of the user.
-
properties
object
An object containing custom properties about the user.
-
signed_up_at
datetime
The timestamp (in UTC) when the user signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
last_seen_at
datetime
The timestamp (in UTC) when the user was last seen in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
unsubscribed_at
Optional
datetime
The timestamp (in UTC) when the user unsubscribed from all messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
opted_in_at
datetime
The timestamp (in UTC) when the user opted in to receive messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the user was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the user was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Hide default properties
Show default properties
-
id
string
The unique internal identifier for the event.
-
scope
string
The scope of the event. This is always userlist for events generated by Userlist itself.
-
occurred_at
datetime
The timestamp (in UTC) when the event was created,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the event was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the event was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Example
User Unsubscribed
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| {
"id": "92acf2e9-3ae7-4725-a0ab-c1590e5bcd3c",
"name": "user_unsubscribed",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"user": {
"id": "3d70d1d4-484a-4e72-8857-916ee525214e",
"identifier": "user-123",
"email": "user-123@example.com",
"properties": {
"first_name": "Delaney",
"last_name": "Jones"
},
"signed_up_at": "2024-01-15T10:30:00Z",
"last_seen_at": "2024-12-04T14:22:00Z",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-12-04T14:22:00Z"
}
}
|
Company Created
Triggered when a new company is created in Userlist.
Properties
-
name
string
The name of the event. This is always company_created for this event.
-
company
object
The company associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the company.
-
identifier
string
The unique identifier of the company as provided by your application.
-
name
string
-
properties
object
An object containing custom properties about the company.
-
signed_up_at
datetime
The timestamp (in UTC) when the company signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the company was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the company was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Hide default properties
Show default properties
-
id
string
The unique internal identifier for the event.
-
scope
string
The scope of the event. This is always userlist for events generated by Userlist itself.
-
properties
object
An object containing additional information about the event.
-
occurred_at
datetime
The timestamp (in UTC) when the event was created,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the event was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the event was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Example
Company Created
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| {
"id": "d16d8ad8-0f60-4f53-8fb3-ef6c160ee267",
"name": "company_created",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"company": {
"id": "8b4f7a23-c9d1-4e8a-9b2c-1f5a6e3d8c9b",
"identifier": "company-567",
"name": "Example, Inc.",
"properties": {
"industry": "Software",
"billing_plan": "enterprise"
},
"signed_up_at": "2024-01-10T09:00:00Z",
"created_at": "2024-01-10T09:00:00Z",
"updated_at": "2024-12-01T11:45:00Z"
}
}
|
Company Updated
Triggered when an existing company is updated in Userlist.
Properties
-
name
string
The name of the event. This is always company_updated for this event.
-
company
object
The company associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the company.
-
identifier
string
The unique identifier of the company as provided by your application.
-
name
string
-
properties
object
An object containing custom properties about the company.
-
signed_up_at
datetime
The timestamp (in UTC) when the company signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the company was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the company was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Hide default properties
Show default properties
-
id
string
The unique internal identifier for the event.
-
scope
string
The scope of the event. This is always userlist for events generated by Userlist itself.
-
properties
object
An object containing additional information about the event.
-
occurred_at
datetime
The timestamp (in UTC) when the event was created,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the event was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the event was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Example
Company Updated
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
| {
"id": "28dccb0f-81d6-44e9-b439-531f307e2c24",
"name": "company_updated",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"company": {
"id": "8b4f7a23-c9d1-4e8a-9b2c-1f5a6e3d8c9b",
"identifier": "company-567",
"name": "Example, Inc.",
"properties": {
"industry": "Software",
"billing_plan": "enterprise"
},
"signed_up_at": "2024-01-10T09:00:00Z",
"created_at": "2024-01-10T09:00:00Z",
"updated_at": "2024-12-01T11:45:00Z"
}
}
|
Relationship Created
Triggered when a new relationship between a user and a company is created in Userlist.
Properties
-
name
string
The name of the event. This is always relationship_created for this event.
-
user
object
The user associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the user.
-
identifier
Optional
string
The unique identifier of the user as provided by your application.
-
email
Optional
string
The email address of the user.
-
properties
object
An object containing custom properties about the user.
-
signed_up_at
datetime
The timestamp (in UTC) when the user signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
last_seen_at
datetime
The timestamp (in UTC) when the user was last seen in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
unsubscribed_at
Optional
datetime
The timestamp (in UTC) when the user unsubscribed from all messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
opted_in_at
datetime
The timestamp (in UTC) when the user opted in to receive messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the user was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the user was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
company
object
The company associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the company.
-
identifier
string
The unique identifier of the company as provided by your application.
-
name
string
-
properties
object
An object containing custom properties about the company.
-
signed_up_at
datetime
The timestamp (in UTC) when the company signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the company was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the company was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
relationship
object
The relationship associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the relationship.
-
properties
object
An object containing custom properties about the relationship.
-
created_at
datetime
The timestamp (in UTC) when the relationship was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the relationship was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Hide default properties
Show default properties
-
id
string
The unique internal identifier for the event.
-
scope
string
The scope of the event. This is always userlist for events generated by Userlist itself.
-
properties
object
An object containing additional information about the event.
-
occurred_at
datetime
The timestamp (in UTC) when the event was created,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the event was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the event was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Example
Relationship Created
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
| {
"id": "55585414-b3b7-4e68-974f-c3a8e0b9be55",
"name": "relationship_created",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"user": {
"id": "3d70d1d4-484a-4e72-8857-916ee525214e",
"identifier": "user-123",
"email": "user-123@example.com",
"properties": {
"first_name": "Delaney",
"last_name": "Jones"
},
"signed_up_at": "2024-01-15T10:30:00Z",
"last_seen_at": "2024-12-04T14:22:00Z",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-12-04T14:22:00Z"
},
"company": {
"id": "8b4f7a23-c9d1-4e8a-9b2c-1f5a6e3d8c9b",
"identifier": "company-567",
"name": "Example, Inc.",
"properties": {
"industry": "Software",
"billing_plan": "enterprise"
},
"signed_up_at": "2024-01-10T09:00:00Z",
"created_at": "2024-01-10T09:00:00Z",
"updated_at": "2024-12-01T11:45:00Z"
},
"relationship": {
"id": "5c7e2a91-b8f3-4d6a-a1e9-7b4c8d2f1a5e",
"properties": { "role": "owner" },
"created_at": "2024-01-15T10:35:00Z",
"updated_at": "2024-11-20T16:10:00Z"
}
}
|
Relationship Updated
Triggered when an existing relationship between a user and a company is updated in Userlist.
Properties
-
name
string
The name of the event. This is always relationship_updated for this event.
-
user
object
The user associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the user.
-
identifier
Optional
string
The unique identifier of the user as provided by your application.
-
email
Optional
string
The email address of the user.
-
properties
object
An object containing custom properties about the user.
-
signed_up_at
datetime
The timestamp (in UTC) when the user signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
last_seen_at
datetime
The timestamp (in UTC) when the user was last seen in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
unsubscribed_at
Optional
datetime
The timestamp (in UTC) when the user unsubscribed from all messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
opted_in_at
datetime
The timestamp (in UTC) when the user opted in to receive messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the user was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the user was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
company
object
The company associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the company.
-
identifier
string
The unique identifier of the company as provided by your application.
-
name
string
-
properties
object
An object containing custom properties about the company.
-
signed_up_at
datetime
The timestamp (in UTC) when the company signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the company was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the company was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
relationship
object
The relationship associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the relationship.
-
properties
object
An object containing custom properties about the relationship.
-
created_at
datetime
The timestamp (in UTC) when the relationship was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the relationship was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Hide default properties
Show default properties
-
id
string
The unique internal identifier for the event.
-
scope
string
The scope of the event. This is always userlist for events generated by Userlist itself.
-
properties
object
An object containing additional information about the event.
-
occurred_at
datetime
The timestamp (in UTC) when the event was created,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the event was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the event was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Example
Relationship Updated
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
| {
"id": "818b17b7-1ad0-49cf-aab3-2e44a117dfcc",
"name": "relationship_updated",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"user": {
"id": "3d70d1d4-484a-4e72-8857-916ee525214e",
"identifier": "user-123",
"email": "user-123@example.com",
"properties": {
"first_name": "Delaney",
"last_name": "Jones"
},
"signed_up_at": "2024-01-15T10:30:00Z",
"last_seen_at": "2024-12-04T14:22:00Z",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-12-04T14:22:00Z"
},
"company": {
"id": "8b4f7a23-c9d1-4e8a-9b2c-1f5a6e3d8c9b",
"identifier": "company-567",
"name": "Example, Inc.",
"properties": {
"industry": "Software",
"billing_plan": "enterprise"
},
"signed_up_at": "2024-01-10T09:00:00Z",
"created_at": "2024-01-10T09:00:00Z",
"updated_at": "2024-12-01T11:45:00Z"
},
"relationship": {
"id": "5c7e2a91-b8f3-4d6a-a1e9-7b4c8d2f1a5e",
"properties": { "role": "owner" },
"created_at": "2024-01-15T10:35:00Z",
"updated_at": "2024-11-20T16:10:00Z"
}
}
|
Triggered when a user submits a form.
-
The name of the event. This is always form_submitted for this event.
-
The user associated with the event.
Hide nested properties
Show nested properties
-
The unique internal identifier for the user.
-
The unique identifier of the user as provided by your application.
-
The email address of the user.
-
An object containing custom properties about the user.
-
The timestamp (in UTC) when the user signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
The timestamp (in UTC) when the user was last seen in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
The timestamp (in UTC) when the user unsubscribed from all messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
The timestamp (in UTC) when the user opted in to receive messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
The timestamp (in UTC) when the user was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
The timestamp (in UTC) when the user was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Hide default properties
Show default properties
-
The unique internal identifier for the event.
-
The scope of the event. This is always userlist for events generated by Userlist itself.
-
An object containing additional information about the event.
-
The timestamp (in UTC) when the event was created,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
The timestamp (in UTC) when the event was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
The timestamp (in UTC) when the event was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Form Submitted
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| {
"id": "9a8ee05a-b038-4a56-bf9c-42fbafddace4",
"name": "form_submitted",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"user": {
"id": "3d70d1d4-484a-4e72-8857-916ee525214e",
"identifier": "user-123",
"email": "user-123@example.com",
"properties": {
"first_name": "Delaney",
"last_name": "Jones"
},
"signed_up_at": "2024-01-15T10:30:00Z",
"last_seen_at": "2024-12-04T14:22:00Z",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-12-04T14:22:00Z"
}
}
|
Message Enqueued
Triggered when a message is enqueued to be sent to a user.
Properties
-
name
string
The name of the event. This is always message_enqueued for this event.
-
properties
object
An object containing additional information about the event, such as the message identifier.
Hide nested properties
Show nested properties
-
message_id
string
The unique identifier of the message that was enqueued. This is not the unique identifier of the messages source (broadcast, workflow message, etc), but rather the unique identifier of the specific instance of the message being sent to the user.
-
subject
Optional
string
The subject of the message that was enqueued. This is omitted on transactional messages for security reasons.
-
user
object
The user associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the user.
-
identifier
Optional
string
The unique identifier of the user as provided by your application.
-
email
Optional
string
The email address of the user.
-
properties
object
An object containing custom properties about the user.
-
signed_up_at
datetime
The timestamp (in UTC) when the user signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
last_seen_at
datetime
The timestamp (in UTC) when the user was last seen in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
unsubscribed_at
Optional
datetime
The timestamp (in UTC) when the user unsubscribed from all messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
opted_in_at
datetime
The timestamp (in UTC) when the user opted in to receive messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the user was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the user was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Hide default properties
Show default properties
-
id
string
The unique internal identifier for the event.
-
scope
string
The scope of the event. This is always userlist for events generated by Userlist itself.
-
occurred_at
datetime
The timestamp (in UTC) when the event was created,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the event was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the event was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Example
Message Enqueued
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| {
"id": "52763388-e4d3-41ce-b1bd-4e40771770aa",
"name": "message_enqueued",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"properties": {
"message_id": "019eff22-ab1d-7ba2-854e-5d32fae11e60",
"subject": "Welcome to Userlist!"
},
"user": {
"id": "3d70d1d4-484a-4e72-8857-916ee525214e",
"identifier": "user-123",
"email": "user-123@example.com",
"properties": {
"first_name": "Delaney",
"last_name": "Jones"
},
"signed_up_at": "2024-01-15T10:30:00Z",
"last_seen_at": "2024-12-04T14:22:00Z",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-12-04T14:22:00Z"
}
}
|
Message Opened
Triggered when a user opens a message.
Properties
-
name
string
The name of the event. This is always message_opened for this event.
-
properties
object
An object containing additional information about the event, such as the message identifier.
Hide nested properties
Show nested properties
-
message_id
string
The unique identifier of the message that was opened. This is not the unique identifier of the messages source (broadcast, workflow message, etc), but rather the unique identifier of the specific instance of the message being sent to the user.
-
subject
Optional
string
The subject of the message that was opened. This is omitted on transactional messages for security reasons.
-
user
object
The user associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the user.
-
identifier
Optional
string
The unique identifier of the user as provided by your application.
-
email
Optional
string
The email address of the user.
-
properties
object
An object containing custom properties about the user.
-
signed_up_at
datetime
The timestamp (in UTC) when the user signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
last_seen_at
datetime
The timestamp (in UTC) when the user was last seen in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
unsubscribed_at
Optional
datetime
The timestamp (in UTC) when the user unsubscribed from all messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
opted_in_at
datetime
The timestamp (in UTC) when the user opted in to receive messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the user was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the user was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Hide default properties
Show default properties
-
id
string
The unique internal identifier for the event.
-
scope
string
The scope of the event. This is always userlist for events generated by Userlist itself.
-
occurred_at
datetime
The timestamp (in UTC) when the event was created,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the event was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the event was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Example
Message Opened
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| {
"id": "13cc78e1-3cfa-4fd0-a968-83e9e5d9fa93",
"name": "message_opened",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"properties": {
"message_id": "019eff22-ab1d-7ba2-854e-5d32fae11e60",
"subject": "Welcome to Userlist!"
},
"user": {
"id": "3d70d1d4-484a-4e72-8857-916ee525214e",
"identifier": "user-123",
"email": "user-123@example.com",
"properties": {
"first_name": "Delaney",
"last_name": "Jones"
},
"signed_up_at": "2024-01-15T10:30:00Z",
"last_seen_at": "2024-12-04T14:22:00Z",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-12-04T14:22:00Z"
}
}
|
Message Clicked
Triggered when a user clicks a link in a message.
Properties
-
name
string
The name of the event. This is always message_clicked for this event.
-
properties
object
An object containing additional information about the event, such as the message identifier and the URL clicked.
Hide nested properties
Show nested properties
-
message_id
string
The unique identifier of the message that was clicked. This is not the unique identifier of the messages source (broadcast, workflow message, etc), but rather the unique identifier of the specific instance of the message being sent to the user.
-
subject
Optional
string
The subject of the message that was clicked. This is omitted on transactional messages for security reasons.
-
url
Optional
string
The URL that was clicked by the user. This is omitted on transactional messages for security reasons.
-
user
object
The user associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the user.
-
identifier
Optional
string
The unique identifier of the user as provided by your application.
-
email
Optional
string
The email address of the user.
-
properties
object
An object containing custom properties about the user.
-
signed_up_at
datetime
The timestamp (in UTC) when the user signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
last_seen_at
datetime
The timestamp (in UTC) when the user was last seen in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
unsubscribed_at
Optional
datetime
The timestamp (in UTC) when the user unsubscribed from all messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
opted_in_at
datetime
The timestamp (in UTC) when the user opted in to receive messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the user was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the user was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Hide default properties
Show default properties
-
id
string
The unique internal identifier for the event.
-
scope
string
The scope of the event. This is always userlist for events generated by Userlist itself.
-
occurred_at
datetime
The timestamp (in UTC) when the event was created,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the event was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the event was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Example
Message Clicked
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
| {
"id": "dc156d69-a4ec-4758-84fc-2130828c733d",
"name": "message_clicked",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"properties": {
"message_id": "019eff22-ab1d-7ba2-854e-5d32fae11e60",
"subject": "Welcome to Userlist!",
"url": "https://userlist.com/"
},
"user": {
"id": "3d70d1d4-484a-4e72-8857-916ee525214e",
"identifier": "user-123",
"email": "user-123@example.com",
"properties": {
"first_name": "Delaney",
"last_name": "Jones"
},
"signed_up_at": "2024-01-15T10:30:00Z",
"last_seen_at": "2024-12-04T14:22:00Z",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-12-04T14:22:00Z"
}
}
|
Message Bounced
Triggered when an email to a user bounces.
Properties
-
name
string
The name of the event. This is always message_bounced for this event.
-
properties
object
An object containing additional information about the bounce, such as the message identifier.
Hide nested properties
Show nested properties
-
message_id
string
The unique identifier of the message that bounced. This is not the unique identifier of the messages source (broadcast, workflow message, etc), but rather the unique identifier of the specific instance of the message being sent to the user.
-
subject
Optional
string
The subject of the message that bounced. This is omitted on transactional messages for security reasons.
-
bounce_type
string
The type of bounce (temporary or permanent). With temporary bounces, theres a chance that future messages can be delivered. With permanent bounces, theres no chance future messages can be delivered.
-
bounce_reason
Optional
string
A human-readable description of why the message bounced.
-
user
object
The user associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the user.
-
identifier
Optional
string
The unique identifier of the user as provided by your application.
-
email
Optional
string
The email address of the user.
-
properties
object
An object containing custom properties about the user.
-
signed_up_at
datetime
The timestamp (in UTC) when the user signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
last_seen_at
datetime
The timestamp (in UTC) when the user was last seen in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
unsubscribed_at
Optional
datetime
The timestamp (in UTC) when the user unsubscribed from all messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
opted_in_at
datetime
The timestamp (in UTC) when the user opted in to receive messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the user was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the user was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Hide default properties
Show default properties
-
id
string
The unique internal identifier for the event.
-
scope
string
The scope of the event. This is always userlist for events generated by Userlist itself.
-
occurred_at
datetime
The timestamp (in UTC) when the event was created,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the event was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the event was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Example
Message Bounced
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| {
"id": "1e76a94f-28c5-47c8-b012-3d57b4bc5f76",
"name": "message_bounced",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"properties": {
"message_id": "019eff22-ab1d-7ba2-854e-5d32fae11e60",
"subject": "Welcome to Userlist!",
"bounce_type": "permanent",
"bounce_reason": "The email address does not exist."
},
"user": {
"id": "3d70d1d4-484a-4e72-8857-916ee525214e",
"identifier": "user-123",
"email": "user-123@example.com",
"properties": {
"first_name": "Delaney",
"last_name": "Jones"
},
"signed_up_at": "2024-01-15T10:30:00Z",
"last_seen_at": "2024-12-04T14:22:00Z",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-12-04T14:22:00Z"
}
}
|
Message Reported
Triggered when a user marks a message as spam via their email provider. Please note that not all email providers support this feature.
Properties
-
name
string
The name of the event. This is always message_reported for this event.
-
properties
object
An object containing additional information about the bounce, such as the message identifier.
Hide nested properties
Show nested properties
-
message_id
string
The unique identifier of the message that was reported as spam. This is not the unique identifier of the messages source (broadcast, workflow message, etc), but rather the unique identifier of the specific instance of the message being sent to the user.
-
subject
Optional
string
The subject of the message that was reported as spam. This is omitted on transactional messages for security reasons.
-
user
object
The user associated with the event.
Hide nested properties
Show nested properties
-
id
string
The unique internal identifier for the user.
-
identifier
Optional
string
The unique identifier of the user as provided by your application.
-
email
Optional
string
The email address of the user.
-
properties
object
An object containing custom properties about the user.
-
signed_up_at
datetime
The timestamp (in UTC) when the user signed up,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
last_seen_at
datetime
The timestamp (in UTC) when the user was last seen in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
unsubscribed_at
Optional
datetime
The timestamp (in UTC) when the user unsubscribed from all messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
opted_in_at
datetime
The timestamp (in UTC) when the user opted in to receive messages,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the user was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the user was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Hide default properties
Show default properties
-
id
string
The unique internal identifier for the event.
-
scope
string
The scope of the event. This is always userlist for events generated by Userlist itself.
-
occurred_at
datetime
The timestamp (in UTC) when the event was created,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
created_at
datetime
The timestamp (in UTC) when the event was created in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
-
updated_at
datetime
The timestamp (in UTC) when the event was last updated in Userlist,
formatted as YYYY-MM-DDTHH:MM:SSZ (RFC3339/ISO8601)
Example
Message Reported
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
| {
"id": "3b87fc95-5c4f-4e75-aaac-f10797384234",
"name": "message_reported",
"scope": "userlist",
"occurred_at": "2024-12-04T14:20:00Z",
"created_at": "2024-12-04T14:20:15Z",
"updated_at": "2024-12-04T14:20:15Z",
"properties": {
"message_id": "019eff22-ab1d-7ba2-854e-5d32fae11e60",
"subject": "Welcome to Userlist!"
},
"user": {
"id": "3d70d1d4-484a-4e72-8857-916ee525214e",
"identifier": "user-123",
"email": "user-123@example.com",
"properties": {
"first_name": "Delaney",
"last_name": "Jones"
},
"signed_up_at": "2024-01-15T10:30:00Z",
"last_seen_at": "2024-12-04T14:22:00Z",
"created_at": "2024-01-15T10:30:00Z",
"updated_at": "2024-12-04T14:22:00Z"
}
}
|