MethodEndpointDescription
POST/v5/oauth/tokenGenerate an OAuth access token
GET/v5/forms/attendeeFieldsRetrieve attendee form fields
POST/v5/users/attendeesCreate or update an attendee
GET/v5/users/attendeesRetrieve all attendees
POST/v5/users/attendees/{attendeeId}/resumeUpload an attendee's resume
DELETE/v5/users/attendees/{attendeeId}/deleteRemove an attendee
POST/v5/sessions/sessionTracksCreate or update a session track
GET/v5/sessions/sessionTracksRetrieve all session tracks
DELETE/v5/sessions/sessionTracks/{id}Delete a session track
POST/v5/sessionsCreate or update a session
GET/v5/sessionsRetrieve all sessions
DELETE/v5/sessions/{id}Delete a session
POST/v5/sessions/sessionHandoutsUpload or update a session handout
GET/v5/sessions/sessionHandoutsRetrieve all session handouts
DELETE/v5/sessions/sessionHandouts/{id}Remove a session handout
GET/v5/forms/speakerFieldsRetrieve speaker form fields
POST/v5/users/speakersCreate or update a speaker profile
GET/v5/users/speakersRetrieve all speakers
DELETE/v5/users/speakersRemove a speaker profile
GET/v5/event/languagesRetrieve available event languages
GET/v5/event/getEventDetailsGet detailed event information
GET/v5/reports/qrScanAnalyticsRetrieve QR scan analytics
GET/v5/reports/userJourneyAnalyticsRetrieve user journey analytics

Download OpenAPI description
Overview
Languages
Servers
US
https://api.vfairs.com/rest/
CA
https://api.vfairs.ca/rest/
EU
https://api-eu.vfairs.com/rest/
UK
https://api-uk.vfairs.com/rest/
KSA
https://api-ksa.vfairs.com/rest/

OAuth Access Token

This section provides endpoints to authenticate vFairs event. It covers how to get an access token, manage its lifecycle, and handle event-specific access. vFairs uses OAuth 2.0 to ensure secure and controlled API access, allowing applications to authenticate safely without exposing sensitive credentials.

Operations

Attendees

This section provides endpoints to manage event attendees, including registration field retrieval, attendee creation, updates, bulk/group registrations, resume uploads, and user deletions. Secure access requires event-specific OAuth tokens. The API supports dynamic form configurations, pagination, filtering by email or user_id, and nested child_users for structured group registrations.

Operations

Session Tracks

This section provides endpoints to create, update, retrieve, and delete session tracks for multi-language events. Use track_id=0 for new tracks. Tracks require language-specific mapping via /v5/event/languages. Supports pagination, filtering, and bulk retrieval to efficiently manage localized session tracks.

Operations

Sessions

This section provides endpoints to create, update, retrieve, and delete event sessions. Use session_id=0 for new entries. Sessions can be linked to session tracks and speakers via their IDs and require language-specific entries via /v5/event/languages for multi-language support. The API supports pagination, filtering, and bulk data retrieval for efficient session management.

Operations

Session Handouts

This section provides endpoints to create, update, retrieve, and delete session handouts. Use session_handout_id=0 for new entries. Handouts are linked to sessions via their IDs, which can be retrieved from /v5/sessions. The API supports pagination, filtering, bulk retrieval, and document management to ensure seamless attendee access.

Operations

Speakers

This section provides endpoints to create, update, retrieve, and delete speaker profiles. Use speaker_id=0 for new entries. Speakers can be linked to sessions via their IDs, retrieved from /v5/sessions. The API supports dynamic form configurations, including fields like company_name and bio, and allows image handling, session associations, and deletions by speaker_id, email, or session_id.

Operations

Event

This section provides endpoints to retrieve event metadata, including available languages for multi-language configuration and detailed event information. These endpoints are essential for localizing content such as sessions and tracks and integrating event-specific settings to ensure a seamless and customized event experience.

Operations

Reports

This section provides endpoints to retrieve reports of the events

Operations

Get QR Scan Analytics

Request

This endpoint is used to retrieve QR scan analytics data for the event. You can filter the results by registration fields, user type, date range, specific users, and sort by scan time. The response includes details about who scanned whom and when.

Query
pageinteger

Page number for pagination

Example: page=1
limitinteger

Number of records per page

Example: limit=10
registration_fieldsstring

Comma separated string of registration field IDs

Example: registration_fields=123,123
user_typestring

Filter by user type: ALL, Attendee, Admin, Event Owner, Booth Admin

Enum"ALL""Attendee""Admin""Event Owner""Booth Admin"
Example: user_type=ALL
start_datestring

Start date in YYYY-MM-DD format

Example: start_date=2024-01-01
end_datestring

End date in YYYY-MM-DD format

Example: end_date=2024-01-01
scanned_user_idstring

Filter by scanned user ID

Example: scanned_user_id=1234910710
scanned_by_user_idstring

Filter by user ID who performed the scan

Example: scanned_by_user_id=1234910702
sort_by_scanned_atstring

Sort by scan time (0: ascending, 1: descending)

Example: sort_by_scanned_at=0
curl -i -X GET \
  'https://api.vfairs.com/rest/v5/reports/qrScanAnalytics?end_date=2024-01-01&limit=10&page=1&registration_fields=123%2C123&scanned_by_user_id=1234910702&scanned_user_id=1234910710&sort_by_scanned_at=0&start_date=2024-01-01&user_type=ALL' \
  -H 'Authorization: Bearer <YOUR_bearer_HERE>'

Responses

Bodyapplication/json
statusboolean
Example: true
messagestring
Example: "QR Scan Analytics Report retrieved successfully"
qr_scan_analyticsArray of objects
Example: [{"event_id":1234,"event_url":"myevent.vfairs.com","scan_id":1121,"scanned_time":"01:52 PM","scanned_qr_url":"https://vfairs-api.s3.amazonaws.com/user-qr-codes/vfairs_qr_4_00.jpg","scanned_user_id":1234910710,"scanned_first_name":"Driscoll","scanned_last_name":"Meyers","scanned_email":"xyz@vfairs.com","scanned_user_notes":null,"scanned_user_type":"Visitor","scanned_by_user_id":1234910702,"scanned_by_first_name":"Ralph","scanned_by_last_name":"Paul","scanned_by_email":"xya1@vfairs.com","scanned_by_user_notes":"","scanned_by_user_type":"Visitor"}]
metaobject
Example: {"current_page":1,"from":1,"last_page":9276,"path":"http://api.vfairs.com/rest/v5/reports/qrScanAnalytics","per_page":1,"to":1,"total":9276}
Response
application/json
{ "status": true, "message": "QR Scan Analytics Report retrieved successfully", "qr_scan_analytics": [ {} ], "meta": { "current_page": 1, "from": 1, "last_page": 9276, "path": "http://api.vfairs.com/rest/v5/reports/qrScanAnalytics", "per_page": 1, "to": 1, "total": 9276 } }

Get User Journey Analytics

Request

This endpoint retrieves user journey analytics data for the event. Either user_id or email is mandatory to retrieve the data. Start date and end date should be in YYYY-MM-DD format. Activity Types must be one of: NAVIGATION, CHAT, SCAVENGER_HUNT, WEBINAR, VIDEO, BOOTH_VISIT, BOOTH_LINK, DOCUMENT, SWAG_BAG, LOGIN, CMS_PAGE, BOOTH_BANNER, or ALL to get all records. The show_only_live parameter will filter to show only live event's user journey analytics.

Query
pageinteger

Page number for pagination

Example: page=1
limitinteger

Number of records per page

Example: limit=10
user_idinteger

User ID. Either user_id or email is mandatory.

Example: user_id=1234875612
emailstring(email)

Email of the user. Either user_id or email is mandatory.

Example: email=demo@vfairs.co
start_datestring

Start date in YYYY-MM-DD format

Example: start_date=2022-06-07
end_datestring

End date in YYYY-MM-DD format

Example: end_date=2022-06-07
activity_typesstring

Filter by activity types. Must be one of: NAVIGATION, CHAT, SCAVENGER_HUNT, WEBINAR, VIDEO, BOOTH_VISIT, BOOTH_LINK, DOCUMENT, SWAG_BAG, LOGIN, CMS_PAGE, BOOTH_BANNER, or ALL to get all records.

Enum"NAVIGATION""CHAT""SCAVENGER_HUNT""WEBINAR""VIDEO""BOOTH_VISIT""BOOTH_LINK""DOCUMENT""SWAG_BAG""LOGIN"
Example: activity_types=ALL
show_only_liveinteger

Filter to show only live events

Enum01
Example: show_only_live=1
curl -i -X GET \
  'https://api.vfairs.com/rest/v5/reports/userJourneyAnalytics?activity_types=ALL&email=demo%40vfairs.co&end_date=2022-06-07&limit=10&page=1&show_only_live=1&start_date=2022-06-07&user_id=1234875612' \
  -H 'Authorization: Bearer <YOUR_bearer_HERE>'

Responses

Successful Response

Bodyapplication/json
statusboolean
Example: true
messagestring
Example: "users.engagement.record.fetched"
user_journey_analyticsArray of objects
Example: [{"event_id":6168,"event_url":"sfn2025.vfairs.com","user_id":628800041,"email":"demo@vfairs.com","name":"Demo demo@vfairs.com","registration_date":"Dec 12, 2021 EST","first_login":"Dec 12, 2021 EST","last_login":"Nov 07, 2023 EST","time_spent":"","last_activity":"Nov 15, 2023 EST","activity_summary":{"total_activities":6,"navigation":3,"chat":0,"scavenger_hunt":0,"webinar":0,"video":0,"booth_visit":3,"booth_link_click":0,"document":0,"swag_bag":0,"login":0,"cms_page":0,"booth_banner":0},"activity_detail":[{"date":"Nov 15, 2023 EST","is_live":true,"journey_data":[{"activity":"Navigation","content":"Clicked on menu item","time":"Nov 15, 2023 EST"},{"activity":"Booth","content":"Visited Booth","time":"Nov 15, 2023 EST"},{"activity":"Booth","content":"Visited Booth","time":"Nov 15, 2023 EST"},{"activity":"Navigation","content":"Clicked on menu item","time":"Nov 15, 2023 EST"},{"activity":"Navigation","content":"Clicked on menu item","time":"Nov 15, 2023 EST"},{"activity":"Booth","content":"Visited Booth","time":"Nov 15, 2023 EST"}]}],"meta":{"current_page":1,"from":1,"last_page":1,"path":"http://myevent.vjf.local/rest/v5/reports/userJourneyAnalytics","per_page":10,"to":6,"total":6}}]
Response
application/json
{ "status": true, "message": "users.engagement.record.fetched", "user_journey_analytics": [ {} ] }