Manage leads as they are captured from different events and facilities. Leads may interact multiple times at an event, so there may be multiple sessions attached to it.
Leads associated with an event will return an eventId property. See Read Event to obtain details on the event.
Read Leads
Endpoint:
GET https://api.momentifyapp.com/v1/leads
Parameters
Name | Type | Default | Description |
after | string | β | ISO 8601 date/time string. Returns sessions created after this date/time. |
filter | string | β | See below. |
hideProperties | comma-delimited string | β | Specify certain lead properties not to return |
hideSessionProperties | comma-delimited string | β | If populateSessions is true, specify certain session properties not to return |
limit | number | 1000 | Number of sessions to return. (Max 10,000) |
offset | number | 0 | Number of sessions to skip (for pagination). |
populateSessions | boolean | false | Attach the sessions to the lead |
Filter Definition:
The filter parameter allows you to filter leads using a flexible query syntax.
filter="[field] [operator] [value]"
Available Operators:
eq (equals)
ne (not equals)
contains (string contains)
gt (greater than)
ge (greater than or equal)
lt (less than)
le (less than or equal)
in (in array)
nin (not in array)
isNull (is null)
Value formatting:
String fields (i.e. firstName, email, eventId, etc.) require quotes around the filter value. Ex.
filter=firstName contains "Jo".Other numeric and boolean fields require no quotes. Ex.
filter=followUp eq true.
Multiple Filters:
filter=processingStatus eq completed,followUp eq true
filter=firstName contains "John",lastName contains "Smith"
Common Examples:
filter=processingStatus eq "completed"
filter=eventId eq "evt_abc123"
Sample Request:
curl -X GET "https://api.momentifyapp.com/v1/leads?after=2025-01-01T00:00:00Z&limit=1&offset=0&populateSessions=true" \
-H "Authorization: [Your API Key]" \
-H"Content-Type:application/json"
Response
Returns a JSON object containing an array of session objects and a total count. All properties are potentially null (including lead in the case of an anonymous session) and should be null checked before consuming.
Sample Response:
{
"totalCount": 131,
"data": [
{
"email": "morgan.johnson@quantumedge.com",
"updated": "2025-10-23T02:18:02.474000Z",
"temp": "hot",
"firstName": "Morgan",
"followUp": null,
"zip": "30301",
"event": {
"id": "id",
"title": "title"
},
"phone": "9063898054",
"company": "QuantumEdge",
"followUpUserId": null,
"country": null,
"badge": null,
"address": "",
"state": null,
"smartProperties": [
{
"name": "Dealer Name",
"number": null,
"text": "YANCEY"
},
{
"name": "Dealer Code",
"number": null,
"text": "D500"
}
],
"notes": "",
"followUpGroup": null,
"city": null,
"sessions": [
{
"endMethod": null,
"metrics": [
{
"duration": 15,
"groupTitle": "_default",
"title": "Registration"
},
{
"title": "Traits",
"duration": 23,
"groupTitle": "_default"
},
{
"duration": 11,
"groupTitle": "_default",
"title": "Results"
}
],
"appName": "explorer",
"deviceName": "Demo Table A",
"id": "session id",
"createdBy": "user id",
"moment": {
"id": 1,
"title": "Moment title"
},
"created": "2025-06-11T00:00:00.000000Z",
"appTitle": null,
"template": {
"id": "id",
"title": "title"
},
"traits": [
{
"groupTitle": "Role",
"title": "Consultant",
"traitId": null
},
{
"groupTitle": "Interest Area",
"title": "Space Tech",
"traitId": null
}
],
"updated": "2025-06-11T00:00:00.000000Z",
"updatedBy": "user id"
}
],
"updatedBy": "user id",
"custom": null,
"id": "Lead id",
"workspaceId": "Workspace id",
"created": "2025-06-11T00:00:00.000000Z",
"school": null,
"lastName": "Johnson",
"address2": null,
"optIn": null,
"createdBy": "user id",
"title": "Investor"
}
]
}