POST /api/v2/sessions/set
Creates or updates a session. When id or external_id matches an existing session the record is updated; otherwise a new session is created.
Authentication
Authorization: Bearer <your_api_key>
Endpoint
POST /api/v2/sessions/set
Body Parameters
Submitted as multipart/form-data.
|
Parameter |
Type |
Required |
Default |
Description |
|---|---|---|---|---|
|
|
integer |
Required on create |
— |
The ID of the event. Must reference an existing event |
|
|
integer |
No |
— |
Session ID. If provided and matches an existing session, that session is updated |
|
|
string |
No |
— |
External system identifier. Used as a secondary lookup when |
|
|
integer |
No |
— |
Exhibitor ID. Can only be set on new sessions or sessions already owned by an exhibitor |
|
|
string |
No |
— |
Session title |
|
|
integer |
Required on create |
— |
Track (event category) ID |
|
|
integer |
Required on create |
— |
Session language ID. Use |
|
|
string |
Required on create |
— |
Session date in |
|
|
string |
Required on create |
— |
Session start time in |
|
|
string |
Required on create |
— |
Session end time in |
|
|
string or integer |
Required on create |
— |
Session type. Accepts a numeric type ID or a type title string |
|
|
boolean |
No |
|
Whether the session is an online session |
|
|
integer |
No |
|
Online session type: |
|
|
boolean |
No |
|
Whether the session has a green room |
|
|
string |
No |
— |
Embed code for online sessions |
|
|
integer |
No |
— |
Hall ID (location) |
|
|
integer |
No |
— |
Stand ID (location). Takes precedence over |
|
|
string |
No |
— |
Free-text location. Applied when |
|
|
string |
No |
— |
Session address. Applied alongside |
|
|
string or file |
No |
— |
Session logo. May be a URL or a multipart file upload |
|
|
string |
No |
— |
Session description |
|
|
array[string] |
No |
— |
List of speaker account IDs or email addresses. Pass |
|
|
array[string] |
No |
— |
List of moderator account IDs or email addresses. Pass |
|
|
array[string] |
No |
— |
List of sponsor IDs. Pass |
|
|
array[string] |
No |
— |
List of product category IDs |
|
|
array[string] |
No |
— |
List of tag IDs or tag name strings. Pass |
|
|
array[string] |
No |
— |
Participant category IDs this session is visible to. Pass |
|
|
integer |
No |
|
Session price. |
|
|
integer |
No |
|
Maximum number of attendees. |
|
|
boolean |
No |
|
Whether the session is active |
|
|
boolean |
No |
|
Whether the session is featured |
|
|
boolean |
No |
— |
Disable the raise hand feature for this session |
|
|
boolean |
No |
— |
Disable displaying the participant count |
|
|
boolean |
No |
— |
Disable Q&A for this session |
|
|
boolean |
No |
— |
Disable polls for this session |
|
|
boolean |
No |
— |
Disable chat for this session |
Response Format
Success Response (HTTP 200)
{
"code": 200,
"response_id": "...",
"data": {
"id": 42,
"status": "created",
"external_id": null,
"errors": []
}
}
|
Field |
Type |
Description |
|---|---|---|
|
|
integer |
ID of the created or updated session |
|
|
string |
|
|
|
string |
The external ID stored on the session, if set |
|
|
array |
Non-fatal errors encountered during processing (e.g. invalid speaker, bad logo URL). Empty when all sub-operations succeeded |
Error Responses
|
HTTP Code |
Condition |
Error Message |
|---|---|---|
|
400 |
|
|
|
400 |
|
|
|
400 |
Event not found |
|
|
400 |
Required field missing on create |
|
|
400 |
|
|
|
400 |
|
|
|
400 |
|
|
|
500 |
Session could not be saved |
|
|
403 |
Missing or invalid API key |
|
Example Request — Create
curl -X POST "https://your-event-domain.com/api/v2/sessions/set" \
-H "Authorization: Bearer your_api_key_here" \
-F "event_id=7" \
-F "type=1" \
-F "language=1" \
-F "track=2" \
-F "date=2030-06-15" \
-F "startTime=10:00" \
-F "endTime=11:00" \
-F "title=My Session" \
-F "isActive=true"
Example Response — Create
{
"code": 200,
"response_id": "1678392903.632666",
"data": {
"id": 42,
"status": "created",
"external_id": null,
"errors": []
}
}
Example Request — Update
curl -X POST "https://your-event-domain.com/api/v2/sessions/set" \
-H "Authorization: Bearer your_api_key_here" \
-F "id=42" \
-F "title=Updated Session Title" \
-F "isFeatured=true"
Example Response — Update
{
"code": 200,
"response_id": "1678454885.954703",
"data": {
"id": 42,
"status": "updated",
"external_id": null,
"errors": []
}
}