Skip to content

API Documentation

MethodEndpointDescription
POST{server}/v5/oauth/tokenGenerate an OAuth access token
POST{server}/v5/users/attendeesCreate or update an attendee
GET{server}/v5/users/attendeesRetrieve all attendees
POST{server}/v5/users/attendees/{attendeeId}/resumeUpload an attendee's resume
DELETE{server}/v5/users/attendees/{attendeeId}Remove an attendee
POST{server}/v5/users/speakersCreate or update a speaker profile
GET{server}/v5/users/speakersRetrieve all speakers
DELETE{server}/v5/users/speakers/{speakerId}Remove a speaker profile
DELETE{server}/v5/users/speakers/{speakerId}/detachDetach a speaker from all sessions
DELETE{server}/v5/users/speakers/detachDetach a speaker from sessions by email
POST{server}/v5/users/boothRepsCreate or update a booth representative
GET{server}/v5/users/boothRepsRetrieve all booth representatives
DELETE{server}/v5/users/boothReps/{boothRepId}Remove a booth representative
POST{server}/v5/users/segmentsCreate or update a segment
GET{server}/v5/users/segmentsRetrieve all segments
DELETE{server}/v5/users/segments/{segmentId}Remove a segment
POST{server}/v5/users/segments/rulesCreate or update a segment rule
GET{server}/v5/users/segments/rulesRetrieve all segment rules
DELETE{server}/v5/users/segments/rules/{ruleId}Remove a segment rule
GET{server}/v5/forms/attendeeFieldsRetrieve attendee form fields
GET{server}/v5/forms/speakerFieldsRetrieve speaker form fields
GET{server}/v5/forms/boothRepFieldsRetrieve booth representative form fields
GET{server}/v5/forms/boothJobsFieldsRetrieve booth job form fields
POST{server}/v5/sessionsCreate or update a session
GET{server}/v5/sessionsRetrieve all sessions
DELETE{server}/v5/sessions/{sessionId}Delete a session
DELETE{server}/v5/sessions/{sessionId}/speakers/{speakerId}/detachDetach a specific speaker from a session
DELETE{server}/v5/sessions/{sessionId}/speakers/detachDetach a speaker from a session by email
POST{server}/v5/sessions/sessionTracksCreate or update a session track
GET{server}/v5/sessions/sessionTracksRetrieve all session tracks
DELETE{server}/v5/sessions/sessionTracks/{id}Delete a session track
POST{server}/v5/sessions/sessionHandoutsUpload or update a session handout
GET{server}/v5/sessions/sessionHandoutsRetrieve all session handouts
DELETE{server}/v5/sessions/sessionHandouts/{id}Remove a session handout
POST{server}/v5/boothsCreate or update a booth
GET{server}/v5/boothsRetrieve all booths
DELETE{server}/v5/boothsRemove a booth and optionally its representatives
POST{server}/v5/booths/documentsCreate or update a booth document
GET{server}/v5/booths/documentsRetrieve all booth documents
DELETE{server}/v5/booths/documents/{documentId}Remove a booth document
POST{server}/v5/booths/videosCreate or update a booth video
GET{server}/v5/booths/videosRetrieve all booth videos
DELETE{server}/v5/booths/videos/{videoId}Remove a booth video
GET{server}/v5/booths/jobs/categoriesRetrieve available job categories
POST{server}/v5/booths/{boothId}/jobsCreate or update a booth job vacancy
GET{server}/v5/booths/{boothId}/jobsRetrieve job vacancies for a specific booth
DELETE{server}/v5/booths/{boothId}/jobs/{jobId}Remove a booth job vacancy
POST{server}/v5/floorsCreate or update a floor
GET{server}/v5/floorsRetrieve all floors
DELETE{server}/v5/floors/{floorId}Remove a floor and all its associated booths
GET{server}/v5/countriesRetrieve available countries
GET{server}/v5/countries/{countryId}/regionsRetrieve regions for a specific country
GET{server}/v5/countries/regions/{regionId}/citiesRetrieve cities for a specific region
GET{server}/v5/event/languagesRetrieve available event languages
GET{server}/v5/event/getEventDetailsGet detailed event information
GET{server}/v5/reports/qrScanAnalyticsRetrieve QR scan analytics
GET{server}/v5/reports/userJourneyAnalyticsRetrieve user journey analytics

Overview
Languages
Servers
Mock server

https://developers.vfairs.com/_mock/apis/

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

Endpoints for obtaining and managing OAuth access tokens for API authentication.

Operations

Attendees

Manages attendee data for events, including registration, profile updates, resume uploads, and form field configuration. These endpoints enable comprehensive attendee lifecycle management from registration through event participation.

Operations

User Segments

Manages user segments for the current event. User segments are used to target specific groups of users for marketing and communication purposes.

Operations

User Segment Rules

Manages user segment rules for the current event. User segment rules define criteria-based targeting for specific groups of users.

Operations

Session Tracks

Manages session tracks for multi-language events. Session tracks organize sessions by categories, dates, or themes and support localization through language-specific configurations.

Operations

Sessions

Manages event sessions including creation, updates, retrieval, and deletion. Sessions can be linked to tracks and speakers, support multi-language configurations, and offer various session types for different event formats.

Operations

Create/Update Session

Request

Creates a new session or updates an existing one. For multi-language events, create separate sessions for each language using different language_id values.

Security
BearerToken
Bodyapplication/jsonrequired
session_idinteger

Unique identifier of the session. Use 0 or null for creating new sessions, or provide existing session_id for updates.

Example: 0
titlestringrequired

Title of the session displayed to attendees.

Example: "How Amadeus Uses a Global Event Mesh to Make Travel Work Better"
mode_of_attendancestringrequired

Attendance mode determining how participants can join the session.

Enum"VIRTUAL""ON_SITE""HYBRID"
Example: "HYBRID"
speaker_idsArray of stringsrequired

Array of speaker identifiers to associate with this session. Obtain valid speaker IDs from the Get Session Speakers endpoint.

Example: [642234153]
is_activestringrequired

Session status. Use "1" to activate/publish the session, "0" to deactivate/unpublish.

Example: "1"
descriptionstringrequired

Detailed description of the session content and objectives.

Example: "Seven years ago, Amadeus embarked on the transformative journey of embracing."
session_typestringrequired

Type of session determining the delivery format and platform requirements.

Enum"PREC""ONDEMAND""ZOOM""Poster""CUSTOM_EMBED""IN_PERSON_WEBINAR""Message_Title"
Example: "ZOOM"
start_timestringrequired

Scheduled start time of the session. Format: YYYY-MM-DD HH:mm:ss.

Example: "2024-12-11 00:00:00"
durationstring

Total duration of the session. Format: HH:mm:ss.

Example: "00:00:00"
tracking_durationstring

Duration used for attendance tracking purposes. Should match duration value. Format: HH:mm:ss.

Example: "00:00:00"
track_idinteger

Unique identifier of the session track. Must correspond to an existing track. Obtain valid track IDs from the Get Session Track endpoint.

Example: 30408
language_idintegerrequired

Unique identifier of the session language. Must correspond to an existing language. Obtain valid language IDs from the Get Languages endpoint.

Example: 1
show_in_agendainteger

Controls session visibility in the event agenda. Use 1 to show, 0 to hide.

Example: 0
enable_qainteger

Enables Q&A functionality for the session. Use 1 to enable, 0 to disable.

Example: 0
urlstring

External URL for the session content (e.g., YouTube, Vimeo, Zoom link).

Example: "https://www.youtube.com/watch?v=nP731V0bdmM"
url_ali_babastring

Alternative URL for the session content, typically used for regional access or backup streaming.

Example: "https://example.com/session-backup"
early_join_buffer_in_secondsinteger

Buffer time in seconds allowing attendees to join before the scheduled start time. Maximum value: 30000 seconds.

Example: 120
customer_webinar_idstring

External webinar identifier from third-party systems for integration purposes.

Example: "12312"
survey_idinteger

Unique identifier of the survey to associate with this session. Must correspond to an existing survey for collecting attendee feedback.

Example: 123123
keywordsstring

Keywords or tags associated with the session for search and categorization purposes.

Example: "technology, innovation, digital transformation"
location_namestring

Physical location name for hybrid or in-person sessions.

Example: "Conference Room A"
location_urlstring

URL providing additional location information or directions.

Example: "https://example.com/venue-map"
poster_thumbnailstring

URL of the poster or thumbnail image representing the session.

Example: "https://example.com/session-poster.jpg"
curl -i -X POST \
  https://developers.vfairs.com/_mock/apis/v5/sessions \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "session_id": 0,
    "title": "How Amadeus Uses a Global Event Mesh to Make Travel Work Better",
    "mode_of_attendance": "HYBRID",
    "speaker_ids": [
      642234153
    ],
    "is_active": "1",
    "description": "Seven years ago, Amadeus embarked on the transformative journey of embracing.",
    "session_type": "ZOOM",
    "start_time": "2024-12-11 00:00:00",
    "duration": "00:00:00",
    "tracking_duration": "00:00:00",
    "track_id": 30408,
    "language_id": 1,
    "show_in_agenda": 0,
    "enable_qa": 0,
    "url": "https://www.youtube.com/watch?v=nP731V0bdmM",
    "url_ali_baba": "https://example.com/session-backup",
    "early_join_buffer_in_seconds": 120,
    "customer_webinar_id": "12312",
    "survey_id": 123123,
    "keywords": "technology, innovation, digital transformation",
    "location_name": "Conference Room A",
    "location_url": "https://example.com/venue-map",
    "poster_thumbnail": "https://example.com/session-poster.jpg"
  }'

Responses

Bodyapplication/json
statusboolean
Example: true
messagestring
Example: "Session(s) created successfully."
session_idinteger
Example: 192073
Response
application/json
{ "status": true, "message": "Session(s) created successfully.", "session_id": 192073 }

Get Sessions

Request

Retrieves a paginated list of event sessions with optional filtering capabilities. Use session_id parameter to fetch details for a specific session.

Security
BearerToken
Query
pageinteger

Page number for pagination.

Example: page=1
limitinteger

Number of records to return per page.

Example: limit=50
session_idinteger

Unique identifier of the session to filter by. Use this to retrieve a specific session.

Example: session_id=2171860
session_typestring

Type of session to filter by. Determines the session format and delivery method.

Enum"PREC""ONDEMAND""ZOOM""Poster""CUSTOM_EMBED""IN_PERSON_WEBINAR""Message_Title"
Example: session_type=ZOOM
statusstring

Session status filter. Use "active" for published sessions, "inactive" for unpublished, or "ALL" for both.

Enum"active""inactive""ALL"
Example: status=active
mode_of_attendancestring

Attendance mode filter. Determines how attendees can participate in the session.

Enum"VIRTUAL""ON_SITE""HYBRID""ALL"
Example: mode_of_attendance=ALL
question_answersstring

Show question and answers for the session.

Enum"0""1"
Example: question_answers=1
start_datestring

Start date for filtering sessions by creation date. Must be used with end_date. Format: YYYY-MM-DD.

Example: start_date=2024-01-01
end_datestring

End date for filtering sessions by creation date. Must be used with start_date. Format: YYYY-MM-DD.

Example: end_date=2024-01-10
curl -i -X GET \
  'https://developers.vfairs.com/_mock/apis/v5/sessions?page=1&limit=50&session_id=2171860&session_type=ZOOM&status=active&mode_of_attendance=ALL&question_answers=1&start_date=2024-01-01&end_date=2024-01-10' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Bodyapplication/json
statusboolean
Example: true
messagestring
Example: "Successful retrieval of sessions."
sessionsArray of objects
Example: [{"session_id":580384,"app_id":8995,"sequence":1,"is_active":0,"show_in_agenda":1,"enable_qa":1,"title":"Incident Command System for Industrial Control Systems Workshop","description":"xyz","session_type":"ZOOM","track_id":25702,"start_time":"2024-06-17 08:30:00","tracking_duration":null,"end_time":"08:00:00","language_id":1,"url":"","url_ali_baba":"","early_join_buffer_in_seconds":null,"customer_webinar_id":"","survey_id":null,"mode_of_attendance":"ON_SITE","keywords":"","location_name":"Savoy Place | Flowers Room","location_url":"","poster_thumbnail":"","handouts":[{"handout_id":16181,"handout_title":"Security by Design - A Communication Problem?","handout_link":"https://vfairs-core-backend-prod.s3.amazonaws.com/8995/sessions/P5Drei3VP0EVTFvz3PT01JAk84IL79I2cIWjJGXk.pdf"}],"question_answers":[{"question_id":1000012,"question":"How can AI be used to personalize student learning paths?","user_id":1236996313,"is_anonymous":0,"show":1,"created_at":"2025-07-02 11:00:00","answers":[{"answer_id":1000013,"answer":"AI can analyze learning behavior to adjust content difficulty.","user_id":1236996312,"is_anonymous":0,"show":1,"created_at":"2025-07-02 11:01:00"}]}],"speakers":[]}]
metaobject
Example: {"current_page":1,"from":1,"last_page":39,"path":"http://api.vfairs.com/rest/v5/sessions","per_page":1,"to":1,"total":39}
Response
application/json
{ "status": true, "message": "Successful retrieval of sessions.", "sessions": [ {} ], "meta": { "current_page": 1, "from": 1, "last_page": 39, "path": "http://api.vfairs.com/rest/v5/sessions", "per_page": 1, "to": 1, "total": 39 } }

Detach Speaker from Session by Speaker ID

Request

Removes the association between a speaker and a session using their unique identifiers.

Security
BearerToken
Path
sessionIdintegerrequired

Unique identifier of the session from which to detach the speaker.

Example: 580384
speakerIdintegerrequired

Unique identifier of the speaker to detach from the session.

Example: 642234153
curl -i -X DELETE \
  https://developers.vfairs.com/_mock/apis/v5/sessions/580384/speakers/642234153/detach \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Bodyapplication/json
One of:
statusboolean
Example: true
messagestring
Example: "Session Speaker detached successfully."
Response
application/json
{ "status": true, "message": "Session Speaker not found." }

Session Handouts

Endpoints for managing session handouts - documents associated with sessions that attendees can view or download.

Operations

Speakers

Endpoints for managing speaker profiles and their session associations. Speakers can be created, updated, retrieved, and deleted, with support for dynamic form configurations and session linking.

Operations

Booths

Manages virtual exhibition booths where exhibitors showcase products, services, and company information. Booths are organized within floors and can include representatives, videos, documents, and interactive features with customizable layouts and access permissions.

Operations

Booth Representatives

Manages booth representatives who interact with visitors in virtual exhibition booths. Representatives can be assigned to multiple booths and have specific roles and permissions.

Operations

Booth Job Vacancies

Manages job vacancies within exhibition booths where exhibitors can post job openings, manage applications, and showcase career opportunities to event attendees.

Operations

Booth Documents

Manage booth documents including PDFs, Word documents, Excel spreadsheets, and PowerPoint presentations. Exhibitors can share these documents with booth visitors, and documents can be automatically added to visitor briefcases.

Operations

Booth Videos

Manages booth videos for events. Videos can showcase products, provide demonstrations, or share company information. Supported formats include MP4, MOV, WMV, AVI, and FLV.

Operations

Floors

Manages virtual floors within events. Floors organize booths in a virtual event space and can be customized with different layouts and themes.

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

Endpoints for retrieving event analytics and reporting data including QR scan analytics and user journey reports.

Operations