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

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

Get Job Categories

Request

Retrieves a paginated list of all available job categories for organizing career opportunities.

Security
BearerToken
Query
limitinteger

Number of categories to return per page. Must be at least 1.

Example: limit=10
pageinteger

Page number for pagination. Must be at least 1.

Example: page=1
curl -i -X GET \
  'https://developers.vfairs.com/_mock/apis/v5/booths/jobs/categories?limit=10&page=1' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Job categories retrieved successfully

Bodyapplication/json
statusboolean
Example: true
messagestring
Example: "Job category(ies) fetched successfully."
collectionArray of objects
Example: [{"id":17,"name":"Engineering"},{"id":18,"name":"Administration"}]
metaobject
Example: {"current_page":1,"from":1,"last_page":1,"path":"http://api.example.com/rest/v5/booths/jobs/categories","per_page":300,"to":288,"total":288}
Response
application/json
{ "status": true, "message": "Job category(ies) fetched successfully.", "collection": [ {}, {} ], "meta": { "current_page": 1, "from": 1, "last_page": 1, "path": "http://api.example.com/rest/v5/booths/jobs/categories", "per_page": 300, "to": 288, "total": 288 } }

Get Job Vacancy Fields

Request

Retrieves available job field options including experience levels, job types, education levels, and job categories for use in job vacancy creation and filtering.

Security
BearerToken
curl -i -X GET \
  https://developers.vfairs.com/_mock/apis/v5/forms/boothJobsFields \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

Bodyapplication/json
statusboolean
Example: true
messagestring
Example: "Job fields fetched successfully."
job_fieldsArray of objects
Example: [{"title":"Job Id","slug":"job_id","column":"Id","required":false,"model":"\\App\\Models\\JobVacancy","app_id":"app_id","unique_id":"Id","entity_belonging_check":true,"status":true,"type":"text"},{"title":"Security Clearance Label","slug":"job_security_clearance_required","column":"clearence_required","required":false,"status":false,"type":"checkbox-group","custom_value":["true","false"]}]
Response
application/json
{ "status": true, "message": "Job fields fetched successfully.", "job_fields": [ {}, {} ] }

Create/Update Job Vacancy

Request

Creates a new job vacancy or updates an existing one based on whether job_id is provided.

Security
BearerToken
Path
boothIdintegerrequired

Unique identifier of the booth where the job vacancy will be created or updated. Must correspond to an existing booth.

Example: 123
Bodyapplication/jsonrequired
job_idstring

Unique identifier of the job vacancy. Required when updating an existing job; omit when creating a new job.

Example: "a3b5d881-8d22-467a-9b30-ef4a746d0001"
job_titlestringrequired

Title of the job position as it will appear to applicants.

Example: "Senior Software Engineer"
job_descriptionstringrequired

Detailed description of the job role, responsibilities, and requirements.

Example: "We are looking for an experienced software engineer to join our dynamic team and lead innovative projects..."
experience_levelstringrequired

Required experience level for the position.

Enum"entry_level""mid_level""senior_level""executive"
Example: "senior_level"
job_typestringrequired

Employment type for the position.

Enum"full_time""part_time""contract""internship""temporary"
Example: "full_time"
locationstringrequired

Work location for the job position (city, state, country, or "Remote").

Example: "New York, NY"
job_category_idstringrequired

UUID of the job category. Must correspond to an existing job category. Use /job-fields endpoint to get available categories.

Example: "a3b5d881-8d22-467a-9b30-ef4a746d0001"
salary_minnumeric

Minimum salary for the position (in the specified currency).

Example: 120000
salary_maxnumeric

Maximum salary for the position (must be greater than or equal to salary_min).

Example: 150000
currencystring

Currency code for salary amounts (3-character ISO code).

Example: "USD"
requirementsstring

Specific job requirements including education, skills, and experience.

Example: "Bachelor's degree in Computer Science, 5+ years of experience with PHP and Laravel"
benefitsstring

Employee benefits and perks offered with the position.

Example: "Health insurance, dental coverage, 401k, flexible working hours, professional development opportunities"
application_deadlinedate

Deadline for job applications (must be a future date, format: YYYY-MM-DD).

Example: "2024-12-31"
is_activeboolean

Whether the job posting is active and visible to applicants. Defaults to true.

Example: true
contact_emailemail

Email address for job applications and inquiries.

Example: "hr@company.com"
contact_phonestring

Phone number for job-related inquiries.

Example: "+1-555-123-4567"
remote_work_allowedboolean

Whether remote work is permitted for this position. Defaults to false.

Example: false
years_of_experience_requiredinteger

Minimum years of relevant experience required (0-50).

Example: 5
education_level_requiredstring

Minimum education level required for the position.

Enum"high_school""bachelors""masters""phd""professional"
Example: "bachelors"
skills_requiredArray of strings

Array of technical skills and competencies required for the position.

Example: ["PHP","Laravel","MySQL","JavaScript","Vue.js"]
employment_benefitsArray of strings

Array of specific employment benefits offered.

Example: ["Health Insurance","Dental Coverage","Vision Insurance","401k Matching"]
curl -i -X POST \
  https://developers.vfairs.com/_mock/apis/v5/booths/123/jobs \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "job_id": "a3b5d881-8d22-467a-9b30-ef4a746d0001",
    "job_title": "Senior Software Engineer",
    "job_description": "We are looking for an experienced software engineer to join our dynamic team and lead innovative projects...",
    "experience_level": "senior_level",
    "job_type": "full_time",
    "location": "New York, NY",
    "job_category_id": "a3b5d881-8d22-467a-9b30-ef4a746d0001",
    "salary_min": 120000,
    "salary_max": 150000,
    "currency": "USD",
    "requirements": "Bachelor'\''s degree in Computer Science, 5+ years of experience with PHP and Laravel",
    "benefits": "Health insurance, dental coverage, 401k, flexible working hours, professional development opportunities",
    "application_deadline": "2024-12-31",
    "is_active": true,
    "contact_email": "hr@company.com",
    "contact_phone": "+1-555-123-4567",
    "remote_work_allowed": false,
    "years_of_experience_required": 5,
    "education_level_required": "bachelors",
    "skills_required": [
      "PHP",
      "Laravel",
      "MySQL",
      "JavaScript",
      "Vue.js"
    ],
    "employment_benefits": [
      "Health Insurance",
      "Dental Coverage",
      "Vision Insurance",
      "401k Matching"
    ]
  }'

Responses

Bodyapplication/json
statusstring
Example: "success"
messagestring
Example: "Job vacancy created successfully."
dataobject
Example: {"job_id":"a3b5d881-8d22-467a-9b30-ef4a746d0001"}
Response
application/json
{ "status": "success", "message": "Job vacancy created successfully.", "data": { "job_id": "a3b5d881-8d22-467a-9b30-ef4a746d0001" } }

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