Listing attendees
To list all event attendees in your event environment you may use the event.person.find
endpoint with multiple filters and pagination. The required query attributes for this endpoint are tokenID
, eventID
and selection
, and we have several optional attributes for filtering and pagination.
To retrieve the full profile of the attendee (including custom fields), you must send the fullProfile
query attribute with value 1.
Selection
query attribute
Selection
query attributeThe selection
query attribute accepts the following values:
{
"all": "All",
"admin": "Complete event admin power",
"not-admin": "Standard event attendees",
"speakers": "Linked speakers",
"permission": "Specific event power",
"collector": "Lead retrievals collectors",
"custom-list": "Custom list",
"tags": "Tags",
"with-email": "Emails sent",
"without-email": "Emails not sent",
"approved": "Enrollment approved",
"denied": "Enrollment denied",
"nfc-synced": "NFC synced",
"nfc-not-synced": "NFC not synced",
"printed": "Badge printed",
"not-printed": "Badge not printed",
"accepted-rsvp": "RSVP accepted",
"declined-rsvp": "RSVP declined",
"waiting-rsvp": "RSVP waiting",
"downloaded": "App downloaded",
"not-downloaded": "App not downloaded",
"incomplete-profile": "Missing role, company or image",
"present": "Attendee present in-person",
"not-present": "Attendee absent in-person",
"virtual": "Attendee present online",
"not-virtual": "Attendee absent online",
"now-virtual": "Attendee present online right now",
"public": "Attendee public for chats",
"private": "Attendee private for chats",
"favorited": "Attendee favorited by personID"
}
The selection
query attribute allows stacking (AND operation) by separating values with a pipe. Example: selection=printed|present
. It also allows complex stacking for a certain key, like tags
. Example: selection=printed|present|tags:29124,4255
.
Key-value filtering
We also have the following optional query attributes as filters:
{
"name": "Attendee name",
"username": "Attendee username",
"email": "Attendee email",
"role": "Attendee job title",
"company": "Attendee company",
"assistantEmail": "Assistant email",
"updatedBeforeDate": "Updated before (unix timestamp)",
"updatedAfterDate": "Updated after (unix timestamp)",
"ticket": "Ticket",
}
You can also use query
and queryKey
instead of using the field name as the query attribute directly if you prefer.
You can also search by custom fields using the feedback_$feedbackID
format. Example:
{
"feedback_1234": "Query for custom field 1234"
}
Pagination
To paginate you can use limit
and offset
query attributes and to get the total amount of events listed in your account (used to build pagination UI and calculate the amount of pages) you should send the paginated
query attribute with value 1
.
Ordering
To order the events you can use the following query attributes: order
and orderOrientation
. The orderOrientation
attribute accepts ASC
(ascending) and DESC
(descending) as values
and the order
query attribute accepts the following values:
[
"level",
"memberID",
"name",
"firstName",
"lastName",
"username",
"role",
"company",
"email",
"assistantEmail",
"private",
"rsvp",
"present",
"origin",
"ticket",
"language",
"enrollmentDate",
"updatedDate",
"printed",
"device",
"downloaded",
"rand"
]
Example
Here is an example of this API call:
curl --request GET \
--url 'https://inevent.com/api/?action=event.person.find&tokenID=YOUR_TOKEN_HERE&eventID=YOUR_EVENT_ID_HERE&limit=100&offset=0&paginated=1' \
--header 'Accept: application/json'
Spreadsheet reports
To generate a spreadsheet report out of that API call, you can send the format
attribute with the value excel-daemon
. Excel spreadsheets takes a while to generate and they will show up in your Report center
, but you can also retrieve them using the download.find
endpoint.
Updated about 2 years ago