MyOwnConference public API
Sections
Access to API
In this section, the following is described:
Access key
To utilize the MyOwnConference webinar platform API, you will require an automatically generated unique key. You can acquire this key from the control panel. Simply log in to the control panel and proceed to the "Profile" section. From there, locate the "API Key" field to discover your exclusive key.
Access domain
All API requests are sent over the secure HTTPS protocol to a dedicated domain: api.mywebinar.com
.
Request format
All API requests are sent in the JSON format for optimal compatibility and data exchange.
%--text--%
are placeholders that represent variable values. These placeholders can be filled with text, parameters, or any other data that API commands can pass or receive. When making API requests, please replace these placeholder values with the actual data that is relevant to your specific use case.The API requests follow the following structure:
- Requests with named parameters
parameter=value
"request":
{
"key": "%--api-key-from-your-profile--%",
"action": "%--required-api-command--%",
"params":
{
"%--parameter--%": "%--value--%",
"%--parameter--%": "%--value--%",
...
"%--parameter--%": "%--value--%",
},
},
- Requests in the format of a list of values
"request":
{
"key": "%--api-key-from-your-profile--%",
"action": "%--required-api-command--%",
"params":
{
"%--value--%",
"%--value--%",
...
"%--value--%",
},
},
- Transmitted and received data
%--api-key-from-your-profile--%
--- API key.%--required-api-command--%
--- API command.%params%
--- Additional parameters of the command.
%params%
field, use an empty array {}
.Response format
All API responses are always returned in the JSON format.
API responses always include the original request, along with either the successful result or an error message.
The API response returns the following data:
- An array of requested data, which represents the result of the request.
- Or a message indicating successful execution in case there is no result available.
- Or an error message with a detailed description of the error.
Possible response options for the example request in section 1.3 are:
- Successful execution with data returned
{
"request":
{
"action": "%--required-api-command--%",
"params":
{
"%--parameter--%": "%--value--%",
"%--parameter--%": "%--value--%",
...
"%--parameter--%": "%--value--%"
},
},
"response":
{
"%--parameter--%": "%--value--%",
"%--parameter--%": "%--value--%",
...
"%--parameter--%": "%--value--%",
},
},
- Successful execution without returning data
{
"request":
{
"action": "%--required-api-command--%",
"params":
{
"%--parameter--%": "%--value--%",
"%--parameter--%": "%--value--%",
...
"%--parameter--%": "%--value--%",
},
},
"response":
{
"success": "%--message--%"
},
},
- Request execution error with a detailed description
{
"request":
{
"action": "%--required-api-command--%",
"params":
{
"%--parameter--%": "%--value--%",
"%--parameter--%": "%--value--%",
...
"%--parameter--%": "%--value--%"
},
},
"response":
{
"error": "%--message--%"
},
},
- Transmitted and received data
%--required-api-command--%
--- Command.%--value--%
--- Return the transmitted value as the output if the operation is successful. The transferred value should be one of the values from an array.%--message--%
--- The message will indicate whether the command was executed successfully or unsuccessfully.
PHP example
Here is a functional demonstration of how to send an API request using the PHP programming language:
$data['request'] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => '%--required-api-command--%',
'params' => [
'%--parameters--%',
],
] );
$ch = curl_init();
curl_setopt_array( $ch, [
CURLOPT_URL => 'https://api.mywebinar.com',
CURLOPT_POST => 1,
CURLOPT_TIMEOUT => 30,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_POSTFIELDS => $data,
] );
$result = json_decode( curl_exec( $ch ) , true );
curl_close( $ch );
// ...
// printing test results
var_dump( $result );
Node.js example
Here is a functional demonstration of how to send an API request using the Node.js programming language.
const https = require( 'https' );
const query = require( 'querystring' );
const data = query.stringify( {
request: JSON.stringify( {
key: '%--api-key-from-your-profile--%',
action: '%--required-api-command--%',
params: [
'%--parameters--%',
],
} ),
} );
const options = {
hostname: 'api.mywebinar.com',
port: 443,
path: '/',
method: 'POST',
headers:
{
'Content-Type': 'application/x-www-form-urlencoded',
'Content-Length': Buffer.byteLength( data ),
},
};
const request = https.request( options, response => {
response.on( 'data', result => {
process.stdout.write( '\n\n >>> we sent:\n--\n${data}\n--' );
process.stdout.write( '\n\n <<< we read:\n--\n${result}\n--\n\n\n' );
} );
} );
request.on( 'error', error => {
console.error( error );
} );
request.write( data );
request.end();
Commands
In this section, commands for working with:
User profile
In this section, commands are described for:
Getting user profile
The profileGet
command is used to obtain comprehensive or limited details regarding the user profile.
- Example of retrieving all profile parameters
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'profileGet',
'params' => [],
] );
- Example of retrieving individual profile parameters
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'profileGet',
'params' => [
'name',
'timezone',
],
] );
- Transmitted and received data
name
--- Name and surname of the user of the service. All webinar invitations will be sent using this name.email
--- Email address registered to the user of the service.timezone
--- User's time zone. The timing of all created events will be based on this parameter. You can refer to the time zone table to see the available time zones.timemove
--- This parameter indicates whether the system takes into account daylight saving time. If the value of this field is set toYES
, the system will automatically adjust the time for daylight saving and vice versa.language
--- User's language. This language will be used as the default interface language for all future scheduled webinars. Possible values are:EN
- English;DE
- German;ES
- Spanish;FR
- French;PL
- Polish;RU
- Russian;UK
- Ukrainian.gateway
--- The payment system used by the user:PAYSERA
,PAYPAL
,INTERKASSA
.subscribe
--- Subscription to service news. The valueYES
indicates the subscription is active, andNO
suggests it is not.company
--- Company details. If this field is not empty, it indicates that the user is a legal entity and is eligible to receive invoices for payment via bank transfers.
Updating user profile
To fully or partially update the user profile, the command profileSet
is used.
- Example of updating profile parameters
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'profileSet',
'params' => [
'name' => '%--first-and-last-names--%',
'timezone' => '%--timezone-in-minutes--%',
'subscribe' => '%--yes-or-no--%',
],
] );
- Result of the request execution
{
"request":
{
"action": "profileSet",
"params":
{
"name": "%--first-and-last-names--%",
"timezone": "%--timezone-in-minutes--%",
"subscribe": "%--yes-or-no--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- The transmitted and received data
name
--- User's full name. All invitations to scheduled webinars will be sent from this name. The acceptable character count is from 2 to 64. All characters are allowed except:^~!@#$%^&*()+=[{}]\|:;,<>/?
.language
--- User's language. This language will be used as the default interface language for all future scheduled webinars. Possible values are:EN
- English;DE
- German;ES
- Spanish;FR
- French;PL
- Polish;RU
- Russian;UK
- Ukrainian.gateway
--- The payment system. Possible values:PAYSERA
- Paysera payment system;PAYPAL
- PayPal payment system.subscribe
--- Service newsletter subscription. Possible values:YES
- subscription is active,NO
- subscription is inactive.company
--- Company details. If anon-empty value
is set, the user is considered a legal entity and gains the ability to generate invoices for payment via bank transfer. Up to 1000 characters are allowed.timemove
--- This parameter allows the system to automatically account for daylight saving time when scheduling webinars. Possible values:YES
- account for daylight saving time,NO
- do not account for daylight saving time.timezone
--- Time zone. The system takes into account the user's time zone when scheduling webinars. The parameter values are set in minutes. The values can be both positive and negative.
Time zone table used in the system:
Time zone | Parameter value | Explanation |
---|---|---|
GMT-12:00 | -720 | Date line |
GMT-11:00 | -660 | Magadan, Solomon Islands, New Caledonia |
GMT-10:00 | -600 | Hawaii |
GMT-08:00 | -480 | Alaska |
GMT-07:00 | -420 | North American Pacific Time, Tijuana |
GMT-06:00 | -360 | Central America, Mountain Time (US & Canada) |
GMT-05:00 | -300 | Bogota, Lima, Quito, Guadalajara, Mexico City, Monterrey |
GMT-04:00 | -240 | Eastern Time (US & Canada), Caracas, La Paz |
GMT-03:00 | -180 | Atlantic Time (Canada), Buenos Aires, Georgetown |
GMT-02:30 | -150 | Brazil |
GMT-02:00 | -120 | Mid-Atlantic Time, Santiago |
GMT-01:00 | -60 | Cape Verde Islands |
GMT-00:00 | 0 | Dublin, Edinburgh, Lisbon, London, Azores |
GMT+01:00 | 60 | Canary Islands, Casablanca, Monrovia, West Central Africa |
GMT+02:00 | 120 | Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna, Belgrade, Bratislava, Budapest, Ljubljana, Prague, Brussels, Copenhagen, Madrid, Paris, Sarajevo, Skopje, Warsaw, Zagreb |
GMT+03:00 | 180 | Kaliningrad, Helsinki, Kyiv, Riga, Sofia, Tallinn, Vilnius, Istanbul, Athens, Istanbul, Minsk, Baku, Tbilisi, Yerevan, Jerusalem, Bucharest |
GMT+03:30 | 240 | Kuwait City, Riyadh, Abu Dhabi, Muscat, Moscow, Minsk |
GMT+04:00 | 270 | Tehran, Kabul |
GMT+04:30 | 300 | Yekaterinburg, Islamabad, Karachi, Tashkent |
GMT+05:00 | 330 | Chennai, Kolkata, Mumbai, New Delhi, Sri Jayawardenepura |
GMT+05:30 | 345 | Kathmandu |
GMT+05:45 | 360 | Almaty, Novosibirsk, Astana, Dhaka |
GMT+06:00 | 390 | Yangon |
GMT+06:30 | 420 | Krasnoyarsk, Bangkok, Hanoi, Jakarta |
GMT+07:00 | 480 | Irkutsk, Ulaanbaatar, Kuala Lumpur, Singapore, Beijing, Chongqing, Hong Kong SAR, Urumqi |
GMT+08:00 | 540 | Yakutsk, Osaka, Sapporo, Tokyo, Seoul |
GMT+09:00 | 570 | Adelaide, Darwin |
GMT+09:30 | 600 | Vladivostok, Brisbane, Hobart, Canberra, Melbourne, Brisbane, Canberra, Melbourne, Sydney, Guam, Port Moresby |
GMT+10:00 | 660 | Magadan, Solomon Islands, New Caledonia |
GMT+11:00 | 720 | Auckland, Wellington, Kamchatka, Fiji, Marshall Islands |
GMT+12:00 | 780 | Kiribati, Samoa, Tonga |
Webinar moderators
This section describes commands for:
- Creating webinar moderators
- Deleting webinar moderators
- Updating webinar moderators' information
- Retrieving the list of webinar moderators
- Attaching webinar moderators to a webinar
- Detaching moderators from the webinar
- Getting a list of webinars to which a webinar moderator is attached
Creating webinar moderators
The command used to create a new webinar moderator is moderatorsCreate
.
- The example below creates a webinar moderator
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'moderatorsCreate',
'params' => [
'name' => '%--first-and-last-names--%',
'email' => '%--email-address-at-domain-com--%',
],
] );
- In case of successful execution of the command, you will receive a response.
{
"request":
{
"action": "moderatorsCreate",
"params":
{
"name": "%--first-and-last-names--%",
"email": "%--email-address-at-domain-com--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
name
--- Webinar moderator's full name. The acceptable character count is from 2 to 64. All characters are allowed except:^~!@#$%^&*()+=[{}]\|:;,<>/?
.email
--- Webinar moderator's email address. The acceptable character count is from 6 to 128.
Deleting webinar moderators
The command used to delete webinar moderators is moderatorsDelete
.
- The example below deletes a webinar moderator with a specified email
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'moderatorsDelete',
'params' => [
'%--email-address-at-domain-com--%',
],
] );
- In case of successful execution of the command, you will receive a response.
{
"request":
{
"action": "moderatorsDelete",
"params":
[
"%--email-address-at-domain-com--%",
],
},
"response":
{
"success": "%--message--%",
},
},
- The example below deletes multiple webinar moderators based on an array of emails
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'moderatorsDelete',
'params' => [
'%--email-address-at-domain-com--%',
'%--email-address-at-domain-com--%',
...
'%--email-address-at-domain-com--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "moderatorsDelete",
"params":
[
"%--email-address-at-domain-com--%",
"%--email-address-at-domain-com--%",
...
"%--email-address-at-domain-com--%",
],
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
An array of emails is passed to the command in both cases.
Updating webinar moderators' information
To modify the webinar moderator's complete name and email address or upload a new profile picture, you would utilize the command moderatorsSet
.
- The example below updates the full name and email for a chosen webinar moderator
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'moderatorsSet',
'params' => [
'email' => '%--current-email-address-at-domain-com--%',
'newEmail' => '%--new-email-address-at-domain-com--%',
'newName' => '%--first-and-last-name--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "moderatorsSet",
"params":
{
"email": "%--current-email-address-at-domain-com--%",
"newEmail": "%--new-email-address-at-domain-com--%",
"newName": "%--first-and-last-name--%"
},
},
"response": {
"success": "%--message--%",
},
},
- Data sent and received
email
--- The webinar moderator's email, which requires updating, should consist of anywhere from 6 to 128 characters.newEmail
--- The new email address of the webinar moderator whose information needs to be updated. It should have a character count between 6 and 128.newName
--- The new full name of the webinar moderator. It should be between 2 and 64 characters long and can contain any character except:^~!@#$%^&*()+=[{}]\|:;,<>/?
.avatar
--- The image that will be used as the profile picture in place of the webcam video for the webinar moderator. The webcam will be disabled while the profile picture is shown.
The image for the avatar needs to be encoded in Base64 format. Acceptable image formats are: JPG
, JPEG
, PNG
.
To manually encode images into Base64 format, you can use the following command:
$cat /path/to/file/test.png | base64
Retrieving the list of webinar moderators
To retrieve the overall list of webinar moderators, the command moderatorsList
is used.
- The example below retrieves a list of all webinar moderators with complete information
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'moderatorsList',
'params' => [
'fields' => [],
],
] );
- The example below retrieves the list of all webinar moderators with partial information, specifically only the full names
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'moderatorsList',
'params' => [
'fields' => [
'name',
],
],
] );
- The example below retrieves the list of all webinar moderators for a specific webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'moderatorsList',
'params' => [
'fields' => [],
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- The example below retrieves the list of all webinar moderators with filters based on name and email
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'moderatorsList',
'params' => [
'fields' => [],
'search' => '%--search-text--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "moderatorsList",
"params":
{
"fields":
[
"email",
"name",
],
"search": "%--search-text--%", -- in case search text has been added
},
},
"response":
[
{
"email": "%--email-address-at-domain-com--%",
"name": "%--first-and-last-name-of-moderator--%",
},
{
"email": "%--email-address-at-domain-com--%",
"name": "%--first-and-last-name-of-moderator--%",
},
...
{
"email": "%--email-address-at-domain-com--%",
"name": "%--first-and-last-name-of-moderator--%",
},
],
},
- Data sent and received
fields
--- The list of fields that you would like to retrieve in the query. This parameter is optional and can be omitted or set as an empty array[]
.alias
--- The unique ID of the webinar, which can be obtained from the webinar link when scheduling it. This parameter is not mandatory and can be omitted or set with an empty value""
.search
--- Search query. A set of characters used to search for webinar moderators by name and email. This parameter is optional and can be omitted or set with an empty value""
.name
--- The full name of the webinar moderator. It should have a character count between 2 and 64. All characters are allowed except:^~!@#$%^&*()+=[{}]\|:;,<>/?
.email
--- The email of the webinar moderator. It should contain between 6 and 128 characters.registered
--- The registration date of the webinar moderator, includingyear-month-day hours:minutes:seconds
.main
--- A flag indicating whether this webinar moderator is a primary moderator in the webinar:YES
- primary moderator,NO
- not a primary moderator.avatar
--- A flag indicating the use of an avatar instead of the webcam for the webinar moderator:YES
- avatar is used,NO
- camera, by default.
The primary webinar moderator or account administrator is the moderator created during the registration process on the platform. In the webinar moderator management section of the control panel, this moderator is identified by a star and cannot be deleted. This moderator has access to all webinars and uploaded documents and media.
Attaching webinar moderators to a webinar
To attach one or multiple webinar moderators to a webinar, the command moderatorsAddToWebinar
is used.
- The example below attaches the specified webinar moderator to a webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'moderatorsAddToWebinar',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'email' => [
'%--email-address-at-domain-com--%',
],
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "moderatorsAddToWebinar",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"email":
[
"%--email-address-at-domain-com--%",
],
},
},
"response":
{
"success": "%--message--%",
},
},
- The example below attaches multiple webinar moderators to the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'moderatorsAddToWebinar',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'email' => [
'%--email-address-at-domain-com--%',
'%--email-address-at-domain-com--%',
...
'%--email-address-at-domain-com--%',
],
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "moderatorsAddToWebinar",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"email":
[
"%--email-address-at-domain-com--%",
"%--email-address-at-domain-com--%",
...
"%--email-address-at-domain-com--%",
],
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- The unique webinar ID, which you need to add moderators to, can be obtained from the webinar link when scheduling it.email
--- One or multiple email addresses registered for the moderators in the system. The allowable character count is from 6 to 128.sendInvite
--- An optional parameter that can be set to eitherYES
orNO
. Setting it toYES
means that the moderator will receive an invitation with a link to the scheduled webinar immediately. Setting it toNO
means that the invitation will be sent according to the general schedule.
Detaching moderators from the webinar
To detach one or multiple moderators from a webinar, you can use the command moderatorsRemoveFromWebinar
.
- The example below detaches the presenter from the webinar.
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'moderatorsRemoveFromWebinar',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'email' => [
'%--email-address-at-domain-com--%',
],
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "moderatorsRemoveFromWebinar",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"email": "%--email-address-at-domain-com--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- The example below detaches multiple moderators from the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'moderatorsRemoveFromWebinar',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'email' => [
'%--email-address-at-domain-com--%',
'%--email-address-at-domain-com--%',
...
'%--email-address-at-domain-com--%',
],
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "moderatorsRemoveFromWebinar",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"email":
[
"%--email-address-at-domain-com--%",
"%--email-address-at-domain-com--%",
...
"%--email-address-at-domain-com--%",
],
},
},
"response":
{
"success": "%message%",
},
},
- Data sent and received
alias
--- Unique webinar ID from which you want to detach the moderators, which can be obtained from the webinar link when it is scheduled.email
--- One or multiple email addresses with which the moderators are registered in the system. The allowable number of characters is between 6 and 128.
Getting a list of webinars that a presenter is attached to
To retrieve the list of webinars to which a moderator is attached, you can use the command moderatorsRooms
.
- The example below retrieves all the information about webinars to which a specific moderator is attached
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'moderatorsRooms',
'params' => [
'email' => '%--email-address-at-domain-com--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "moderatorsRooms",
"params":
{
"email": "%--email-address-at-domain-com--%",
},
},
"response":
[
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"name": "%--wwebinar-name-or-topic--%",
"description": "%--html-formatted-webinar-description--%",
"start": "%--year-month-day-hours-minutes-seconds--%",
"timezone": "%--timezone-in-minutes--%",
"duration": "%--webinar-duration-in-minutes--%",
"moderatorLink": "%--https-access-url-for-the-moderator--%"
},
... the moderator can be attached to any number of webinars
]
}
- Data sent and received
alias
--- Unique webinar ID for which this API command is being executed.email
--- Email address registered for the moderator in the system. Allowed character limit is from 6 to 128.name
--- Title or topic of the webinar.description
--- Webinar description. It can be left empty.start
--- Date and time of the webinar.timezone
--- The time zone for the webinar.duration
--- Estimated duration of the webinar. Duration of the webinar in minutes. Maximum value is 1439 minutes.moderatorLink
--- moderator login link.
Webinar participants
In this section, you will find commands for:
- Creating participants
- Editing participants
- Removing participants
- Obtaining a general list of participants
- Attaching participants to future webinars
- Unattaching participants from future webinars
- Obtaining a list of webinars with attached participants
- Creating a participant group
- Renaming a participant group
- Removing a group of participants
- Obtaining the list of participant groups
- Adding participants to groups
- Removing participants from groups
- Retrieving a list of groups in which a participant is present
- Removing participants from the blocked list
Creating participants
To create a new attendee for your webinars, you can use the command attendeesCreate
.
- The example below creates a new participant
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesCreate',
'params' => [
'email' => '%--attendee-email-at-domain-dot-com--%',
'name' => '%--attendee-first-and-last-name--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesCreate",
"params":
{
"email": "%--attendee-email-at-domain-dot-com--%",
"name": "%--attendee-first-and-last-name--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
name
--- Full name of the participant. Maximum of 64 characters allowed, excluding:^~!@#$%^&*()+=[{}]\|:;,<>/?
.email
--- Participant's full name. Participant's email. Acceptable character count is between 6 and 128, and you can use English letters and numbers.
Editing Participants
For updating participant data, the command attendeesSet
is used.
- The example below updates the personal information of a previously created participant.
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesSet',
'params' => [
'email' => '%--attendee-email-at-domain-dot-com--%',
'newemail' => '%--attendee-new-email-at-domain-dot-com--%',
'name' => '%--attendee-first-and-last-name--%',
'phone' => '%--attendee-phone-number--%',
'skype' => '%--attendee-skype--%',
... etc ...
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesSet",
"params":
{
"email": "%--attendee-email-at-domain-dot-com--%",
"newemail": "%--attendee-new-email-at-domain-dot-com--%",
"name": "%--attendee-first-and-last-name--%",
"phone": "%--attendee-phone-number--%",
"skype": "%--attendee-skype--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
email
--- Email address of the participant. The allowed number of English letters and digits is from 6 to 128.newemail
--- New email address for the participant. Acceptable number of English letters and numbers is from 6 to 128.name
--- Full name of the participant. Maximum 10 characters allowed, excluding:^~!@#$%^&*()+=[{}]\|:;,<>/?
.phone
--- Participant's phone number. Maximum of 16 characters allowed.skype
--- Participant's Skype ID. Acceptable characters are English alphabet characters, excluding:^~!@#$%^&*()+=[{}]\|:;,<>/?
.company
--- Company. Any characters are allowed except:^~!@#$%^&*()+=[{}]\|:;,<>/?
.department
--- Department. Any characters are allowed except:^~!@#$%^&*()+=[{}]\|:;,<>/?
.city
--- City. Any characters are allowed, except:^~!@#$%^&*()+=[{}]\|:;,<>/?
.born
--- Date of birth.
Removing participants
To remove previously created attendees, the command attendeesDelete
is used.
- The example below deletes the specified participant.
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesDelete',
'params' => [
'%--attendee-email-at-domain-dot-com--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesDelete",
"params":
[
"%--attendee-email-at-domain-dot-com--%",
],
},
"response":
{
"success": "%--message--%",
},
},
- The example below removes multiple participants
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesDelete',
'params' => [
'%--attendee-email-at-domain-dot-com--%',
'%--attendee-email-at-domain-dot-com--%',
...
'%--attendee-email-at-domain-dot-com--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesDelete",
"params":
[
"%--attendee-email-at-domain-dot-com--%",
"%--attendee-email-at-domain-dot-com--%",
...
"%--attendee-email-at-domain-dot-com--%",
],
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
name
--- Full name of the participant. Acceptable character limit is up to 64 characters, excluding:^~!@#$%^&*()+=[{}]\|:;,<>/?
.email
--- Email of the participant or an array of emails of the participants to be removed. The allowed character limit is from 6 to 128, and only English letters and numbers can be used.
Obtaining a list of participants
To obtain a list of previously created attendees, you can use the command attendeesList
.
- The example below retrieves a list of all participants
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesList',
'params' => [
'fields' => [
'email',
'link',
...
] ,
'onРage' => '%--amount-of-attendees-per-query--%',
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'search' => '%--search-text--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesList",
"params":
{
"onРage": "%--amount-of-attendees-per-query--%",
},
},
"response":
{
"count": "%--total-amount-of-attendees--%",
"list": [
{
"name": "%--attendee-first-and-last-name--%",
"email": "%--attendee-email-at-domain-dot-com--%",
},
{
"name": "%--attendee-first-and-last-name--%",
"email": "%--attendee-email-at-domain-dot-com--%",
},
...
{
"name": "%--attendee-first-and-last-name--%",
"email": "%--attendee-email-at-domain-dot-com--%",
},
],
},
},
- Data sent and received
fields
— List of fields to retrieve. This parameter is optional. If not specified, only thename
andemail
fields will be returned. List of possible field values:onPage
--- How many participants to return per request on the page. By default, it is set to 100. If the parameter is not specified, the list will be obtained without pagination.alias
--- Unique webinar IDsearch
--- Please enter a set of characters that should be included in the participant's name or email.page
--- Page number to be returned.order
--- Sorting in ascending orderASC
and descending orderDESC
. Default isASC
.orderField
--- Field by which to perform sorting:name
,email
,creation_date
. Default isname
.type
--- Participant type:ACTIVE
- active;PENDING
- inactive;BANNED
- blocked.imported
--- In which way were the participants added to the system.YES
indicates manual addition by the account owner,NO
indicates self-registration.webinars
--- Events,array of aliases
where participants were or were not present.webinarsOrder
--- Has the participant attended the webinars listed in thewebinars
parameter?IN
- attended the webinar,OUT
- did not attend the webinar.withEmail
--- Return participants with email or without email.YES
- return only participants with an email,NO
- return only participants without an email. If the parameter is not specified, the entire list is returned.group
--- Groupid
to which participants are associated.
Possible values for the fields
field
name
--- Participant's full name. Acceptable character limit is between 2 and 64. All characters are allowed except:^~!@#$%^&*()+=[{}]\|:;,<>/?
.email
--- Email address of the participant. Acceptable number of characters is between 6 and 128.phone
--- Participant's phone number. Allowed number of characters is between 6 and 128.skype
--- Participant's Skype ID. Acceptable character count is between 6 and 128.company
--- Company. Acceptable number of characters: 6 to 128.department
--- Department. Allowed number of characters is from 6 to 128.city
--- City. Acceptable number of characters is from 6 to 128.born
--- Date of birth.creation_date
--- Date added.country
--- Participant's country.type
--- Participant type:ACTIVE
- active,PENDING
- pending,BANNED
- banned.notified
--- The number of webinar invitations previously sent.link
--- Joining link for the webinar. This field is available only if thealias
parameter is specified.
Attaching participants to future webinars
To attach (invite, assign) an attendee to scheduled webinars, the command attendeesAddToWebinar
is used.
- The example below attaches the specified participant to the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesAddToWebinar',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'attendees' => [
'%--attendee-email-at-domain-dot-com--%',
],
],
] );
- In case of successful execution of the command, you will receive a response
{
"request": {
"action": "attendeesAddToWebinar",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"attendees":
[
"%--attendee-email-at-domain-dot-com--%",
],
},
},
"response":
{
"success": "%--message--%",
},
},
- The example below attaches multiple participants to the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesAddToWebinar',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'attendees' => [
'%--attendee-email-at-domain-dot-com--%',
'%--attendee-email-at-domain-dot-com--%',
...
'%--attendee-email-at-domain-dot-com--%',
],
],
] );
- In case of successful execution of the command, you will receive a response
{
"request": {
"action": "attendeesAddToWebinar",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"attendees":
[
"%--attendee-email-at-domain-dot-com--%",
"%--attendee-email-at-domain-dot-com--%",
...
"%--attendee-email-at-domain-dot-com--%",
],
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which this API command is executed.attendees
--- Array of participant emails to be attached to the webinar.
Unsubscribing participants from future webinars
To remove an attendee from a scheduled webinar, you can use the command attendeesRemoveFromWebinar
.
- The example below detaches the specified participant from the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesRemoveFromWebinar',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'attendees' => [
'%--attendee-email-at-domain-dot-com--%',
],
],
] );
- In case of successful execution of the command, you will receive a response
{
"request": {
"action": "attendeesRemoveFromWebinar",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"attendees":
[
"%--attendee-email-at-domain-dot-com--%",
],
},
},
"response":
{
"success": "%--message--%",
},
},
- The example below removes multiple participants from the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesRemoveFromWebinar',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'attendees' => [
'%--attendee-email-at-domain-dot-com--%',
'%--attendee-email-at-domain-dot-com--%',
...
'%--attendee-email-at-domain-dot-com--%',
],
],
] );
- In case of successful execution of the command, you will receive a response
{
"request": {
"action": "attendeesRemoveFromWebinar",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"attendees":
[
"%--attendee-email-at-domain-dot-com--%",
"%--attendee-email-at-domain-dot-com--%",
...
"%--attendee-email-at-domain-dot-com--%",
],
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which this API command is executed.attendees
--- An array of participant emails to be detached from the webinar.
Getting a list of webinars that a participant is attached to
To retrieve the webinars to which a previously created attendee has been invited, you can use the command attendeesRooms
.
- The example below retrieves a list of all webinars to which the specified participant has been attached
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesRooms',
'params' => [
'email' => '%--attendee-email-at-domain-dot-com',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesRooms",
"params":
{
"email": "%--attendee-email-at-domain-dot-com",
}
},
"response":
[
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"name": "%--webinar-name-or-topic--%",
"description": "%--webinar-html-formatted-description--%",
"start": "%--year-month-day-hours-minutes-seconds--%",
"timezone": "%--timezone-in-minutes--%",
"duration": "%--webinar-duration-in-minutes--%",
"attendeeLink": "%--https-access-url-for-the-attendee--%"
},
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"name": "%--webinar-name-or-topic--%",
"description": "%--webinar-html-formatted-description--%",
"start": "%--year-month-day-hours-minutes-seconds--%",
"timezone": "%--timezone-in-minutes--%",
"duration": "%--webinar-duration-in-minutes--%",
"attendeeLink": "%--https-access-url-for-the-attendee--%"
},
...
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"name": "%--webinar-name-or-topic--%",
"description": "%--webinar-html-formatted-description--%",
"start": "%--year-month-day-hours-minutes-seconds--%",
"timezone": "%--timezone-in-minutes--%",
"duration": "%--webinar-duration-in-minutes--%",
"attendeeLink": "%--https-access-url-for-the-attendee--%"
},
],
},
- Data sent and received
email
--- Email address of the participant for whom you need to retrieve the list of webinars. The allowed number of characters is from 6 to 128.alias
--- Unique webinar ID for which this API command is executed.name
--- Title or topic of the webinar.description
--- Description of the webinar, if any, may be absent.start
--- Date and time of the webinar start. Text in the formatYYYY-MM-DD HH:MM:SS
.timezone
--- The time zone in which the webinar is conducted. You can refer to the Time Zone Table for available time zones.duration
--- Estimated duration of the webinar in minutes. The maximum value is 1439.attendeeLink
--- Webinar room access link.
Creating a participant group
To create a new group of attendees, you will use the command attendeesCreateGroup
.
- The example below creates a new group
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesCreateGroup',
'params' => [
'name' => '%--attendee-group-name--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesCreateGroup",
"params":
{
"name": "%--attendee-group-name--%",
},
},
"response":
{
"success": "%--message--%",
"group_id": "%--attendee-group-id--%",
},
},
- Data sent and received
name
--- Name of the participant group being created.group_id
--- Group ID of the created participants.
Renaming a participant group
To rename a previously created group of attendees, you can use the command attendeesGroupsRename
.
- The example below renames a group of participants
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesGroupsRename',
'params' => [
'id' => '%--attendee-group-id--%'
'newname' => '%--attendee-groun-new-name--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesGroupsRename",
"params":
{
"id": "%--attendee-group-id--%",
"newname": "%--attendee-groun-new-name--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
id
- The ID of the participant group. You can obtain it during group creation using theattendeesCreateGroup
parameter or through retrieving the list of groups using theattendeesGroupsList
command.newname
--- New name for the participant group.
Removing a group of participants
To delete a previously created group of attendees, you can use the command attendeesDeleteGroup
.
- The example below deletes a previously created group using the specified identifier.
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesDeleteGroup',
'params' => [
'id' => '%--attendee-group-id--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesDeleteGroup",
"params":
{
"id": "%--attendee-group-id--%",
},
},
"response": {
"success": "%--message--%",
},
},
- Data sent and received
id
--- Group ID of the attendees. You can obtain it during group creation using the parameterattendeesCreateGroup
or through retrieving the list of groups usingattendeesGroupsList
.
Getting a list of participant groups
To retrieve a list of all previously created groups, you can use the command attendeesGroupsList
.
- The example below retrieves a list of all groups
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesGroupsList',
'params' => [],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesGroupsList",
"params": [],
},
"response":
[
[
{
"id": "%--attendee-group-id--%",
"name": "%--attendee-group-name--%",
},
{
"id": "%--attendee-group-id--%",
"name": "%--attendee-group-name--%",
},
...
{
"id": "%--attendee-group-id--%",
"name": "%--attendee-group-name--%",
},
],
],
},
- Data sent and received
id
--- Group ID.name
--- Group name.
Adding participants to groups
To add participants to a previously created group, you can use the command attendeesAssignToGroup
.
- The example below adds the specified participant to the group
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesAssignToGroup',
'params' => [
'group_id' => '%--attendee-group-id--%',
'attendees' => [
'%--attendee-email-at-domain-dot-com--%',
],
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesAssignToGroup",
"params":
{
"group_id": "%--attendee-group-id--%",
"attendees":
[
"%--attendee-email-at-domain-dot-com--%",
],
},
},
"response":
{
"success": "%--message--%",
},
},
- The example below adds multiple participants to the group
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesAssignToGroup',
'params' => [
'group_id' => '%--attendee-group-id--%',
'attendees' => [
'%--attendee-email-at-domain-dot-com--%',
'%--attendee-email-at-domain-dot-com--%',
...
'%--attendee-email-at-domain-dot-com--%',
],
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesAssignToGroup",
"params":
{
"group_id": "%--attendee-group-id--%",
"attendees":
[
"%--attendee-email-at-domain-dot-com--%",
"%--attendee-email-at-domain-dot-com--%",
...
"%--attendee-email-at-domain-dot-com--%",
],
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
group_id
--- Group ID for participants. You can obtain it during group creation using the parameterattendeesCreateGroup
, or through retrieving the list of groups usingattendeesGroupsList
.attendees
--- Array of email addresses of participants to be added to the group.
Removing participants from the group
To remove the specified participants from the attendee group, you can use the command attendeesUnAssignFromGroup
.
- The example below removes the specified participant from the group
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesUnAssignFromGroup',
'params' => [
'group_id' => '%--attendee-group-id--%',
'attendees' => [
'%--attendee-email-at-domain-dot-com--%',
],
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesUnAssignFromGroup",
"params":
{
"group_id": "%--attendee-group-id--%",
"attendees":
[
"%--attendee-email-at-domain-dot-com--%",
],
},
},
"response":
{
"success": "%--message--%",
},
},
- The example below removes multiple participants from the group
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesUnAssignFromGroup',
'params' => [
'group_id' => '%--attendee-group-id--%',
'attendees' => [
'%--attendee-email-at-domain-dot-com--%',
'%--attendee-email-at-domain-dot-com--%',
...
'%--attendee-email-at-domain-dot-com--%',
],
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesUnAssignFromGroup",
"params":
{
"group_id": "%--attendee-group-id--%",
"attendees":
[
"%--attendee-email-at-domain-dot-com--%",
"%--attendee-email-at-domain-dot-com--%",
...
"%--attendee-email-at-domain-dot-com--%",
],
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
group_id
--- Group ID of attendees. You can obtain it during group creation using the parameterattendeesCreateGroup
or through retrieving the list of groups usingattendeesGroupsList
.attendees
--- Array of email addresses of participants to be removed from the group.
Retrieving a list of groups in which a participant is present
To retrieve a list of all groups that a participant has been added to, you can use the command attendeesCommonGroups
.
- The example below retrieves the list of groups for the specified participant
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesCommonGroups',
'params' => [
'%--attendee-email-at-domain-dot-com--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesCommonGroups",
"params":
[
"%--attendee-email-at-domain-dot-com--%",
],
},
"response":
[
{
"id": "%--attendee-group-id--%",
"name": "%--attendee-group-name--%",
},
{
"id": "%--attendee-group-id--%",
"name": "%--attendee-group-name--%",
},
...
{
"id": "%--attendee-group-id--%",
"name": "%--attendee-group-name--%",
},
],
},
- The example below retrieves a list of groups for multiple participants at once
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesCommonGroups',
'params' => [
'%--attendee-email-at-domain-dot-com--%',
'%--attendee-email-at-domain-dot-com--%',
...
'%--attendee-email-at-domain-dot-com--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesCommonGroups",
"params":
[
"%--attendee-email-at-domain-dot-com--%",
"%--attendee-email-at-domain-dot-com--%",
...
"%--attendee-email-at-domain-dot-com--%",
],
},
"response":
[
{
"id": "%--attendee-group-id--%",
"name": "%--attendee-group-name--%",
},
{
"id": "%--attendee-group-id--%",
"name": "%--attendee-group-name--%",
},
...
{
"id": "%--attendee-group-id--%",
"name": "%--attendee-group-name--%",
},
],
},
- Data sent and received
attendee-email-at-domain-dot-com
--- Array of participant emails to be added to the group.
In the command, you can pass one or multiple email addresses of participants to retrieve the list of groups they belong to.
Removing participants from the blocked list
To remove the block from a previously blocked participant in the webinar room, the command used is attendeesUnbanned
.
- The example below will unblock the specified participant
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesUnbanned',
'params' => [
'email' => '%--attendee-email-at-domain-dot-com--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesUnbanned",
"params":
{
"email": "%--attendee-email-at-domain-dot-com--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- The example below will unblock multiple participants at once
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'attendeesUnbanned',
'params' => [
'email' => '%--attendee-email-at-domain-dot-com--%',
'email' => '%--attendee-email-at-domain-dot-com--%',
...
'email' => '%--attendee-email-at-domain-dot-com--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "attendeesUnbanned",
"params":
{
"email": "%--attendee-email-at-domain-dot-com--%",
"email": "%--attendee-email-at-domain-dot-com--%",
...
"email": "%--attendee-email-at-domain-dot-com--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
email
--- Email or an array of participant emails from which you need to remove the block.
Webinars
In this section, you will find commands for:
- Planning and creating a webinar
- Updating the settings of the scheduled webinar
- Deleting a webinar
- Cloning a webinar
- Retrieving a list of scheduled webinars
- Obtaining detailed information for a webinar
- Retrieving invitation mailing data for the webinar
- Updating invitation mailing settings for a webinar
- Disabling the webinar notification emails
- Enabling webinar notification emails
- Retrieving a list of participants on an active webinar
- Retrieving a list of webinar recordings
- Deleting a recording for a webinar
- Obtaining a list of documents uploaded to the webinar
- Obtaining webinar attendance history
Planning and creating a webinar
To create a scheduled webinar, you will need to use the command "webinarsCreate".
- The example below creates a webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' =>'webinarsCreate',
'params' => [
'name' => '%--webinar-name-or-topic--%',
'start' => '%--year-month-day-hours-minutes-seconds--%',
'duration' => '%--webinar-duration-in-minutes--%',
]
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsCreate",
"params":
{
"name": "%--webinar-name-or-topic--%",
"start": "%--year-month-day-hours-minutes-seconds--%",
"duration": "%--webinar-duration-in-minutes--%",
},
},
"response":
{
"success": "%--message--%",
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"webinarLink": "%--https-access-url-to-the-webinar--%",
"mainModeratorLink": "%--https-access-url-for-the-main-moderator--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which this API command is executed.name
--- Name or title of the webinar.description
--- Webinar description.start
--- Date and time of the webinar start. Text format:YYYY-MM-DD HH:MM:SS
.duration
--- Estimated duration of the webinar in minutes. Maximum value is 1439.webinarLink
--- Public webinar link.mainModeratorLink
--- Link to the webinar for the main moderator.
Updating the settings of the scheduled webinar
To make changes to any previously scheduled webinar, you can use the command webinarsSet
.
- The example below modifies some settings for the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsSet',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'name' => '%--webinar-name-or-topic--%',
... - please see additional information below
'language' => '%--webinar-room-language--%',
'settings' => [
'cameraSize' => '%--mini-middle-big--%',
'userList' => '%--yes-or-no--%',
'loginfields' => [
'name',
'email',
... - depending on the required fields
],
'recordWhole' => "%--record-whole-area-chat-webcam--%",
"recordUsers" => "%--yes-or-no--%",
"recordQuality" => "%--0-1-2-3-4--%",
... - the amount of data can vary
],
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsSet",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"name": "%--webinar-name-or-topic--%",
"language": "%--webinar-room-language--%",
"settings":
{
"cameraSize": "%--camera-size--%",
"userList": "%--yes-or-no--%",
"loginfields":
[
"name",
"email"
],
"recordWhole": "",
"recordUsers": "%--yes-or-no--%",
"recordQuality": "%--0-1-2-3-4--%",
...
},
...
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which this API command is executed.name
--- Title or topic for the webinar.description
--- Advanced webinar description in HTML format. This parameter is optional.start
--- The start date and time of the webinar in the time zone specified in the Profile section. The text format isYYYY-MM-DD HH:MM:SS
.duration
--- Duration of the webinar in minutes. The maximum value is 1439.close
---YES
- private webinar, orNO
- public webinar.language
--- Two-letter language code in the room. The interface of the webinar will be displayed in this language by default for both presenters and attendees. Possible parameter values:be
- Belarusian;bg
- Bulgarian;de
- German;en
- English;es
- Spanish;et
- Estonian;fr
- French;it
- Italian;lt
- Lithuanian;lv
- Latvian;pl
- Polish;pt
- Portuguese;ru
- Russian;sl
- Slovenian;tr
- Turkish;uk
- Ukrainian.logo
--- Logo for the webinar room. Image in Base64 format.logotype_url
--- Link to the page that will appear when clicking on the logo.banner
--- Webinar room banner. Image in Base64 format.banner_url
--- Link to the page that will appear when you click on the banner.google_id
--- Google Analytics Tracking ID (DEPRECATED)settings
--- Advanced room settings. Allowed parameters:
webcamPosition
--- Camera placement for the moderator:LEFT
- camera on the left above the chat,RIGHT
- camera on the right above the chat.themebg
--- The background color in the webinar room. Color values should be inHEX
format, for example#f2f2f2
.themetext
--- Color of icons and text in the webinar room. Color values should be inHEX
format, for example#d3d3d3
.userList
--- Show or hide the user list to participants. Set toYES
to show the guest list to participants, orNO
to hide the list.flags
--- Display or hide country flags in the user list in the room. Set it toYES
to show flags, andNO
to hide flags. This parameter will not work ifuserList
is set toNO
.buttonQuestion
--- Show or hide the Ask a Question button in the participant menu during the webinar. Set it toYES
to show the button, orNO
to hide it.buttonVoice
--- Show or hide the Raise Hand button in the participant menu during the webinar. Set toYES
to show, andNO
to hide.chat
--- Show or hide the chat field for guests. Setting it toYES
will display the chat field, allowing participants to send messages. Setting it toNO
will hide the chat field, preventing participants from sending messages.showBeforeTimer
--- Display or hide the countdown timer until the webinar starts. Set it toYES
to display the timer orNO
to hide it.showLoginStart
--- Show or hide the event start time on the webinar entry page. SelectYES
to display the start time orNO
to hide it.showLoginName
--- Show or hide the webinar title on the webinar entry page. Set it toYES
to display the webinar title, orNO
to hide the webinar title.showLoginModerators
--- Show or hide the list of moderators on the webinar entry page.YES
to display the list of moderators,NO
to hide it.showSocialButtons
--- Show or hide social media login buttons on the login page. If set toYES
, the login buttons will be displayed. If set toNO
, the buttons will be absent.showLoginCounter
--- Display the number of available seats for the webinar on the login page. ChooseYES
to show the number of available seats, orNO
to hide it.group
--- The presence of this parameter determines whether participants will be grouped under Group ID. Use the commandAttendeesGroupsList
to obtain the group ID.loginfields
--- List of fields for entering on the webinar login page and their sequence. The parameter may include the following elements:name
- field for entering the name;email
- field for entering the email (if the parameter is absent, the participant will not appear in the participants section in the control panel, they will only be included in the statistics of the webinar);phone
- field for entering the phone number;skype
- field for entering the Skype username;city
- field for entering the city name;company
- field for entering the organization name;department
- field for entering the department name;born
- field for entering the date of birth.beforeStartTime
--- The number of minutes before the event start time when participants will be allowed to join the webinar. The time range is from 5 to 60 minutes.cameraSize
--- Camera size on the webinar.mini
for small,middle
for medium,big
for large - in the event settings, the parameter is called "Chat Size".emailIdntLogin
--- To enable personalized links for accessing the webinar, set the mode toYES
. To disable the mode, set it toNO
.emailIdntRecord
--- Enable personalized link mode for recording viewing:YES
to activate the mode,NO
to deactivate the mode.- Recording mode --- There are multiple recording modes available. To set the desired recording mode, you need to pass an empty value as the key in the mode array. For example,
recordWebCams => ""
. Here is a list of recording modes:recordWebCams
- records only webcams;recordAreaNoChat
- records webcams, microphones, chat, and documents display area;recordArea
- records webcams, microphones, and documents display area;recordWhole
- records the entire room. It can accept the following additional values:recordUsers
- activates recording of the participant list. Changing this parameter activates therecordWhole
mode. UseYES
to include the participant list in the recording, orNO
to exclude it;recordModer
- Displays the name of the moderator on the moderator's camera in the recording. Changing this parameter automatically sets therecordWhole
mode. UseYES
to show the moderator's name on their camera in the recording, orNO
to hide it;recordChat
- includes the chat in the recording. UseYES
to include the chat in the recording, orNO
to exclude it. Please note that the provided values are for reference and should be adjusted based on your specific recording needs. recordQuality
- Setting the recording quality level:0
- recording will be done in 480p resolution [800x460];1
- recording will be done in 720p resolution [1280x720];2
- recording will be done in 1080p resolution [1920x1080] - this quality level is only available on paid plans;3
- recording will be done in 2K resolution [2048x1080] - this quality level is available in plans with 500 or more participants.sendRecord
--- Sending the webinar recording link after the event has ended. SelectingYES
will automatically send the recording to participants after the webinar. SelectingNO
will not send the recording.sendRecordTo
--- This parameter determines who will receive the recording link after the webinar ends. By default, if the parameter is active, the recording is sent to all users registered as participants of the webinar.all
- send the recording to everyone.visit
- send the recording to everyone who attended the webinar.miss
- send the recording to everyone who did not attend the webinar.
Deleting a webinar
To completely delete a previously scheduled webinar, you can use the command webinarsDelete
.
- The example below deletes the specified webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsDelete',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsDelete",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
},
},
"response": {
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which this API command is executed.
Cloning a webinar
To clone a previously created webinar, you can use the command webinarsClone
.
- The example below creates a copy of a previously scheduled webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsClone',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'date' => '%--year-month-day--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsClone",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"date": "%--year-month-day--%",
},
},
"response":
{
"success": "%--message--%",
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"webinarLink": "%--https-access-url-to-the-webinar--%",
"mainModeratorLink": "%--https-access-url-for-the-main-moderator--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which this API command is executed.date
--- Event date.webinarLink
--- Event URL.mainModeratorLink
--- Main moderator's link for event entry.
Retrieving a list of scheduled webinars
To get the complete or partial list of scheduled webinars, you can use the command webinarsList
.
- The example below returns a list of webinars
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsList',
'params' => [
'fields' => [
'name',
'alias'
],
'status' => '%--active-or-finished--%',
'date' => '%--year-month-day-hours-minutes-seconds--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsList",
"params":
{
"fields":
[
"name",
"alias"
],
"status": "%--active-or-finished--%",
"date": "%--year-month-day-hours-minutes-seconds--%",
},
},
"response":
[
{
"name": "%--webinar-name-or-topic--%",
"description": "%--html-formatted-webinar-description--%",
"created": "%--year-month-day-hours-minutes-seconds--%",
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"start": "%--year-month-day-hours-minutes-seconds--%",
"language": "%--webinar-room-language--%",
},
{
"name": "%--webinar-name-or-topic--%",
"description": "%--html-formatted-webinar-description--%",
"created": "%--year-month-day-hours-minutes-seconds--%",
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"start": "%--year-month-day-hours-minutes-seconds--%",
"language": "%--webinar-room-language--%",
},
...
{
"name": "%--webinar-name-or-topic--%",
"description": "%--html-formatted-webinar-description--%",
"created": "%--year-month-day-hours-minutes-seconds--%",
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"start": "%--year-month-day-hours-minutes-seconds--%",
"language": "%--webinar-room-language--%",
},
],
},
- Data sent and received
fields
is a list of fields to be retrieved. This parameter is optional. If not specified, all fields will be returned.
status
--- Filter by webinar status:ACTIVE
- ongoing or scheduled webinars;FINISHED
- ended webinars.date
--- Date filter: Select all webinars for a specific day. Use the date formatYYYY-MM-DD
.name
--- Title or topic for the webinar. Webinar topic text.description
--- Webinar description text. It can be empty.created
--- Webinar creation date. It should be described in the formatYYYY-MM-DD HH:MM:SS
inGMT+0
timezone.alias
--- Unique webinar ID for which this API command is executed.start
--- Date and time of start in the time zone specified in the Profile. Format:YYYY-MM-DD HH:MM:SS
.language
--- Two-letter language code for the room. The default interface language for both presenters and attendees will be displayed in this language. Acceptable values:be
- Belarusian;bg
- Bulgarian;de
- German;en
- English;es
- Spanish;et
- Estonian;fr
- French;it
- Italian;lt
- Lithuanian;lv
- Latvian;pl
- Polish;pt
- Portuguese;ru
- Russian;sl
- Slovenian;tr
- Turkish;uk
- Ukrainian.
Obtaining detailed information for a webinar
To obtain detailed information about a scheduled webinar, you can use the command webinarsGetInfo
.
- The example below retrieves all the information about the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsGetInfo',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsGetInfo",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%"
}
},
"response": {
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"name": "%--webinar-name-or-topic--%",
"description": "%--html-formatted-webinar-description--%",
"start": "%--year-month-day-hours-minutes-seconds--%",
"duration": "%--webinar-duration-in-minutes--%",
"close": "%--yes-or-no--%",
"language": "%--webinar-room-language--%",
"google_id": "%--google-analytics-id--%",
"created": "%--year-month-day-hours-minutes-seconds--%",
"status": "%--active-or-finished--%",
"records": "%--amount-of-the-previous-records--%",
"settings": {
"userList": "%--yes-or-no--%",
"flags": "%--yes-or-no--%",
"chat": "%--yes-or-no--%",
"buttonQuestion": "%--yes-or-no--%",
"buttonVoice": "%--yes-or-no--%",
"showBeforeTimer": "%--yes-or-no--%",
"showLoginStart": "%--yes-or-no--%",
"showLoginName": "%--yes-or-no--%",
"showLoginModerators": "%--yes-or-no--%",
"showSocialButtons": "%--yes-or-no--%",
"showLoginCounter": "%--yes-or-no--%",
"emailIdntLogin": "%--yes-or-no--%",
"emailIdntRecord": "%--yes-or-no--%",
"sendRecord": "%--yes-or-no--%",
"theme": {
"bg": "%--html-based-color-code--%",
"text": "%--html-based-color-code--%"
},
"loginFields": [
"name",
"email"
],
"group": "%--group-name--%"
}
}
}
- Data sent and received
alias
--- The unique webinar ID for which this API command is being executed.name
--- Webinar title.description
--- Webinar description.start
--- Start time of the webinar.duration
--- Duration of the webinar in minutes. The maximum value is 1439.close
--- Closed or open webinar. UseYES
for closed andNO
for open.language
--- Default language of the webinar. All event notifications will be sent in this language.google_id
---id
Google Analytics (DEPRECATED).created
--- Webinar creation date.status
---ACTIVE
webinars, which are scheduled or currently taking place, andFINISHED
webinars, which have concluded.records
--- For more details on the recording options, please refer to the commandwebinarsSet
.settings
--- Webinar room settings. For detailed information on each parameter, please refer to thewebinarsSet
command....
--- and other available options.
Retrieving invitation mailing data for the webinar
To retrieve information about the invitation emails sent for a webinar, you can use the command webinarsGetLettersInfo
.
- The example below retrieves all active newsletters for the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsGetLettersInfo',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsGetLettersInfo",
"params":
{
"alias": "xzkh-velf-xbek-wner",
},
},
"response":
{
"REGISTRATIONCONFIRM":
{
"enabled": "%--0-or-1--%",
"status": "%--wait-or-end--%",
"text": "%--email-message-body--%",
},
"1HOUR":
{
"enabled": "%--0-or-1--%",
"status": "%--wait-or-end--%",
"text": "%--email-message-body--%",
},
"STARTED":
{
"enabled": "%--0-or-1--%",
"status": "%--wait-or-end--%",
"text": "%--email-message-body--%",
},
"FINISHED":
{
"enabled": "%--0-or-1--%",
"status": "%--wait-or-end--%",
"text": "%--email-message-body--%",
},
... - additional information can be provided here
},
},
- Data sent and received
alias
--- Unique webinar ID for which this API command is executed.
Updating invitation mailing settings for a webinar
For modifying the parameters of the sent invitations, the command webinarsSetLetters
is used.
- The example below modifies the invitation settings for the webinar.
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsSetLetters',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'text' => '%--some-text-for-email-message-footer--%',
'type' => '%--type--%',
'enabled' => '%--yes-or-no--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsSetLetters",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"type": "%--type--%",
"enabled": "%--yes-or-no--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- The unique webinar ID for which this API command is being executed.text
--- Email signature text - text in HTML format. To remove this text, send a request with an empty value.type
--- Message type. The email that requires action to be taken.
REGISTRATIONCONFIRM
- Registration Confirmation Email. This email is sent when a participant registers for a webinar through the login page.3DAY
- Email notification for participants 3 days (72 hours) prior to the webinar.1DAY
- Email reminder to participant 1 day (24 hours) before the webinar.1HOUR
- Email sent to participants 1 hour before the webinar.STARTED
- Email sent to the participants who were invited but did not enter the webinar room at the start of the event.FINISHED
- Post-webinar email.
enabled
--- Activation or deactivation of email sending:YES
the email will be sent;NO
the email will not be sent. The participant invitation email one hour before the webinar1HOUR
cannot be disabled.
Disabling the webinar notification emails
To disable the sending of invitations to all webinar participants, you can use the command ` webinarsLettersOff `.
- The example below disables the webinar invitation emails
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsLettersOff',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsLettersOff",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which this API command is executed.
Enabling webinar notification emails
To activate the invitations mailing to all webinar participants, the command webinarsLettersOn
is used.
- The example below enables the email newsletter for the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsLettersOn',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsLettersOn",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which this API command is executed.
Retrieving a list of participants on an active webinar
To obtain a list of participants who are currently attending the webinar, the command webinarsOnlineList
is used.
- The example below selects all participants in the webinar currently in progress
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsOnlineList',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsOnlineList",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
},
},
"response":
{
"moderators":
[
{
"name": "%--first-and-last-name-of-the-moderator--%",
"email": "%--moderator-email-at-domain-dot-com--%",
},
...
],
"guests":
[
{
"name": "%--first-and-last-name-of-the-attendee--%",
"email": "%--attendee-email-at-domain-dot-com--%",
},
...
],
},
},
- Data sent and received
alias
--- Unique webinar ID for which this API command is executed.moderators
--- List of the webinar moderators.guests
--- List of the webinar attendees.
Retrieving a list of webinar recordings
To obtain a list of created webinar recordings, you can use the command webinarsRecordsList
.
- The example below retrieves the list of webinar recordings
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsRecordsList',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsRecordsList",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
},
},
"response":
[
{
"id": "%--unique-id-of-the-recording--%",
"name": "%--name-of-the-recording--%",
"status": "%--ready-or-wait--%",
"added": "%--year-month-day-hours-minutes-seconds--%",
"size": "%--recording-file-size-in-bytes--%",
"duration": "%--recording-length-in-seconds--%",
"link": "%--https-unique-url-to-watch-the-recoring--%",
"download_link": "%--https-unique-url-to-download-the-recoring--%",
},
...
],
},
- Data sent and received
alias
--- Unique webinar ID for which this API command is executed.id
--- Unique webinar recording ID.name
--- Webinar titlestatus
--- The recording status is eitherProcessing
orReady for Download.
added
--- Date and time of creation.size
--- File size of the recording.duration
--- Duration of the recording.link
--- Recording playback link.download_link
--- Download link.
Deleting a recording for a webinar
To delete a webinar recording based on its unique code, you can use the command webinarsRecordDelete
.
- The example below deletes a record for the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsRecordDelete',
'params' => [
'id' => '%--unique-id-of-the-recording--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsRecordDelete",
"params":
{
"id": "%--unique-id-of-the-recording--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
id
--- Record identifier. Theid
of the record can be obtained using thewebinarsRecordsList
command.
Obtaining a list of documents uploaded to the webinar
To retrieve a list of all documents uploaded to the webinar, use the command webinarsFilesList
.
- The example below retrieves previously uploaded files for the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsFilesList',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'type' => '%--type--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsFilesList",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"type": "%--type--%",
},
},
"response":
[
{
"id": "%--unique-id-of-the-file--%",
"name": "%--name-of-the-file--%",
"added": "%--year-month-day-hours-minutes-seconds--%",
"size": "%--file-size-in-bytes--%",
"duration": "%--length-in-seconds-or-amount-of-pages--%",
"link": "%--https-unique-url-to-watch-the-file--%",
"download_link": "%--https-unique-url-to-download-the-file--%",
},
...
],
},
- Data sent and received
alias
--- Unique webinar ID for which this API command is executed.type
--- File types to be obtained. This parameter is optional.PRESENTATION
- getting a list of presentations and images.MEDIA
- getting a list of mp3, mp4 files, videos from Youtube and Vimeo.id
--- Unique file ID.name
--- File name.added
--- Date and time of file uploading or creation.size
--- File size.duration
--- File length, for example, refers to the number of slides in a presentation.link
--- File link.download_link
--- Download link.
Obtaining webinar attendance history
To retrieve a detailed history of webinar attendance by participants and all text chat messages, the command webinarsHistory
is used.
- The example below retrieves the attendance history or chat log for a webinar.
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsHistory',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'type' => '%--chat-or-visits--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsHistory",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"type": "%--type--%",
},
},
"response":
[
[
"%--year-month-day-hours-minutes-seconds--%",
"%--attendee-first-and-last-name--%",
"%--text-chat-message-attendee-sent--%",
"%--g-or-m--%",
"%--attendee-email-at-domain-dot-com--%",
],
[
"%--year-month-day-hours-minutes-seconds--%",
"%--attendee-first-and-last-name--%",
"%--text-chat-message-attendee-sent--%",
"%--g-or-m--%",
"%--attendee-email-at-domain-dot-com--%",
],
...
[
"%--year-month-day-hours-minutes-seconds--%",
"%--attendee-first-and-last-name--%",
"%--text-chat-message-attendee-sent--%",
"%--g-or-m--%",
"%--attendee-email-at-domain-dot-com--%",
],
],
},
- Data sent and received
alias
--- Unique webinar ID for which this API command is executed.type
--- Requested history type:chats
- returns a detailed history of all messages in the text chat.visits
- returns the history of webinar visits.
Automated webinars
In this section, you will find commands for
- Creating virtual moderators
- Deleting virtual moderators
- Creating virtual attendees
- Deleting virtual attendees
- Getting the list of virtual attendees
- Sending messages in the chat on behalf of virtual attendees
- Disabling text chat for "live" participants
- Enabling text chat for "live" participants
- Disabling links in the chat for "live" participants
- Enabling links in the chat for "live" participants
- Starting the slide presentation for live participants
- Disabling presentation display for "live" participants
- Playing a video clip or YouTube for "live" attendees
- Pausing the video for "live" participants
- Ending the webinar and disconnecting live attendees
Creating virtual moderators
To create virtual moderators, the command webinarsAddModerToRoom
is used.
- The example below creates a virtual presenter for the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsAddModerToRoom',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'email' => '%--moderator-email-at-domain-dot-com--%',
'name' => '%--moderator-first-and-last-name--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsAddModerToRoom",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"email": "%--moderator-email-at-domain-dot-com--%",
"name": "%--moderator-first-and-last-name--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
-
alias
--- Unique webinar ID for which a virtual moderator is being created. -
email
--- Please provide a unique email for the virtual moderator you are creating. The email should contain 6 to 128 characters. -
name
--- Full name of the virtual moderator being created. The allowed number of characters is from 2 to 64. All characters are allowed except:^~!@#$%^&*()+=[{}]\|:;,<>/?.
Deleting virtual moderators
To remove a virtual moderator from the webinar, you can use the command webinarsRemoveModerFromRoom
.
- The example below removes a previously created virtual moderator from the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsRemoveModerFromRoom',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'email' => '%--moderator-email-at-domain-dot-com--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsRemoveModerFromRoom",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"email": "%--moderator-email-at-domain-dot-com--%",
}
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID from which a previously created moderator is removed.email
--- Unique email of a previously created virtual moderator. The acceptable character limit is from 6 to 128.
Creating virtual attendees
To create a virtual attendee in the webinar room, you can use the command webinarsAddBotToRoom
.
- The example below creates a virtual attendee for the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsAddBotToRoom',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'name' => '%--attendee-first-and-last-name--%',
'country' => '%--two-letters-country-code--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsAddBotToRoom",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"name": "%--attendee-first-and-last-name--%",
"country": "%--two-letters-country-code--%",
},
},
"response":
{
"success": "%--message--%",
"id": "%--unique-id-of-the-virtual-attendee--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which a virtual attendee is being created.name
--- Full name of the virtual attendee being created. The allowed number of characters is from 2 to 64. All characters are allowed except:^~!@#$%^&*()+=[{}]\::;,<>/?.
country
--- Country code. For example,US
,DE
,UK
,FR
,PL
,UA
...id
--- Unique code (ID) of the created virtual attendee.
Deleting virtual attendees
To remove a virtual attendee from the webinar, you can use the command webinarsRemoveBotFromRoom
.
- The example below deletes a previously created virtual attendee from the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsRemoveBotFromRoom',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'id' => '%--unique-id-of-the-virtual-attendee--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsRemoveBotFromRoom",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"id": "%--unique-id-of-the-virtual-attendee--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID from which the virtual attendee is being removed.id
--- Unique code (ID) of the created virtual attendee.
Getting the list of virtual attendees
To retrieve a list of all virtual attendees on the webinar, you can use the command webinarsGetBotsList
.
- The example below retrieves all virtual attendees who are currently connected to the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsGetBotsList',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsGetBotsList",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
},
},
"response":
[
{
"id": "%--unique-id-of-the-virtual-attendee--%",
"name": "%--attendee-first-and-last-name--%",
"country": "%--two-letters-country-code--%",
},
...
],
},
- Data sent and received
alias
--- Unique webinar ID for which the list of all previously created virtual attendees is obtained.id
--- Unique code (ID) of the created virtual attendee.name
--- Full name of the virtual attendee. Acceptable character count is 2 to 64. All characters are allowed except:^~!@#$%^&*()+=[{}]\|:;,<>/?
.country
--- Country code. For example,US
,DE
,UK
,FR
,PL
,UA
...
Sending messages in the chat on behalf of virtual attendees
To send messages on behalf of a virtual attendee or presenter, you can use the command webinarsBotMessage
.
- The example below sends a text message during the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsBotMessage',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'bot' => '%--moderator-email-or-unique-id-of-the-virtual-attendee--%',
'text' => '%--text-message--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsBotMessage",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"bot": "%--moderator-email-or-unique-id-of-the-virtual-attendee--%",
"text": "%--text-message--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID to which a message will be sent in the text chat.bot
--- The email of the virtual moderator that was used during its creation, or the unique identifier of the virtual attendee obtained during its creation.text
--- Text message that will be sent to the webinar chat.
Disabling text chat for "live" participants
To disable the text chat during the webinar, you can use the command webinarLockChat
.
- The example below restricts the exchange of chat messages between webinar participants
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsLockChat',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsLockChat",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which the chat messaging feature is disabled for all "live" attendees.
Enabling text chat for "live" participants
To enable text chat during the webinar, you can use the command webinarsUnlockChat
.
- The example below enables messaging in the chat between webinar participants
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsUnlockChat',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsUnlockChat",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which the chat messaging feature is enabled for all live participants.
Disabling links in the chat for "live" participants
To prevent participants in the webinar from exchanging links in the chat, you can use the command webinarsLinkLockInChat
.
- The example below prohibits the exchange of links in the webinar chat between participants
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsLinkLockInChat',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsLinkLockInChat",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which the ability to exchange links in the chat among "live" participants is disabled.
Enabling links in the chat for "live" participants
To allow participants in the webinar to exchange links in the chat, the command webinarsLinkUnlockInChat
is used.
- The example below allows participants in the webinar to exchange links in the chat
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsLinkUnlockInChat',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsLinkUnlockInChat",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID, which enables the ability to share links in the chat among the live attendees.
Starting the slide presentation for live participants
To initiate the presentation, you will use the command webinarsStartPresentation
.
- The example below starts the presentation of the specified slide during the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsStartPresentation',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'id' => '%--unique-id-of-the-file--%',
'slide' => '%--page-or-slide-number--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsStartPresentation",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"id": "%--unique-id-of-the-file--%",
"slide": "%--page-or-slide-number--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- UniqueID
of the webinar for which the presentation is being launched.id
--- TheID
code of the presentation, obtained when retrieving previously uploaded files. To retrieve it, use thewebinarsFilesList
parameter.slide
--- Slide number of the presentation to be shown during the webinar.
Disabling presentation display for "live" participants
To stop the presentation during a webinar, you can use the command webinarStopPresentation
.
- The example below stops the presentation display for the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarStopPresentation',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarStopPresentation",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which the presentation display is stopped.
Playing a video clip or YouTube for "live" attendees
To start a video, YouTube, or Vimeo clip, you can use the command webinarsStartVideo
.
- The example below plays a video clip during the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsStartVideo',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
'id' => '%--unique-id-of-the-file--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsStartVideo",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
"id": "%--unique-id-of-the-file--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which the video playback is being launched.id
--- Video clipID
code. To retrieve it, use thewebinarsFilesList
parameter.
Pausing the video for "live" participants
To stop the playback of a running video, YouTube, or Vimeo file, use the command webinarsStopVideo
.
- The example below stops the playback of the video for the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsStopVideo',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsStopVideo",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID for which the video playback is paused.
Ending the webinar and disconnecting live attendees
To complete a webinar fully, you can use the command webinarsFinish
. This will disconnect all participants from the webinar room.
- The example below concludes the webinar
$data[ 'request' ] = json_encode( [
'key' => '%--api-key-from-your-profile--%',
'action' => 'webinarsFinish',
'params' => [
'alias' => '%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%',
],
] );
- In case of successful execution of the command, you will receive a response
{
"request":
{
"action": "webinarsFinish",
"params":
{
"alias": "%--webinar-alias-xxxx-xxxx-xxxx-xxxx--%",
},
},
"response":
{
"success": "%--message--%",
},
},
- Data sent and received
alias
--- Unique webinar ID that will be concluded. Only a webinar that has started can be concluded.
Updated on: 17/05/2024
Thank you!