Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.2.0
info:
title: Cvent Event Cloud Sessions API
version: ea
contact:
name: Cvent Development Platform
url: https://developers.cvent.com/
description: 'Operations tagged Sessions across 2 of this provider''s published API definitions: cvent-event-cloud-rest-openapi.yml, cvent-rest-apis-openapi.yaml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://api-platform.cvent.com/ea
- url: https://api-platform-eur.cvent.com/ea
tags:
- name: Sessions
description: A session is a presentation, discussion, or activity. Use these APIs to get information about your sessions and use the session ID to get further data within the event.
paths:
/events/{id}/session-locations:
parameters:
- $ref: '#/components/parameters/eventId1'
get:
security:
- OAuth2.clientCredentials:
- event/sessions:read
- OAuth2.authorizationCode:
- event/sessions:read
summary: List Session Locations
description: Gets a paginated list of session locations.
operationId: getSessionLocation
tags:
- Sessions
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/token'
responses:
'200':
description: Successfully retrieved paginated list of session locations.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/session-locations-paginated-response'
'400':
$ref: '#/components/responses/BadRequest1'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'404':
$ref: '#/components/responses/NotFound1'
'429':
$ref: '#/components/responses/TooManyRequests1'
externalDocs:
description: More about OAuth2 authorization code support for administrators
url: '#oauth2-auth-code-planner-admin'
post:
security:
- OAuth2.clientCredentials:
- event/sessions:write
- OAuth2.authorizationCode:
- event/sessions:write
summary: Add Session Location
description: Add a session location to the specified event.
operationId: addSessionLocation
tags:
- Sessions
requestBody:
description: Details of the session location you're creating.
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/session-location'
responses:
'201':
description: Successfully created a session location
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/session-location'
'400':
$ref: '#/components/responses/BadRequest1'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'404':
$ref: '#/components/responses/NotFound1'
'429':
$ref: '#/components/responses/TooManyRequests1'
externalDocs:
description: More about OAuth2 authorization code support for administrators
url: '#oauth2-auth-code-planner-admin'
servers:
- url: https://api-platform.cvent.com/ea
- url: https://api-platform-eur.cvent.com/ea
/program-items:
post:
security:
- OAuth2.clientCredentials:
- event/program-items:write
- OAuth2.authorizationCode:
- event/program-items:write
summary: Create Program Item
description: Create a session program item based on the details provided in the body of the request. A session program item is a specific part of a session's schedule, like a talk, workshop, or panel discussion. Max 25 program items per session.
operationId: createProgramItem
tags:
- Sessions
requestBody:
description: Session program item to be created.
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/program-item'
responses:
'201':
description: Successfully created the session program item.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/program-item'
'400':
$ref: '#/components/responses/BadRequest1'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'429':
$ref: '#/components/responses/TooManyRequests1'
get:
security:
- OAuth2.clientCredentials:
- event/program-items:read
- OAuth2.authorizationCode:
- event/program-items:read
summary: List Program Items
description: Gets a paginated list of session program items.
operationId: listProgramItems
tags:
- Sessions
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/token'
- name: filter
in: query
required: false
description: 'Use filter query parameters to limit results
to data that matches your criteria. See
[Filters](https://developers.cvent.com/docs/rest-api/reference/filters) for details.
Supported fields and operators are listed below:
| Field | Operators |
|------------|------------|
| id | `eq`, `in` |
| session.id | `eq`, `in` |
| event.id | `eq` |
The following logical operators are supported for combining filters:
* and
* or
'
schema:
type: string
example: session.id in ('04ca6ae2-0dc3-487b-953e-86d6abbdf7d3', '34ca65e2-1dc3-487b-589e-839d8bbdf7d3')
responses:
'200':
description: Successfully retrieved a paginated list of session program items.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/program-item-paginated-response'
'400':
$ref: '#/components/responses/BadRequest1'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'429':
$ref: '#/components/responses/TooManyRequests1'
servers:
- url: https://api-platform.cvent.com/ea
- url: https://api-platform-eur.cvent.com/ea
/program-items/docs/filter:
post:
security:
- OAuth2.clientCredentials:
- event/program-items:read
- OAuth2.authorizationCode:
- event/program-items:read
summary: Filter Program Item Documents
description: Gets a paginated list of session program item documents using a filter in the body of the request.
operationId: filterProgramItemDocuments
tags:
- Sessions
requestBody:
description: "A filter query string narrows search results and supports the combination of logical and comparison operators.\nThe filter adheres to the pattern filter='field' comparisonType 'value'.\n\nThese are the comparison types that can be used in filter expressions:\n * equal: eq\n * includes value(s): in\n\nThe following fields are filterable:\n * document.id (eq|in)\n * programItem.id (eq|in)\n * session.id (eq|in)\n * event.id (eq)\n\nThe following operators are available:\n * and\n * or\n"
required: false
content:
application/json:
schema:
$ref: '#/components/schemas/filter'
parameters:
- $ref: '#/components/parameters/after'
- $ref: '#/components/parameters/before'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/token'
responses:
'200':
description: Successfully retrieved a paginated list of session program item documents.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/program-item-document-paginated-response'
'400':
$ref: '#/components/responses/BadRequest1'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'429':
$ref: '#/components/responses/TooManyRequests1'
servers:
- url: https://api-platform.cvent.com/ea
- url: https://api-platform-eur.cvent.com/ea
/program-items/filter:
post:
security:
- OAuth2.clientCredentials:
- event/program-items:read
- OAuth2.authorizationCode:
- event/program-items:read
summary: List Program Items
description: Gets a paginated list of session program items by sending a filter in the body of the request. This method will return the same data as <a href="#operation/listProgramItems">GET List Program Items</a> but allows for longer filters.
operationId: listProgramItemsPostFilters
tags:
- Sessions
requestBody:
description: See the filter description of <a href="#operation/listProgramItems">GET List Program Items</a> for full filtering information.
required: false
content:
application/json:
schema:
$ref: '#/components/schemas/filter'
parameters:
- $ref: '#/components/parameters/after'
- $ref: '#/components/parameters/before'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/token'
- $ref: '#/components/parameters/locale1'
responses:
'200':
description: Successfully retrieved a paginated list of session program items.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/program-item-paginated-response'
'400':
$ref: '#/components/responses/BadRequest1'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'429':
$ref: '#/components/responses/TooManyRequests1'
servers:
- url: https://api-platform.cvent.com/ea
- url: https://api-platform-eur.cvent.com/ea
/program-items/{programItemId}:
parameters:
- $ref: '#/components/parameters/programItemId1'
put:
security:
- OAuth2.clientCredentials:
- event/program-items:write
- OAuth2.authorizationCode:
- event/program-items:write
summary: Update Program Item
description: Updates the given session program item based on the details provided in the body of the request.
operationId: updateProgramItem
tags:
- Sessions
requestBody:
description: Session program item to be updated.
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/program-item-update-request'
responses:
'200':
description: Successfully updated the session program item.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/program-item'
'400':
$ref: '#/components/responses/BadRequest1'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'404':
$ref: '#/components/responses/NotFound1'
'429':
$ref: '#/components/responses/TooManyRequests1'
delete:
security:
- OAuth2.clientCredentials:
- event/program-items:delete
- OAuth2.authorizationCode:
- event/program-items:delete
summary: Delete Session Program Item
description: Delete the given session program item.
operationId: deleteProgramItem
tags:
- Sessions
responses:
'204':
description: Successfully deleted the given session program item.
headers: {}
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'404':
$ref: '#/components/responses/NotFound1'
'429':
$ref: '#/components/responses/TooManyRequests1'
servers:
- url: https://api-platform.cvent.com/ea
- url: https://api-platform-eur.cvent.com/ea
/program-items/{programItemId}/docs:
parameters:
- $ref: '#/components/parameters/programItemId1'
get:
security:
- OAuth2.clientCredentials:
- event/program-items:read
- OAuth2.authorizationCode:
- event/program-items:read
summary: Get Program Item Documents
description: 'Returns a list of session documents for the specified program item ID.
**Note:** This endpoint is deprecated. use <a href="#operation/filterProgramItemDocuments">Filter Program Item Documents</a>'
operationId: getProgramItemDocuments
tags:
- Sessions
responses:
'200':
description: Successfully retrieved a list of program item to session document relationships for the specified program item ID.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/program-item-session-documents'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'404':
$ref: '#/components/responses/NotFound1'
'429':
$ref: '#/components/responses/TooManyRequests1'
deprecated: true
servers:
- url: https://api-platform.cvent.com/ea
- url: https://api-platform-eur.cvent.com/ea
/program-items/{programItemId}/docs/{fileId}:
parameters:
- $ref: '#/components/parameters/programItemId1'
- $ref: '#/components/parameters/fileId'
put:
security:
- OAuth2.clientCredentials:
- event/program-items:write
- OAuth2.authorizationCode:
- event/program-items:write
summary: Add Program Item Document
description: Creates a relationship between a session program item and a session document. Limit 10 session documents per session program item.
operationId: relateProgramItemToSessionDocument
tags:
- Sessions
responses:
'200':
description: Successfully created the relationship between the session program item and the session document.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/program-item-session-document'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'404':
$ref: '#/components/responses/NotFound1'
'409':
description: Program item session document limit reached.
content:
application/json:
schema:
$ref: '#/components/schemas/baseErrorResponse'
example:
code: 409
message: Conflict
'429':
$ref: '#/components/responses/TooManyRequests1'
get:
security:
- OAuth2.clientCredentials:
- event/program-items:read
- OAuth2.authorizationCode:
- event/program-items:read
summary: Get Program Item Document
description: Returns a single program item to session document relationship for the provided IDs.
operationId: getProgramItemSessionDocument
tags:
- Sessions
responses:
'200':
description: Successfully retrieved a program item to session document relationship for the provided IDs.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/program-item-session-document'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'404':
$ref: '#/components/responses/NotFound1'
'429':
$ref: '#/components/responses/TooManyRequests1'
delete:
security:
- OAuth2.clientCredentials:
- event/program-items:delete
- OAuth2.authorizationCode:
- event/program-items:delete
summary: Delete Program Item Document
description: Deletes session program item to session document relationship based on the provided IDs.
operationId: deleteProgramItemSessionDocument
tags:
- Sessions
responses:
'204':
description: Successfully deleted session program item to session document relationship.
headers: {}
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'404':
$ref: '#/components/responses/NotFound1'
'429':
$ref: '#/components/responses/TooManyRequests1'
servers:
- url: https://api-platform.cvent.com/ea
- url: https://api-platform-eur.cvent.com/ea
/session-categories:
get:
security:
- OAuth2.clientCredentials:
- event/session-categories:read
- OAuth2.authorizationCode:
- event/session-categories:read
summary: List Session Categories
description: Gets a paginated list of session categories.
operationId: listSessionsCategories
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/token'
- name: sort
in: query
required: false
style: form
explode: false
description: "The sort order passed as a parameter, used to control the order of the\nsearch results as a priority ordered list of sorts\n\nThere are two orders:\n * ascending: ASC\n * descending: DESC\n\nThe following fields are sortable:\n * name\n"
schema:
type: string
example: name:ASC
- name: filter
in: query
required: false
description: "Use filter query parameters to limit results\nto data that matches your criteria. See\n[Filters](https://developers.cvent.com/docs/rest-api/reference/filters) for details.\n\nSupported fields and operators are listed below:\n\n| Field | Operators |\n|------------------|-------------------------------------|\n| id | `eq`, `ne`, `in` |\n| name | `eq`, `ne`, `contains` |\n\nThe following operators are available:\n * and\n * or\n"
schema:
type: string
example: name contains 'general'
tags:
- Sessions
responses:
'200':
description: Successfully retrieved a paginated list of sessions categories.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/session-category-paginated-response'
'400':
$ref: '#/components/responses/BadRequest1'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'429':
$ref: '#/components/responses/TooManyRequests1'
deprecated: false
externalDocs:
description: More about OAuth2 authorization code support for administrators
url: '#oauth2-auth-code-planner-admin'
post:
security:
- OAuth2.clientCredentials:
- event/session-categories:write
- OAuth2.authorizationCode:
- event/session-categories:write
summary: Create Session Categories
description: Create a session category.
operationId: createSessionCategory
tags:
- Sessions
requestBody:
description: Contains the details of the session category you're creating.
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/session-category'
responses:
'201':
description: Successfully created a session category.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/session-category'
'400':
$ref: '#/components/responses/BadRequest1'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'429':
$ref: '#/components/responses/TooManyRequests1'
deprecated: false
externalDocs:
description: More about OAuth2 authorization code support for administrators
url: '#oauth2-auth-code-planner-admin'
servers:
- url: https://api-platform.cvent.com/ea
- url: https://api-platform-eur.cvent.com/ea
/session-segments:
get:
security:
- OAuth2.clientCredentials:
- event/session-segments:read
- OAuth2.authorizationCode:
- event/session-segments:read
summary: Get Session Segments
description: Return a list of session and audience segment associations.
operationId: GetSessionSegments
tags:
- Sessions
parameters:
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/token'
- name: filter
in: query
required: false
description: "A filter query string narrows search results and supports the combination of logical and comparison operators.\nThe filter adheres to the pattern filter='field' comparisonType 'value'.\n\nThere are two comparison types that can be used in filter expressions:\n * equal: eq\n * includes value(s): in\n\nThe following field is filterable:\n * segment.id (eq|in)\n * session.id (eq|in)\n\nThe following operators are available:\n * and\n * or\n"
schema:
type: string
example: segment.id in ('04ca6ae2-0dc3-487b-953e-86d6abbdf7d3', '34ca65e2-1dc3-487b-589e-839d8bbdf7d3')
responses:
'200':
description: Successfully retrieved a paginated list of session and audience segment associations.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/session-segment-paginated-response'
'400':
$ref: '#/components/responses/BadRequest1'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'429':
$ref: '#/components/responses/TooManyRequests1'
externalDocs:
description: More about OAuth2 authorization code support for administrators
url: '#oauth2-auth-code-planner-admin'
servers:
- url: https://api-platform.cvent.com/ea
- url: https://api-platform-eur.cvent.com/ea
/sessions:
get:
security:
- OAuth2.clientCredentials:
- event/sessions:read
- OAuth2.authorizationCode:
- event/sessions:read
summary: List Sessions
description: Gets a paginated list of sessions.
operationId: listSessions
parameters:
- $ref: '#/components/parameters/after'
- $ref: '#/components/parameters/before'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/token'
- $ref: '#/components/parameters/sort6'
- $ref: '#/components/parameters/locale1'
- name: filter
in: query
required: false
description: 'Use filter query parameters to limit results
to data that matches your criteria. See
[Filters](https://developers.cvent.com/docs/rest-api/reference/filters) for details.
Supported fields and operators are listed below:
| Field | Operators |
|------------------------------------|----------------------------------------------|
| id | `eq`, `ne`, `in` |
| status | `eq`, `ne` |
| event.id | `eq`, `ne` |
| title | `eq`, `ne`, `contains`, `match` |
| code | `eq`, `ne` |
| category.id | `eq`, `ne` |
| category.name | `eq`, `ne`, `contains` |
| start | `eq`, `ne`, `lt`, `le`, `gt`, `ge` |
| end | `eq`, `ne`, `lt`, `le`, `gt`, `ge` |
| description | `eq`, `ne`, `contains` |
| capacity | `eq`, `ne`, `lt`, `le`, `gt`, `ge` |
| location.id | `eq`, `ne` |
| location.name | `eq`, `ne`, `contains` |
| location.code | `eq`, `ne` |
| includedSession | `eq`, `ne` |
| enableWaitlist | `eq`, `ne` |
| featured | `eq`, `ne` |
| openForRegistration | `eq`, `ne` |
| openForAttendeeHub | `eq`, `ne` |
| virtual | `eq`, `ne` |
| created | `eq`, `ne`, `lt`, `le`, `gt`, `ge` |
| lastModified | `eq`, `ne`, `lt`, `le`, `gt`, `ge` |
| registrationTypes | `contains`, `in`, `is empty`, `is not empty` |
| customField.{uuid of custom field} | `eq`, `ne`, `lt`, `le`, `gt`, `ge`, `sw`, `contains`, `in` |
| group.id | `eq`, `ne` |
| admissionItems | `contains`, `is empty`, `is not empty` |
| segments | `contains`, `in`, `is empty`, `is not empty` |
**Note:** If the "match" filter is passed, the endpoint will return a relevance score for each session in the list and, by default, sort results by relevance. Higher scores represent a higher relevance to the filter string.
The following logical operators are supported for combining filters:
* and
* or
'
schema:
type: string
example: status eq 'active' or status eq 'closed' or event.id eq 'abc' or customField.{uuid of custom field} in ('abc','def')
tags:
- Sessions
responses:
'200':
description: Successfully retrieved a paginated list of sessions.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/sessions-paginated-response'
'400':
$ref: '#/components/responses/BadRequest1'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'429':
$ref: '#/components/responses/TooManyRequests1'
deprecated: false
externalDocs:
description: More about OAuth2 authorization code support for administrators
url: '#oauth2-auth-code-planner-admin'
post:
security:
- OAuth2.clientCredentials:
- event/sessions:write
- OAuth2.authorizationCode:
- event/sessions:write
summary: Create Session
description: Creates a single session based on the values provided in the request body.
operationId: createSession
tags:
- Sessions
requestBody:
description: Details of the session you're creating.
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/session'
responses:
'201':
description: Successfully created a session with the provided details.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/session'
'400':
$ref: '#/components/responses/BadRequest1'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'429':
$ref: '#/components/responses/TooManyRequests1'
externalDocs:
description: More about OAuth2 authorization code support for administrators
url: '#oauth2-auth-code-planner-admin'
servers:
- url: https://api-platform.cvent.com/ea
- url: https://api-platform-eur.cvent.com/ea
/sessions/filter:
post:
security:
- OAuth2.clientCredentials:
- event/sessions:read
- OAuth2.authorizationCode:
- event/sessions:read
summary: List Sessions
description: 'Gets a paginated list of sessions by sending a filter in the request''s body. This method returns the same data as <a href="#operation/listSessions">GET List Sessions</a> but allows longer filters.
'
operationId: listSessionsPostFilters
requestBody:
description: 'Contains filters for the request. See the filter description of
<a href="#operation/listSessions">GET List Sessions</a> for complete
filtering information.
'
required: false
content:
application/json:
schema:
$ref: '#/components/schemas/filter'
parameters:
- $ref: '#/components/parameters/after'
- $ref: '#/components/parameters/before'
- $ref: '#/components/parameters/limit'
- $ref: '#/components/parameters/token'
- $ref: '#/components/parameters/locale1'
tags:
- Sessions
responses:
'200':
description: Successfully retrieved a paginated list of sessions.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/sessions-paginated-response'
'400':
$ref: '#/components/responses/BadRequest1'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'429':
$ref: '#/components/responses/TooManyRequests1'
deprecated: false
externalDocs:
description: More about OAuth2 authorization code support for administrators
url: '#oauth2-auth-code-planner-admin'
servers:
- url: https://api-platform.cvent.com/ea
- url: https://api-platform-eur.cvent.com/ea
/sessions/{id}:
parameters:
- $ref: '#/components/parameters/sessionId1'
get:
summary: Get Session
description: Gets a single session based on the provided session ID.
operationId: getSessionById
security:
- OAuth2.clientCredentials:
- event/sessions:read
- OAuth2.authorizationCode:
- event/sessions:read
tags:
- Sessions
responses:
'200':
description: Successfully retrieved a session.
headers: {}
content:
application/json:
schema:
$ref: '#/components/schemas/session'
'401':
$ref: '#/components/responses/Unauthorized1'
'403':
$ref: '#/components/responses/Forbidden1'
'404':
$ref: '#/components/responses/NotFound1'
'429':
$ref: '#/components/responses/TooManyRequests1'
deprecated: false
externalDocs:
description: More about OAuth2 authorization code support for administrators
url: '#oauth2-auth-code-planner-admin'
put:
security:
- OAuth2.clientCredentials:
- event/sessions:write
- OAuth2.authorizationCode:
- event/sessions:write
summary: Up
# --- truncated at 32 KB (119 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/cvent-event-cloud/refs/heads/main/openapi/cvent-event-cloud-sessions-api-openapi.yml