This site contains the documentation that is relevant to older WSO2 product versions and offerings.
For the latest WSO2 documentation, visit https://wso2.com/documentation/.

Working with Webinars in GoToWebinar



Overview

The following operations allow you to work with webinars. Click an operation name to see details on how to use it.

For a sample proxy service that illustrates how to work with webinars, see Sample configuration

OperationDescription

getWebinarById

Retrieves information on a specific webinar.

listHistoricalWebinarsRetrieves details for completed webinars.
listUpcomingWebinarsRetrieves webinars scheduled for the future.
getAllWebinarsReturns webinars scheduled for the future for a specified organizer.
createWebinarCreates a single session webinar.
cancelWebinarCancels a specific webinar.
updateWebinarUpdates a webinar.
getAttendeesForAllWebinarSessionsReturns all attendees for all sessions of the specified webinar.
getAudioInformationRetrieves the audio/conferencing information for a specific webinar.
updateAudioInformationUpdates the audio/conferencing settings for a specific webinar.
getWebinarMeetingTimesRetrieves the meeting times for a webinar.
getWebinarPanelistsRetrieves all the panelists for a specific webinar.
createPanelistsCreates panelists for a specified webinar.
getPerformanceForAllWebinarSessionsRetrieves performance details for all sessions of a specific webinar.

Operation details

This section provides further details on the operations related to webinars.

Related GoToTraining documentation

https://developer.citrixonline.com/content/gotowebinar-api-reference

Retrieving information on a specific webinar

The getWebinarById operation retrieves information on a specific webinar.

getWebinarById
<gotowebinar.getWebinarById>
	<webinarKey>{$ctx:webinarKey}</webinarKey>
</gotowebinar.getWebinarById>
Properties
  • webinarKey: Required - The unique numeric key to retrieve the individual webinar details.
Sample request

Following is a sample REST/JSON request that can be handled by the getWebinarById operation.

Sample Request for getWebinarById
{
    "apiUrl":"https://api.citrixonline.com",
    "accessToken":"UEGGrwswKRwB07lTOr0EoppdaxKo",
    "organizerKey":"3697511743350317068",
    "clientId":"IJfcaqp3xC034WXD1GGlstejnJS41huo",
    "refreshToken":"MDAKxJTJ3cAdhuzavhtOFNAmV5N0m7gm",
	"webinarKey":"5452440042032782081"
}

Retrieving details for completed webinars

The listHistoricalWebinars operation retrieves details for completed webinars.

listHistoricalWebinars
<gotowebinar.listHistoricalWebinars>
	<fromTime>{$ctx:fromTime}</fromTime>
	<toTime>{$ctx:toTime}</toTime>
</gotowebinar.listHistoricalWebinars>
Properties
  • fromTime: Required - The starting time of the webinar.
  • toTime  : Required - The ending time of the webinar.
Sample request

Following is a sample REST/JSON request that can be handled by the listHistoricalWebinars  operation.

Sample Request for listHistoricalWebinars
{
    "apiUrl":"https://api.citrixonline.com",
    "accessToken":"UEGGrwswKRwB07lTOr0EoppdaxKo",
    "organizerKey":"3697511743350317068",
    "clientId":"IJfcaqp3xC034WXD1GGlstejnJS41huo",
    "refreshToken":"MDAKxJTJ3cAdhuzavhtOFNAmV5N0m7gm",
	"fromTime":"2014-12-03T18:00:00Z",
	"toTime":"2014-12-03T19:00:00Z"
}

Retrieving webinars scheduled for the future

The listUpcomingWebinars operation retrieves webinars scheduled for the future for a specified organizer. 

listUpcomingWebinars
<gotowebinar.listUpcomingWebinars/>
Sample request

Following is a sample REST/JSON request that can be handled by the listUpcomingWebinars operation.

Sample Request for listUpcomingWebinars
{
    "apiUrl":"https://api.citrixonline.com",
    "accessToken":"UEGGrwswKRwB07lTOr0EoppdaxKo",
    "organizerKey":"3697511743350317068",
    "clientId":"IJfcaqp3xC034WXD1GGlstejnJS41huo",
    "refreshToken":"MDAKxJTJ3cAdhuzavhtOFNAmV5N0m7gm",
}

Retrieving all upcoming webinars of a specified organizer

The getAllWebinars operation retrieves webinars scheduled for the future for a specified organizer. 

getAllWebinars
<gotowebinar.getAllWebinars/>
Sample request

Following is a sample REST/JSON request that can be handled by the getAllWebinars operation.

Sample Request for getAllWebinars
{
    "apiUrl":"https://api.citrixonline.com",
    "accessToken":"UEGGrwswKRwB07lTOr0EoppdaxKo",
    "organizerKey":"3697511743350317068",
    "clientId":"IJfcaqp3xC034WXD1GGlstejnJS41huo",
    "refreshToken":"MDAKxJTJ3cAdhuzavhtOFNAmV5N0m7gm",
}

Creating a single session webinar

The createWebinar operation creates a single session webinar. 

createWebinar
<gotowebinar.createWebinar>
    <subject>{$ctx:subject}</subject>
    <description>{$ctx:description}</description>
    <webinarStartTime>{$ctx:webinarStartTime}</webinarStartTime>
    <webinarEndTime>{$ctx:webinarEndTime}</webinarEndTime>
    <timeZone>{$ctx:timeZone}</timeZone>
</gotowebinar.createWebinar>
Properties
  • subject         : Required - The name or subject of the webinar (128 characters maximum).
  • description     : Optional - A short description of the webinar (2048 characters maximum).
  • webinarStartTime:Required - Start time of the webinar.
  • webinarEndTime  :Required - End time of the webinar.
  • timeZone        :Optional - The time zone where the webinar is taking place (must be a valid time zone ID).
Sample request

Following is a sample REST/JSON request that can be handled by the createWebinar operation.

Sample Request for createWebinar
{
    "apiUrl":"https://api.citrixonline.com",
    "accessToken":"UEGGrwswKRwB07lTOr0EoppdaxKo",
    "organizerKey":"3697511743350317068",
    "clientId":"IJfcaqp3xC034WXD1GGlstejnJS41huo",
    "refreshToken":"MDAKxJTJ3cAdhuzavhtOFNAmV5N0m7gm",
    "subject":"Test Webinar",
    "description":"For testing",
    "webinarStartTime":"2016-06-09T16:45:58Z",
    "webinarEndTime":"2016-06-09T17:45:58Z",
    "timeZone":"Asia/Colombo"
}

Canceling a specific webinar.

The cancelWebinar operation cancels a specific webinar. 

cancelWebinar
<gotowebinar.cancelWebinar>
    <webinarKey>{$ctx:webinarKey}</webinarKey>
    <sendCancellationEmails>{$ctx:sendCancellationEmails}</sendCancellationEmails>
</gotowebinar.cancelWebinar>
Properties
  • webinarKey            : Required - The unique numeric key to retrieve the individual webinar details.
  • sendCancellationEmails:Optional - Boolean value, which indicates whether cancellation notice emails should be sent.
Sample request

Following is a sample REST/JSON request that can be handled by the cancelWebinar operation.

Sample Request for cancelWebinar
{
    "apiUrl":"https://api.citrixonline.com",
    "accessToken":"UEGGrwswKRwB07lTOr0EoppdaxKo",
    "organizerKey":"3697511743350317068",
    "clientId":"IJfcaqp3xC034WXD1GGlstejnJS41huo",
    "refreshToken":"MDAKxJTJ3cAdhuzavhtOFNAmV5N0m7gm",
    "webinarKey":"8274965567047301900",
    "sendCancellationEmails":"true"
}

Updating a webinar

The updateWebinar operation updates a webinar. 

updateWebinar
<gotowebinar.updateWebinar>
    <webinarKey>{$ctx:webinarKey}</webinarKey>
    <notifyParticipants>{$ctx:notifyParticipants}</notifyParticipants>
    <subject>{$ctx:subject}</subject>
    <description>{$ctx:description}</description>
    <webinarStartTime>{$ctx:webinarStartTime}</webinarStartTime>
    <webinarEndTime>{$ctx:webinarEndTime}</webinarEndTime>
    <timeZone>{$ctx:timeZone}</timeZone>
    <locale>{$ctx:locale}</locale>
</gotowebinar.updateWebinar>
Properties
  • webinarKey        : Required - The unique numeric key to retrieve the individual webinar details.
  • subject           : Optional - The name or subject of the webinar (128 characters maximum).
  • description       : Optional - A short description of the webinar (2048 characters maximum).
  • webinarStartTime  :Optional - Start time of the webinar.
  • webinarEndTime    :Optional - End time of the webinar.
  • timeZone          :Optional - The time zone where the webinar is taking place (must be a valid time zone ID).
  • locale            :Optional - The webinar language (E.g: 'en_US', 'de_DE', 'es_ES', 'fr_FR', 'it_IT', 'zh_CN').
  • notifyParticipants:Optional - Boolean value, which defines whether to send notifications to participants.
Sample request

Following is a sample REST/JSON request that can be handled by the updateWebinar operation.

Sample Request for updateWebinar
{
    "apiUrl":"https://api.citrixonline.com",
    "accessToken":"UEGGrwswKRwB07lTOr0EoppdaxKo",
    "organizerKey":"3697511743350317068",
    "clientId":"IJfcaqp3xC034WXD1GGlstejnJS41huo",
    "refreshToken":"MDAKxJTJ3cAdhuzavhtOFNAmV5N0m7gm",
    "webinarKey":"8274965567047301900",
    "subject":"Test Webinar",
    "description":"For testing",
    "webinarStartTime":"2016-06-09T16:45:58Z",
    "webinarEndTime":"2016-06-09T17:45:58Z",
    "timeZone":"Asia/Colombo",
    "locale":"en_US",
    "notifyParticipants":"true"
}

Retrieving all attendees of a webinar

The getAttendeesForAllWebinarSessions operation retrieves all attendees for all sessions of the specified webinar. 

getAttendeesForAllWebinarSessions
<gotowebinar.getAttendeesForAllWebinarSessions>
    <webinarKey>{$ctx:webinarKey}</webinarKey>
</gotowebinar.getAttendeesForAllWebinarSessions>
Properties
  • webinarKey: Required - The unique numeric key to retrieve the individual webinar details.
Sample request

Following is a sample REST/JSON request that can be handled by the getAttendeesForAllWebinarSessions operation.

Sample Request for getAttendeesForAllWebinarSessions
{
    "apiUrl":"https://api.citrixonline.com",
    "accessToken":"UEGGrwswKRwB07lTOr0EoppdaxKo",
    "organizerKey":"3697511743350317068",
    "clientId":"IJfcaqp3xC034WXD1GGlstejnJS41huo",
    "refreshToken":"MDAKxJTJ3cAdhuzavhtOFNAmV5N0m7gm",
    "webinarKey":"8274965567047301900"
}

Retrieving the audio/conferencing information

The getAudioInformation operation retrieves the audio/conferencing information for a specific webinar. 

getAudioInformation
<gotowebinar.getAudioInformation>
    <webinarKey>{$ctx:webinarKey}</webinarKey>
</gotowebinar.getAudioInformation>
Properties
  • webinarKey: Required - The unique numeric key to retrieve the individual webinar details.
Sample request

Following is a sample REST/JSON request that can be handled by the getAudioInformation operation.

Sample Request for getAudioInformation
{
    "apiUrl":"https://api.citrixonline.com",
    "accessToken":"UEGGrwswKRwB07lTOr0EoppdaxKo",
    "organizerKey":"3697511743350317068",
    "clientId":"IJfcaqp3xC034WXD1GGlstejnJS41huo",
    "refreshToken":"MDAKxJTJ3cAdhuzavhtOFNAmV5N0m7gm",
    "webinarKey":"8274965567047301900"
}

Updating the audio/conferencing settings

The updateAudioInformation operation updates the audio/conferencing settings for a specific webinar. 

updateAudioInformation
<gotowebinar.updateAudioInformation>
    <webinarKey>{$ctx:webinarKey}</webinarKey>
    <notifyParticipants>{$ctx:notifyParticipants}</notifyParticipants>
    <type>{$ctx:type}</type>
    <tollFreeCountries>{$ctx:tollFreeCountries}</tollFreeCountries>
    <tollCountries>{$ctx:tollCountries}</tollCountries>
    <attendee>{$ctx:attendee}</attendee>
    <organizer>{$ctx:organizer}</organizer>
    <panelist>{$ctx:panelist}</panelist>
</gotowebinar.updateAudioInformation>
Properties
  • webinarKey        : Required - The unique numeric key to retrieve the individual webinar details.
  • type              : Optional - Indicates how to connect to the webinar's audio conference = ['PSTN', 'VOIP', 'Hybrid', 'Private'].
  • tollFreeCountries :Optional - Two-letter country code, in which countries toll free PSTN numbers are available.
  • tollCountries     :Optional - Two-letter country code, in which countries toll PSTN numbers are available.
  • attendee          :Optional - Attendee phone number for own conference call system.
  • organizer         :Optional - Organizer phone number for own conference call system.
  • panelist          :Optional - Panelist phone number for own conference call system.
  • notifyParticipants: Optional - Boolean value, which defines whether to send notifications to participants.
Sample request

Following is a sample REST/JSON request that can be handled by the updateAudioInformation operation.

Sample Request for updateAudioInformation
{
    "apiUrl":"https://api.citrixonline.com",
    "accessToken":"UEGGrwswKRwB07lTOr0EoppdaxKo",
    "organizerKey":"3697511743350317068",
    "clientId":"IJfcaqp3xC034WXD1GGlstejnJS41huo",
    "refreshToken":"MDAKxJTJ3cAdhuzavhtOFNAmV5N0m7gm",
    "webinarKey":"8274965567047301900",
    "type":"Hybrid",
    "tollFreeCountries":["AE", "AR", "AT", "AU", "BE", "BG", "BH", "BR", "BY", "CA"],
    "tollCountries":["AT", "AU", "BE", "CA"],
    "attendee":"973-108-502",
    "organizer":"228-421-345",
    "panelist":"219-935-710",
    "notifyParticipants":"true"
}

Retrieving the webinar meeting times

The getWebinarMeetingTimes operation retrieves the meeting times for a webinar. 

getWebinarMeetingTimes
<gotowebinar.getWebinarMeetingTimes>
    <webinarKey>{$ctx:webinarKey}</webinarKey>
</gotowebinar.getWebinarMeetingTimes>
Properties
  • webinarKey: Required - The unique numeric key to retrieve the individual webinar details.
Sample request

Following is a sample REST/JSON request that can be handled by the getWebinarMeetingTimes operation.

Sample Request for getWebinarMeetingTimes
{
    "apiUrl":"https://api.citrixonline.com",
    "accessToken":"UEGGrwswKRwB07lTOr0EoppdaxKo",
    "organizerKey":"3697511743350317068",
    "clientId":"IJfcaqp3xC034WXD1GGlstejnJS41huo",
    "refreshToken":"MDAKxJTJ3cAdhuzavhtOFNAmV5N0m7gm",
    "webinarKey":"8274965567047301900"
}

Retrieving all the panelists of a webinar.

The getWebinarPanelists operation retrieves all the panelists of a specific webinar. 

getWebinarPanelists
<gotowebinar.getWebinarPanelists>
    <webinarKey>{$ctx:webinarKey}</webinarKey>
</gotowebinar.getWebinarPanelists>
Properties
  • webinarKey: Required - The unique numeric key to retrieve the individual webinar details.
Sample request

Following is a sample REST/JSON request that can be handled by the getWebinarPanelists operation.

Sample Request for getWebinarPanelists
{
    "apiUrl":"https://api.citrixonline.com",
    "accessToken":"UEGGrwswKRwB07lTOr0EoppdaxKo",
    "organizerKey":"3697511743350317068",
    "clientId":"IJfcaqp3xC034WXD1GGlstejnJS41huo",
    "refreshToken":"MDAKxJTJ3cAdhuzavhtOFNAmV5N0m7gm",
    "webinarKey":"8274965567047301900"
}

Creating panelist.

The createPanelists operation creates panelist for a specified webinar. 

createPanelists
<gotowebinar.createPanelists>
    <webinarKey>{$ctx:webinarKey}</webinarKey>
    <email>{$ctx:email}</email>
    <name>{$ctx:name}</name>
</gotowebinar.createPanelists>
Properties
  • webinarKey: Required - The unique numeric key to retrieve the individual webinar details.
  • email     : Required - Email address of the panelist.
  • name      : Required - Name of the panelist.
Sample request

Following is a sample REST/JSON request that can be handled by the createPanelists operation.

Sample Request for createPanelists
{
    "apiUrl":"https://api.citrixonline.com",
    "accessToken":"UEGGrwswKRwB07lTOr0EoppdaxKo",
    "organizerKey":"3697511743350317068",
    "clientId":"IJfcaqp3xC034WXD1GGlstejnJS41huo",
    "refreshToken":"MDAKxJTJ3cAdhuzavhtOFNAmV5N0m7gm",
    "webinarKey":"8274965567047301900",
    "name":"Nick",
    "email":"nick@yahoo.com"
}

Retrieving performance of all sessions of a specific webinar.

The getPerformanceForAllWebinarSessions operation retrieves performance details for all sessions of a specific webinar. 

getPerformanceForAllWebinarSessions
<gotowebinar.getPerformanceForAllWebinarSessions>
    <webinarKey>{$ctx:webinarKey}</webinarKey>
</gotowebinar.getPerformanceForAllWebinarSessions>
Properties
  • webinarKey: Required - The unique numeric key to retrieve the individual webinar details.
Sample request

Following is a sample REST/JSON request that can be handled by the getPerformanceForAllWebinarSessions operation.

Sample Request for getPerformanceForAllWebinarSessions
{
    "apiUrl":"https://api.citrixonline.com",
    "accessToken":"UEGGrwswKRwB07lTOr0EoppdaxKo",
    "organizerKey":"3697511743350317068",
    "clientId":"IJfcaqp3xC034WXD1GGlstejnJS41huo",
    "refreshToken":"MDAKxJTJ3cAdhuzavhtOFNAmV5N0m7gm",
    "webinarKey":"8274965567047301900"
}

Sample configuration

Following is a sample proxy service that illustrates how to connect to GoToWebinar with the init operation and use the getWebinarById  operation. The sample request for this proxy can be found in the  getWebinarById sample request. You can use this sample as a template for using other operations in this category.

Sample Proxy
<proxy xmlns="http://ws.apache.org/ns/synapse"
       name="gotowebinar_getWebinarById"
       transports="https,http"
       statistics="disable"
       trace="disable"
       startOnLoad="true">
   <target>
      <inSequence>
        <property name="accessToken" expression="json-eval($.accessToken)"/>
        <property name="organizerKey" expression="json-eval($.organizerKey)"/>
        <property name="apiUrl" expression="json-eval($.apiUrl)"/>
        <property name="refreshToken" expression="json-eval($.refreshToken)"/>
        <property name="clientId" expression="json-eval($.clientId)"/>
        <property name="registryPath" expression="json-eval($.registryPath)"/>
        <property name="intervalTime" expression="json-eval($.intervalTime)"/>
        <property name="webinarKey" expression="json-eval($.webinarKey)"/>        
         <gotowebinar.init>
            <accessToken>{$ctx:accessToken}</accessToken>
            <organizerKey>{$ctx:organizerKey}</organizerKey>
            <apiUrl>{$ctx:apiUrl}</apiUrl>
            <refreshToken>{$ctx:refreshToken}</refreshToken>
            <clientId>{$ctx:clientId}</clientId>
            <registryPath>{$ctx:registryPath}</registryPath>
            <intervalTime>{$ctx:intervalTime}</intervalTime>
         </gotowebinar.init>
         <gotowebinar.getWebinarById>
            <webinarKey>{$ctx:webinarKey}</webinarKey>
         </gotowebinar.getWebinarById>
         <respond/>
      </inSequence>
      <outSequence>
         <send/>
      </outSequence>
   </target>
   <description/>
</proxy>