Skip to main contentIBM Video Streaming Developers

Virtual Events Basics

Create a virtual event

POST /channels/{channelId}/virtual-events.json

Parameters

PARAMETERTYPEIMPORTANCEDESCRIPTION
titlestringREQUIREDTitle of the virtual event
timezonestringREQUIREDTime zone of the event. See available timezones
start_atstringREQUIREDEvent start date and time. ISO 8601 datetime without time zone component
end_atstringREQUIREDEvent end date and time. ISO 8601 datetime without time zone component
gate_open_atstringREQUIREDRegistration open date and time. ISO 8601 datetime without time zone component
gate_close_atstringREQUIREDRegistration closing date and time. ISO 8601 datetime without time zone component

The Content-Type of the request should be application/x-www-form-urlencoded.

Example of the request:

POST /channels/123/virtual-events.json HTTP/1.1
Host: api.video.ibm.com
Authorization: Bearer 3c2573673b782f6544405a22636f3d5d3b6f3950
Content-Type: application/x-www-form-urlencoded
title=Ongoing+event&timezone=America%2FLos_Angeles&start_at=2020-10-10+10%3A10%3A10&end_at=2020-10-11+10%3A10%3A10&gate_open_at=2020-10-10+10%3A10%3A10&gate_close_at=2020-10-11+10%3A10%3A10

Success response

Upon success, a response with HTTP status “200 OK” is returned with the following key-value pairs inside the virtual_event root object.

KEYTYPEDESCRIPTION
idnumberEvent ID
titlestringTitle of the event
timezonestringEvent time zone string. See available timezones
start_atstringEvent start date and time. ISO 8601 datetime without time zone component
end_atstringEvent end date and time. ISO 8601 datetime without time zone component
gate_open_atstringRegistration open date and time. ISO 8601 datetime without time zone component
gate_close_atstringRegistration closing date and time. ISO 8601 datetime without time zone component
registration_form_enabledbooleanIs the registration form available
registration_form_urlstringLink to the registration form
event_secretstringShared secret to sign the event form url
statusstringOne of past, started, open, future

Example of a success response:

{
"virtual_event": {
"id": 100,
"title": "Ongoing event",
"timezone": "America/Los_Angeles",
"start_at": "2020-10-10 10:10:10",
"end_at": "2020-10-11 10:10:10",
"gate_open_at": "2020-10-10 10:10:10",
"gate_close_at": "2020-10-11 10:10:10",

Error responses

Possible error responses:

HTTP RESPONSE CODEERROR VALUEERROR CONDITIONS
400 Bad Requestbad_requestInvalid value was supplied
401 Unauthorizedinvalid_tokenThe provided access token is missing, revoked, expired or malformed
402 Payment Requiredinvalid_requestThe feature is not enabled for the user
403 Forbiddenlack_of_ownershipThe API user is not allowed to manage the given channel
404 Not Foundnot_foundChannel not found
409 ConflictconflictOverlapping events
500 Server Errorserver_errorAn error occurred
503 Service UnavailableThere is a temporary error on the server which makes it impossible to serve the request

List virtual events

GET /channels/{channelId}/virtual-events.json

Query Parameters

PARAMETERTYPEIMPORTANCEDESCRIPTION
filter[search_text]stringOPTIONALSearch text
filter[status]stringOPTIONALEvent status filter (past/open/started/future)
filter[registration_form_enabled]stringOPTIONALFilter events with given registration form status (true/false)

Success response

Upon success, a response with HTTP status “200 OK” is returned with the following key-value pairs inside the virtual_events root array.

KEYTYPEDESCRIPTION
idnumberEvent ID
titlestringTitle of the event
timezonestringEvent time zone string. See available timezones
start_atstringEvent start date and time. ISO 8601 datetime without time zone component
end_atstringEvent end date and time. ISO 8601 datetime without time zone component
gate_open_atstringRegistration open date and time. ISO 8601 datetime without time zone component
gate_close_atstringRegistration closing date and time. ISO 8601 datetime without time zone component
registration_form_enabledbooleanIs the registration form available
registration_form_urlstringLink to the registration form
event_secretstringShared secret to sign the event form url
statusstringOne of past, started, open, future

Additionally there is a paging element in the response with the following values:

KEYTYPEDESCRIPTION
previousstringLink to the previous page (if exists)
nextstringLink to the next page (if exists)
page_countnumberNumber of available pages
item_countnumberTotal number of items

Example of a success response:

{
"virtual_events": [
{
"id": 100,
"title": "Artificial intelligence Conference",
"timezone": "America/Los_Angeles",
"start_at": "2020-10-10 10:00:00",
"end_at": "2020-10-10 11:00:00",
"gate_open_at": "2020-10-10 08:00:00",

Error responses

Possible error responses:

HTTP RESPONSE CODEERROR VALUEERROR CONDITIONS
401 Unauthorizedinvalid_tokenThe provided access token is missing, revoked, expired or malformed
402 Payment Requiredinvalid_requestThe feature is not enabled for the user
403 Forbiddenlack_of_ownershipThe API user is not allowed to manage the given channel
404 Not Foundnot_foundChannel not found
500 Server Errorserver_errorAn error occurred
503 Service UnavailableThere is a temporary error on the server which makes it impossible to serve the request

Get details of a virtual event

GET /channels/{channelId}/virtual-events/{eventId}.json

Success response

Upon success, a response with HTTP status “200 OK” is returned with the following key-value pairs inside the virtual_event root object.

KEYTYPEDESCRIPTION
idnumberEvent ID
titlestringTitle of the event
timezonestringEvent time zone string. See available timezones
start_atstringEvent start date and time. ISO 8601 datetime without time zone component
end_atstringEvent end date and time. ISO 8601 datetime without time zone component
gate_open_atstringRegistration open date and time. ISO 8601 datetime without time zone component
gate_close_atstringRegistration closing date and time. ISO 8601 datetime without time zone component
registration_form_enabledbooleanIs the registration form available
registration_form_urlstringLink to the registration form
event_secretstringShared secret to sign the event form url
statusstringOne of past, started, open, future

Example of a success response:

{
"virtual_event": {
"id": 100,
"title": "Ongoing event",
"timezone": "America/Los_Angeles",
"start_at": "2020-10-10 10:10:10",
"end_at": "2020-10-11 10:10:10",
"gate_open_at": "2020-10-10 10:10:10",
"gate_close_at": "2020-10-11 10:10:10",

Error responses

Possible error responses:

HTTP RESPONSE CODEERROR VALUEERROR CONDITIONS
401 Unauthorizedinvalid_tokenThe provided access token is missing, revoked, expired or malformed
402 Payment Requiredinvalid_requestThe feature is not enabled for the user
403 Forbiddenlack_of_ownershipThe API user is not allowed to manage the given channel or event
404 Not Foundnot_foundChannel or event not found
500 Server Errorserver_errorAn error occurred
503 Service UnavailableThere is a temporary error on the server which makes it impossible to serve the request

Update a virtual event

PUT /channels/{channelId}/virtual-events/{eventId}.json

Parameters

PARAMETERTYPEIMPORTANCEDESCRIPTION
titlestringREQUIREDTitle of the virtual event
timezonestringREQUIREDTime zone of the event. See available timezones
start_atstringREQUIREDEvent start date and time. ISO 8601 datetime without time zone component
end_atstringREQUIREDEvent end date and time. ISO 8601 datetime without time zone component
gate_open_atstringREQUIREDRegistration open date and time. ISO 8601 datetime without time zone component
gate_close_atstringREQUIREDRegistration closing date and time. ISO 8601 datetime without time zone component

The Content-Type of the request should be application/x-www-form-urlencoded.

Example of the request:

PUT /channels/123/virtual-events/100.json HTTP/1.1
Host: api.video.ibm.com
Authorization: Bearer 3c2573673b782f6544405a22636f3d5d3b6f3950
Content-Type: application/x-www-form-urlencoded
title=Ongoing+event+2&timezone=America%2FLos_Angeles&start_at=2020-10-10+10%3A10%3A10&end_at=2020-10-11+10%3A10%3A10&gate_open_at=2020-10-10+10%3A10%3A10&gate_close_at=2020-10-11+10%3A10%3A10

Success response

Upon success, a response with HTTP status “200 OK” is returned with the following key-value pairs inside the virtual_event root object.

KEYTYPEDESCRIPTION
idnumberEvent ID
titlestringTitle of the event
timezonestringEvent time zone string. See available timezones
start_atstringEvent start date and time. ISO 8601 datetime without time zone component
end_atstringEvent end date and time. ISO 8601 datetime without time zone component
gate_open_atstringRegistration open date and time. ISO 8601 datetime without time zone component
gate_close_atstringRegistration closing date and time. ISO 8601 datetime without time zone component
registration_form_enabledbooleanIs the registration form available
registration_form_urlstringLink to the registration form
event_secretstringShared secret to sign the event form url
statusstringOne of past, started, open, future

Example of a success response:

{
"virtual_event": {
"id": 100,
"title": "Ongoing event 2",
"timezone": "America/Los_Angeles",
"start_at": "2020-10-10 10:10:10",
"end_at": "2020-10-11 10:10:10",
"gate_open_at": "2020-10-10 10:10:10",
"gate_close_at": "2020-10-11 10:10:10",

Error responses

Possible error responses:

HTTP RESPONSE CODEERROR VALUEERROR CONDITIONS
400 Bad Requestbad_requestInvalid value was supplied
401 Unauthorizedinvalid_tokenThe provided access token is missing, revoked, expired or malformed
402 Payment Requiredinvalid_requestThe feature is not enabled for the user
403 Forbiddenlack_of_ownershipThe API user is not allowed to manage the given channel or event
404 Not Foundnot_foundChannel or event not found
409 ConflictconflictOverlapping events
500 Server Errorserver_errorAn error occurred
503 Service UnavailableThere is a temporary error on the server which makes it impossible to serve the request

Delete a virtual event

DELETE /channels/{channelId}/virtual-events/{eventId}.json

Success response

Upon success, a response with HTTP status “204 No Content” is returned.

Error responses

Possible error responses:

HTTP RESPONSE CODEERROR VALUEERROR CONDITIONS
401 Unauthorizedinvalid_tokenThe provided access token is missing, revoked, expired or malformed
402 Payment Requiredinvalid_requestThe feature is not enabled for the user
403 Forbiddenlack_of_ownershipThe API user is not allowed to manage the given channel or event
404 Not Foundnot_foundChannel or event not found
500 Server Errorserver_errorAn error occurred
503 Service UnavailableThere is a temporary error on the server which makes it impossible to serve the request

List sessions of a virtual event

GET /channels/{channelId}/virtual-events/{eventId}/sessions.json

Success response

Upon success, a response with HTTP status “200 OK” is returned with the following key-value pairs inside the sessions root array.

KEYTYPEDESCRIPTION
idnumberEvent ID
titlestringTitle of the session
descriptionstringDescription of the session
timezonestringSession time zone string. See available timezones
start_atstringSession start date and time. ISO 8601 datetime without time zone component
end_atstringSession end date and time. ISO 8601 datetime without time zone component

Example of a success response:

{
"sessions": [
{
"id": 100,
"title": "Deep Learning applications",
"description": "In this session we discuss the application of Deep Learning.",
"timezone": "America/Los_Angeles",
"start_at": "2020-10-10 10:00:00",
"end_at": "2020-10-10 11:00:00"

Error responses

Possible error responses:

HTTP RESPONSE CODEERROR VALUEERROR CONDITIONS
401 Unauthorizedinvalid_tokenThe provided access token is missing, revoked, expired or malformed
402 Payment Requiredinvalid_requestThe feature is not enabled for the user
403 Forbiddenlack_of_ownershipThe API user is not allowed to manage the given channel or event
404 Not Foundnot_foundChannel or event not found
500 Server Errorserver_errorAn error occurred
503 Service UnavailableThere is a temporary error on the server which makes it impossible to serve the request

Close a virtual event

This endpoint sets the gate close time to the current timestamp, which means that the event closes immediately.

POST /channels/{channelId}/virtual-events/{eventId}/close.json

Parameters

This request doesn’t require request body parameters.

The Content-Type of the request should be application/x-www-form-urlencoded.

Success response

Upon success, a response with HTTP status “200 OK” is returned with the following key-value pairs inside the virtual_event root object.

KEYTYPEDESCRIPTION
idnumberEvent ID
titlestringTitle of the event
timezonestringEvent time zone string. See available timezones
start_atstringEvent start date and time. ISO 8601 datetime without time zone component
end_atstringEvent end date and time. ISO 8601 datetime without time zone component
gate_open_atstringRegistration open date and time. ISO 8601 datetime without time zone component
gate_close_atstringRegistration closing date and time. ISO 8601 datetime without time zone component
registration_form_enabledbooleanIs the registration form available
registration_form_urlstringLink to the registration form
event_secretstringShared secret to sign the registration form url
statusstringOne of past, started, open, future

Example of a success response:

{
"virtual_event": {
"id": 100,
"title": "Ongoing event",
"timezone": "America/Los_Angeles",
"start_at": "2020-10-10 10:10:10",
"end_at": "2020-10-11 10:10:10",
"gate_open_at": "2020-10-10 10:10:10",
"gate_close_at": "2020-10-11 10:10:10",

Error responses

Possible error responses:

HTTP RESPONSE CODEERROR VALUEERROR CONDITIONS
401 Unauthorizedinvalid_tokenThe provided access token is missing, revoked, expired or malformed
402 Payment Requiredinvalid_requestThe feature is not enabled for the user
403 Forbiddenlack_of_ownershipThe API user is not allowed to manage the given channel or event
404 Not Foundnot_foundChannel or event not found
409 ConflictconflictThe event has already ended or has been closed
500 Server Errorserver_errorAn error occurred
503 Service UnavailableThere is a temporary error on the server which makes it impossible to serve the request