openapi: 3.0.0 info: title: GoTo Webinar 2.0 REST API description: | We recommend you use the v2 of this API. If you are still using v1, you can access [v1 documentation](/GoToWebinarV1). ### Authentication Scopes `collab:` must be used when a token is requested from the Authentication API. # GoTo Webinar API Overview Use the GoTo Webinar API to: - Schedule webinars of one or more sessions - Tailor your webinars with panelists, polls, questions and surveys - Accept registrations - Manage registrants and, once the webinar starts, attendees - View data about historical and future webinars, registrants and attendees Refer to GoTo Webinar product documentation to review the webinar types and product functionality. Review call bodies and example call bodies in the API calls for alternate usage. Note: Both userKey and organizerKey used in the APIs contain the same value ## Getting Started 1. [Register](/guides/Get%20Started/01_HOW_developerAccount) for a developer account. 2. Create an [OAuth client](/guides/Get%20Started/02_HOW_createClient) and include the product(s) you plan to develop with. 3. Obtain a product account as needed. Trial versions will work, but last only 30 days. We recommend a full-featured account, preferably with an Admin role. 4. Request an [Access Token](/guides/Authentication/03_HOW_accessToken) to make API calls. 5. Make your first API calls. You can use cURL, Postman, or other API interfaces to make calls. version: 2.0.0 tags: - name: Webinars description: Operations available for webinars of a given organizer. - name: Co-organizers description: Operations available for co-organizers of a given webinar. - name: Panelists description: Operations available for panelists of a given webinar. - name: Registrants description: Operations available for registrants of a given webinar. - name: Sessions description: Operations available for sessions of a given webinar. - name: Attendees description: Operations available for attendees of a given webinar session. - name: RecordingAssets description: Operations available for assets of a given organizer. - name: Webhooks description: APIs available for management of a webhooks. security: - OAuth2: [] paths: /accounts/{accountKey}/webinars: get: tags: - Webinars operationId: getAllAccountWebinars summary: Get all webinars for an account description: | Retrieves the list of webinars for an account within a given date range. `Page` and `size` parameters are optional. Default `page` is 0 and default `size` is 20. parameters: - $ref: '#/components/parameters/accountKey' - $ref: '#/components/parameters/requiredFromTime' - $ref: '#/components/parameters/requiredToTime' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/size' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ReportingWebinarsResponse' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/accounts/%7BaccountKey%7D/webinars', params: { fromTime: '2020-03-13T10:00:00Z', toTime: '2020-03-13T22:00:00Z', page: 'SOME_INTEGER_VALUE', size: 'SOME_INTEGER_VALUE' }, headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url 'https://api.getgo.com/G2W/rest/v2/accounts/%7BaccountKey%7D/webinars?fromTime=2020-03-13T10%3A00%3A00Z&toTime=2020-03-13T22%3A00%3A00Z&page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/accounts/%7BaccountKey%7D/webinars?fromTime=2020-03-13T10%3A00%3A00Z&toTime=2020-03-13T22%3A00%3A00Z&page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/accounts/%7BaccountKey%7D/webinars'); $request->setRequestMethod('GET'); $request->setQuery(new http\QueryString([ 'fromTime' => '2020-03-13T10:00:00Z', 'toTime' => '2020-03-13T22:00:00Z', 'page' => 'SOME_INTEGER_VALUE', 'size' => 'SOME_INTEGER_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/accounts/%7BaccountKey%7D/webinars?fromTime=2020-03-13T10%3A00%3A00Z&toTime=2020-03-13T22%3A00%3A00Z&page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/sessions: get: tags: - Sessions operationId: getOrganizerSessions summary: Get organizer sessions description: Retrieve all completed sessions of all the webinars of a given organizer. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/requiredFromTime' - $ref: '#/components/parameters/requiredToTime' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/size' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ReportingSessionsResponse' '400': description: Bad Request '403': description: Forbidden x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/sessions', params: { fromTime: '2020-03-13T10:00:00Z', toTime: '2020-03-13T22:00:00Z', page: 'SOME_INTEGER_VALUE', size: 'SOME_INTEGER_VALUE' }, headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/sessions?fromTime=2020-03-13T10%3A00%3A00Z&toTime=2020-03-13T22%3A00%3A00Z&page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/sessions?fromTime=2020-03-13T10%3A00%3A00Z&toTime=2020-03-13T22%3A00%3A00Z&page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/sessions'); $request->setRequestMethod('GET'); $request->setQuery(new http\QueryString([ 'fromTime' => '2020-03-13T10:00:00Z', 'toTime' => '2020-03-13T22:00:00Z', 'page' => 'SOME_INTEGER_VALUE', 'size' => 'SOME_INTEGER_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/sessions?fromTime=2020-03-13T10%3A00%3A00Z&toTime=2020-03-13T22%3A00%3A00Z&page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars: get: tags: - Webinars operationId: getWebinars summary: Get Webinars description: Returns upcoming and past webinars for the currently authenticated organizer that are scheduled within the specified date/time range. `Page` and `size` parameters are optional. Default `page` is 0 and default `size` is 20. Maximum `size` is 200. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/requiredFromTime' - $ref: '#/components/parameters/requiredToTime' - $ref: '#/components/parameters/page' - name: size in: query required: false description: The size of the page. schema: type: integer format: int64 maximum: 200 responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ReportingWebinarsResponse' '400': description: Bad Request '403': description: Forbidden x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars', params: { fromTime: '2020-03-13T10:00:00Z', toTime: '2020-03-13T22:00:00Z', page: 'SOME_INTEGER_VALUE', size: 'SOME_INTEGER_VALUE' }, headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars?fromTime=2020-03-13T10%3A00%3A00Z&toTime=2020-03-13T22%3A00%3A00Z&page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars?fromTime=2020-03-13T10%3A00%3A00Z&toTime=2020-03-13T22%3A00%3A00Z&page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars'); $request->setRequestMethod('GET'); $request->setQuery(new http\QueryString([ 'fromTime' => '2020-03-13T10:00:00Z', 'toTime' => '2020-03-13T22:00:00Z', 'page' => 'SOME_INTEGER_VALUE', 'size' => 'SOME_INTEGER_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars?fromTime=2020-03-13T10%3A00%3A00Z&toTime=2020-03-13T22%3A00%3A00Z&page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body post: tags: - Webinars operationId: createWebinar summary: Create webinar description: | Creates a single session webinar, a sequence of webinars or a series of webinars depending on the type field in the body: * `"type": "single_session"` creates a single webinar session * `"type": "sequence"` creates a webinar with multiple meeting times where attendees are expected to be the same for all sessions * `"type": "series"` creates a webinar with multiple meetings times where attendees choose only one to attend The default, if no type is declared, is `"single_session"`. A sequence webinar requires a `"recurrenceStart"` object consisting of a `"startTime"` and `"endTime"` key for the first webinar of the sequence, a `"recurrencePattern"` of "daily", "weekly", "monthly", and a `"recurrenceEnd"` which is the last date of the sequence (for example, 2016-12-01). A series webinar requires a `"times"` array with a discrete `"startTime"` and `"endTime"` for each webinar in the series. The call requires a webinar subject and description. The "isPasswordProtected" sets whether the webinar requires a password for attendees to join. If set to True, the organizer must go to Registration Settings at My Webinars (https://global.gotowebinar.com/webinars.tmpl) and add the password to the webinar, and send the password to the registrants. The response provides a numeric webinarKey in string format for the new webinar. Once a webinar has been created with this method,you can accept registrations. parameters: - $ref: '#/components/parameters/organizerKey' requestBody: content: application/json: schema: $ref: '#/components/schemas/WebinarReqCreate' description: The webinar details required: true responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/CreatedWebinar' '400': description: Bad Request '403': description: Forbidden x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'POST', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars', headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: { subject: 'string', description: 'string', times: [{startTime: '2019-08-24T14:15:22Z', endTime: '2019-08-24T14:15:22Z'}], timeZone: 'string', type: 'single_session', locale: 'en_US', isPasswordProtected: false, recordingAssetKey: 'string', isOndemand: false, isBreakout: false, experienceType: 'CLASSIC', emailSettings: { confirmationEmail: {enabled: true}, reminderEmail: {enabled: true}, absenteeFollowUpEmail: {enabled: true}, attendeeFollowUpEmail: {enabled: true, includeCertificate: true} } } }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request POST \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '{"subject":"string","description":"string","times":[{"startTime":"2019-08-24T14:15:22Z","endTime":"2019-08-24T14:15:22Z"}],"timeZone":"string","type":"single_session","locale":"en_US","isPasswordProtected":false,"recordingAssetKey":"string","isOndemand":false,"isBreakout":false,"experienceType":"CLASSIC","emailSettings":{"confirmationEmail":{"enabled":true},"reminderEmail":{"enabled":true},"absenteeFollowUpEmail":{"enabled":true},"attendeeFollowUpEmail":{"enabled":true,"includeCertificate":true}}}' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "{\"subject\":\"string\",\"description\":\"string\",\"times\":[{\"startTime\":\"2019-08-24T14:15:22Z\",\"endTime\":\"2019-08-24T14:15:22Z\"}],\"timeZone\":\"string\",\"type\":\"single_session\",\"locale\":\"en_US\",\"isPasswordProtected\":false,\"recordingAssetKey\":\"string\",\"isOndemand\":false,\"isBreakout\":false,\"experienceType\":\"CLASSIC\",\"emailSettings\":{\"confirmationEmail\":{\"enabled\":true},\"reminderEmail\":{\"enabled\":true},\"absenteeFollowUpEmail\":{\"enabled\":true},\"attendeeFollowUpEmail\":{\"enabled\":true,\"includeCertificate\":true}}}" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("POST", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('{"subject":"string","description":"string","times":[{"startTime":"2019-08-24T14:15:22Z","endTime":"2019-08-24T14:15:22Z"}],"timeZone":"string","type":"single_session","locale":"en_US","isPasswordProtected":false,"recordingAssetKey":"string","isOndemand":false,"isBreakout":false,"experienceType":"CLASSIC","emailSettings":{"confirmationEmail":{"enabled":true},"reminderEmail":{"enabled":true},"absenteeFollowUpEmail":{"enabled":true},"attendeeFollowUpEmail":{"enabled":true,"includeCertificate":true}}}'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars'); $request->setRequestMethod('POST'); $request->setBody($body); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "{\"subject\":\"string\",\"description\":\"string\",\"times\":[{\"startTime\":\"2019-08-24T14:15:22Z\",\"endTime\":\"2019-08-24T14:15:22Z\"}],\"timeZone\":\"string\",\"type\":\"single_session\",\"locale\":\"en_US\",\"isPasswordProtected\":false,\"recordingAssetKey\":\"string\",\"isOndemand\":false,\"isBreakout\":false,\"experienceType\":\"CLASSIC\",\"emailSettings\":{\"confirmationEmail\":{\"enabled\":true},\"reminderEmail\":{\"enabled\":true},\"absenteeFollowUpEmail\":{\"enabled\":true},\"attendeeFollowUpEmail\":{\"enabled\":true,\"includeCertificate\":true}}}" response = http.request(request) puts response.read_body /organizers/{organizerKey}/insessionWebinars: get: tags: - Webinars operationId: getInSessionWebinars summary: Get All Insession Webinars description: | Returns all insession webinars for the currently authenticated organizer that are scheduled within the specified date/time range. All inession webinars are returned in case no date/time range is provided. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/optionalFromTime' - $ref: '#/components/parameters/optionalToTime' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/BrokerWebinar' '400': description: Bad Request '403': description: Forbidden x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/insessionWebinars', params: {fromTime: '2020-03-13T10:00:00Z', toTime: '2020-03-13T22:00:00Z'}, headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/insessionWebinars?fromTime=2020-03-13T10%3A00%3A00Z&toTime=2020-03-13T22%3A00%3A00Z' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/insessionWebinars?fromTime=2020-03-13T10%3A00%3A00Z&toTime=2020-03-13T22%3A00%3A00Z", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/insessionWebinars'); $request->setRequestMethod('GET'); $request->setQuery(new http\QueryString([ 'fromTime' => '2020-03-13T10:00:00Z', 'toTime' => '2020-03-13T22:00:00Z' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/insessionWebinars?fromTime=2020-03-13T10%3A00%3A00Z&toTime=2020-03-13T22%3A00%3A00Z") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}: get: tags: - Webinars operationId: getWebinar summary: Get webinar description: | Retrieve information on a specific webinar. If the type of the webinar is 'sequence', a sequence of future times will be provided. Webinars of type 'series' are treated the same as normal webinars - each session in the webinar series has a different webinarKey. If an organizer cancels a webinar, then a request to get that webinar would return a '404 Not Found' error. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/WebinarByKey' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body put: tags: - Webinars operationId: updateWebinar summary: Update webinar description: | Updates a webinar. The call requires at least one of the parameters in the request body. The request completely replaces the existing session, series, or sequence and so must include the full definition of each as for the Create call. Set notifyParticipants=true to send update emails to registrants. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - name: notifyParticipants in: query description: Defines whether to send notifications to participants required: false schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/WebinarReqUpdate' description: The webinar details required: true responses: '202': description: Accepted '400': description: Bad Request (times not valid, webinar in progress, webinar ended, etc.) '403': description: Forbidden x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'PUT', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D', params: {notifyParticipants: 'SOME_BOOLEAN_VALUE'}, headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: { subject: 'string', description: 'string', times: [{startTime: '2019-08-24T14:15:22Z', endTime: '2019-08-24T14:15:22Z'}], timeZone: 'string', locale: 'en_US', emailSettings: { confirmationEmail: {enabled: true}, reminderEmail: {enabled: true}, absenteeFollowUpEmail: {enabled: true}, attendeeFollowUpEmail: {enabled: true, includeCertificate: true} } } }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request PUT \ --url 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D?notifyParticipants=SOME_BOOLEAN_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '{"subject":"string","description":"string","times":[{"startTime":"2019-08-24T14:15:22Z","endTime":"2019-08-24T14:15:22Z"}],"timeZone":"string","locale":"en_US","emailSettings":{"confirmationEmail":{"enabled":true},"reminderEmail":{"enabled":true},"absenteeFollowUpEmail":{"enabled":true},"attendeeFollowUpEmail":{"enabled":true,"includeCertificate":true}}}' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "{\"subject\":\"string\",\"description\":\"string\",\"times\":[{\"startTime\":\"2019-08-24T14:15:22Z\",\"endTime\":\"2019-08-24T14:15:22Z\"}],\"timeZone\":\"string\",\"locale\":\"en_US\",\"emailSettings\":{\"confirmationEmail\":{\"enabled\":true},\"reminderEmail\":{\"enabled\":true},\"absenteeFollowUpEmail\":{\"enabled\":true},\"attendeeFollowUpEmail\":{\"enabled\":true,\"includeCertificate\":true}}}" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("PUT", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D?notifyParticipants=SOME_BOOLEAN_VALUE", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('{"subject":"string","description":"string","times":[{"startTime":"2019-08-24T14:15:22Z","endTime":"2019-08-24T14:15:22Z"}],"timeZone":"string","locale":"en_US","emailSettings":{"confirmationEmail":{"enabled":true},"reminderEmail":{"enabled":true},"absenteeFollowUpEmail":{"enabled":true},"attendeeFollowUpEmail":{"enabled":true,"includeCertificate":true}}}'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D'); $request->setRequestMethod('PUT'); $request->setBody($body); $request->setQuery(new http\QueryString([ 'notifyParticipants' => 'SOME_BOOLEAN_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D?notifyParticipants=SOME_BOOLEAN_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Put.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "{\"subject\":\"string\",\"description\":\"string\",\"times\":[{\"startTime\":\"2019-08-24T14:15:22Z\",\"endTime\":\"2019-08-24T14:15:22Z\"}],\"timeZone\":\"string\",\"locale\":\"en_US\",\"emailSettings\":{\"confirmationEmail\":{\"enabled\":true},\"reminderEmail\":{\"enabled\":true},\"absenteeFollowUpEmail\":{\"enabled\":true},\"attendeeFollowUpEmail\":{\"enabled\":true,\"includeCertificate\":true}}}" response = http.request(request) puts response.read_body delete: tags: - Webinars operationId: cancelWebinar summary: Cancel webinar description: | Cancels a specific webinar. If the webinar is a series or sequence, this call deletes all scheduled sessions, set deleteAll=false in the request to delete specific session of a series webinar. To send cancellation emails to registrants set sendCancellationEmails=true in the request. When the cancellation emails are sent, the default generated message is used in the cancellation email body. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - name: sendCancellationEmails in: query description: Indicates whether cancellation notice emails should be sent. The default value is false required: false schema: type: boolean - name: deleteAll in: query description: Specifies whether all scheduled sessions should be deleted if the webinar is part of a series. The default value is true. required: false schema: type: boolean responses: '204': description: No Content '403': description: Forbidden '404': description: Not Found '409': description: Conflict (Webinar is in session) x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'DELETE', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D', params: {sendCancellationEmails: 'SOME_BOOLEAN_VALUE', deleteAll: 'SOME_BOOLEAN_VALUE'}, headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request DELETE \ --url 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D?sendCancellationEmails=SOME_BOOLEAN_VALUE&deleteAll=SOME_BOOLEAN_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("DELETE", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D?sendCancellationEmails=SOME_BOOLEAN_VALUE&deleteAll=SOME_BOOLEAN_VALUE", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D'); $request->setRequestMethod('DELETE'); $request->setQuery(new http\QueryString([ 'sendCancellationEmails' => 'SOME_BOOLEAN_VALUE', 'deleteAll' => 'SOME_BOOLEAN_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D?sendCancellationEmails=SOME_BOOLEAN_VALUE&deleteAll=SOME_BOOLEAN_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Delete.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/attendees: get: tags: - Webinars operationId: getAttendeesForAllWebinarSessions summary: Get attendees for all webinar sessions description: Returns all attendees for all sessions of the specified webinar. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/size' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ReportingAttendeeResponse' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/attendees', params: {page: 'SOME_INTEGER_VALUE', size: 'SOME_INTEGER_VALUE'}, headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/attendees?page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/attendees?page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/attendees'); $request->setRequestMethod('GET'); $request->setQuery(new http\QueryString([ 'page' => 'SOME_INTEGER_VALUE', 'size' => 'SOME_INTEGER_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/attendees?page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/coorganizers: get: tags: - Co-organizers operationId: getCoorganizers summary: Get co-organizers description: | Returns the co-organizers for the specified webinar. The original organizer who created the webinar is filtered out of the list. If the webinar has no co-organizers, an empty array is returned. Co-organizers that do not have a GoTo Webinar account are returned as external co-organizers. For those organizers no surname is returned. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/Coorganizer' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body post: tags: - Co-organizers operationId: createCoorganizers summary: Create co-organizers description: | Creates co-organizers for the specified webinar. For co-organizers that have a GoTo Webinar account you have to set the parameter 'external' to 'false'. In this case you have to pass the parameter 'organizerKey' only. For co-organizers that have no GoTo Webinar account you have to set the parameter 'external' to 'true'. In this case you have to pass the parameters 'givenName' and 'email'. Since there is no parameter for 'surname' you should pass first and last name to the parameter 'givenName'. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/CoorganizerReqCreate' description: The co-organizer details required: true responses: '201': description: Created content: application/json: schema: type: array items: $ref: '#/components/schemas/Coorganizer' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'POST', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers', headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: [{external: true, organizerKey: 'string', givenName: 'string', email: 'string'}] }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request POST \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '[{"external":true,"organizerKey":"string","givenName":"string","email":"string"}]' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "[{\"external\":true,\"organizerKey\":\"string\",\"givenName\":\"string\",\"email\":\"string\"}]" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("POST", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('[{"external":true,"organizerKey":"string","givenName":"string","email":"string"}]'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers'); $request->setRequestMethod('POST'); $request->setBody($body); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "[{\"external\":true,\"organizerKey\":\"string\",\"givenName\":\"string\",\"email\":\"string\"}]" response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/coorganizers/{coorganizerKey}: delete: tags: - Co-organizers operationId: deleteCoorganizer summary: Delete co-organizer description: | Deletes an internal co-organizer specified by the coorganizerKey (memberKey). parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/coorganizerKey' - name: external in: query description: | By default only internal co-organizers (with a GoTo Webinar account) can be deleted. If you want to use this call for external co-organizers you have to set this parameter to 'true'. required: false schema: type: boolean responses: '204': description: No Content (Co-organizer was deleted) '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'DELETE', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D', params: {external: 'SOME_BOOLEAN_VALUE'}, headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request DELETE \ --url 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D?external=SOME_BOOLEAN_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("DELETE", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D?external=SOME_BOOLEAN_VALUE", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D'); $request->setRequestMethod('DELETE'); $request->setQuery(new http\QueryString([ 'external' => 'SOME_BOOLEAN_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D?external=SOME_BOOLEAN_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Delete.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/coorganizers/{coorganizerKey}/resendInvitation: post: tags: - Co-organizers operationId: resendCoorganizerInvitation summary: Resend invitation description: Resends an invitation email to the specified co-organizer parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/coorganizerKey' - name: external in: query description: | By default only internal co-organizers (with a GoTo Webinar account) will retrieve the resent invitation email. If you want to use this call for external co-organizers you have to set this parameter to 'true'. required: false schema: type: boolean responses: '204': description: No Content (Invitation email was sent) '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'POST', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D/resendInvitation', params: {external: 'SOME_BOOLEAN_VALUE'}, headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request POST \ --url 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D/resendInvitation?external=SOME_BOOLEAN_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("POST", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D/resendInvitation?external=SOME_BOOLEAN_VALUE", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D/resendInvitation'); $request->setRequestMethod('POST'); $request->setQuery(new http\QueryString([ 'external' => 'SOME_BOOLEAN_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/coorganizers/%7BcoorganizerKey%7D/resendInvitation?external=SOME_BOOLEAN_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/meetingtimes: get: tags: - Webinars operationId: getWebinarMeetingTimes summary: Get webinar meeting times description: Retrieves the meeting times for a webinar. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/DateTimeRange' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/meetingtimes', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/meetingtimes \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/meetingtimes", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/meetingtimes'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/meetingtimes") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/panelists: get: tags: - Panelists operationId: getPanelists summary: Get webinar panelists description: Retrieves all the panelists for a specific webinar. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/Panelist' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body post: tags: - Panelists operationId: createPanelists summary: Create Panelists description: Create panelists for a specified webinar parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/PanelistReqCreate' description: Array of panelists required: true responses: '201': description: Created content: application/json: schema: type: array items: $ref: '#/components/schemas/CreatedPanelist' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'POST', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists', headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: [{email: 'string', name: 'string'}] }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request POST \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '[{"email":"string","name":"string"}]' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "[{\"email\":\"string\",\"name\":\"string\"}]" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("POST", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('[{"email":"string","name":"string"}]'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists'); $request->setRequestMethod('POST'); $request->setBody($body); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "[{\"email\":\"string\",\"name\":\"string\"}]" response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/audio: get: tags: - Webinars operationId: getAudioInformation summary: Get audio information description: Retrieves the audio/conferencing information for a specific webinar. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/Audio' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/audio', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/audio \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/audio", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/audio'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/audio") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body post: tags: - Webinars operationId: updateAudioInformation summary: Update audio information description: Updates the audio/conferencing settings for a specific webinar parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - name: notifyParticipants in: query description: Defines whether to send notifications to participants required: false schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/AudioUpdate' description: The audio/conferencing settings required: true responses: '204': description: No Content '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'POST', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/audio', params: {notifyParticipants: 'SOME_BOOLEAN_VALUE'}, headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: { type: 'PSTN', pstnInfo: {tollFreeCountries: ['AE'], tollCountries: ['AT']}, privateInfo: {attendee: 'string', organizer: 'string', panelist: 'string'} } }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request POST \ --url 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/audio?notifyParticipants=SOME_BOOLEAN_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '{"type":"PSTN","pstnInfo":{"tollFreeCountries":["AE"],"tollCountries":["AT"]},"privateInfo":{"attendee":"string","organizer":"string","panelist":"string"}}' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "{\"type\":\"PSTN\",\"pstnInfo\":{\"tollFreeCountries\":[\"AE\"],\"tollCountries\":[\"AT\"]},\"privateInfo\":{\"attendee\":\"string\",\"organizer\":\"string\",\"panelist\":\"string\"}}" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("POST", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/audio?notifyParticipants=SOME_BOOLEAN_VALUE", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('{"type":"PSTN","pstnInfo":{"tollFreeCountries":["AE"],"tollCountries":["AT"]},"privateInfo":{"attendee":"string","organizer":"string","panelist":"string"}}'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/audio'); $request->setRequestMethod('POST'); $request->setBody($body); $request->setQuery(new http\QueryString([ 'notifyParticipants' => 'SOME_BOOLEAN_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/audio?notifyParticipants=SOME_BOOLEAN_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "{\"type\":\"PSTN\",\"pstnInfo\":{\"tollFreeCountries\":[\"AE\"],\"tollCountries\":[\"AT\"]},\"privateInfo\":{\"attendee\":\"string\",\"organizer\":\"string\",\"panelist\":\"string\"}}" response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/performance: get: tags: - Webinars operationId: getPerformanceForAllWebinarSessions summary: Get performance for all webinar sessions description: Gets performance details for all sessions of a specific webinar. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' responses: '200': description: OK content: application/json: schema: description: Describes performance details for webinars type: object additionalProperties: $ref: '#/components/schemas/SessionPerformance' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/performance', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/performance \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/performance", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/performance'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/performance") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /webinars/{webinarKey}/startUrl: get: tags: - Webinars operationId: getStartUrl summary: Webinar start url description: | Retrieves a URL that can be used to start a webinar. When this URL is opened in a web browser, the GoTo Webinar client will be downloaded, launched and the webinar will start after the organizer logs in with its credentials. parameters: - $ref: '#/components/parameters/webinarKey' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/WebinarStartUrlResponse' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/webinars/%7BwebinarKey%7D/startUrl', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/webinars/%7BwebinarKey%7D/startUrl \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/webinars/%7BwebinarKey%7D/startUrl", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/webinars/%7BwebinarKey%7D/startUrl'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/webinars/%7BwebinarKey%7D/startUrl") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /webinars/{webinarKey}/copy: put: tags: - Webinars operationId: copyWebinar summary: Copy a webinar description: | Copy webinar is created with new webinar key, based on source webinar key provided in URL. Only the organizer and co-organizer of given webinar can copy a webinar. ### Example Interaction with curl Below is the minimum request to make a request, default type is single_session. ``` curl --request PUT 'https://api.getgo.com/G2W/rest/v2/webinars/{webinarKey}/copy' \ --header 'Authorization: Bearer {ACCESS_TOKEN}' \ --header 'Content-Type: application/json' \ --data-raw '{ "subject": "My Webinar", "times": [ { "startTime": "2021-02-20T07:30:00.000Z", "endTime": "2021-02-20T07:40:00.000Z" } ] }' ``` Below is a request for when the parent webinar is SIMULIVE ``` curl --request PUT 'https://api.getgo.com/G2W/rest/v2/webinars/{webinarKey}/copy' \ --header 'Authorization: Bearer {ACCESS_TOKEN}' \ --header 'Content-Type: application/json' \ --data-raw '{ "subject": "My Webinar", "recordingAssetKey": "string", "isOndemand": true, "type": "single_session", "times": [ { "startTime": "2021-10-22T07:30:00.000Z", "endTime": "2021-10-22T08:30:00.000Z" } ] }' ``` Below request is when the parent webinar is CLASSIC or BROADCAST. ``` curl --request PUT 'https://api.getgo.com/G2W/rest/v2/webinars/{webinarKey}/copy' \ --header 'Authorization: Bearer {ACCESS_TOKEN}' \ --header 'Content-Type: application/json' \ --data-raw '{ "subject": "My Webinar", "times": [ { "startTime": "2021-02-20T07:30:00.000Z", "endTime": "2021-02-20T07:40:00.000Z" } ], "emailSettings": { "confirmationEmail": { "enabled": true }, "reminderEmail": { "enabled": true }, "absenteeFollowUpEmail": { "enabled": true }, "attendeeFollowUpEmail": { "enabled": true, "includeCertificate": true } } }' ``` parameters: - $ref: '#/components/parameters/sourceWebinarKey' requestBody: content: application/json: schema: $ref: '#/components/schemas/CopyWebinar' description: Provide a webinar details to be copied required: true responses: '201': description: Copied content: application/json: schema: $ref: '#/components/schemas/CopiedWebinar' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'PUT', url: 'https://api.getgo.com/G2W/rest/v2/webinars/%7BwebinarKey%7D/copy', headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: { subject: 'string', description: 'string', type: 'single_session', recordingAssetKey: 'string', isOndemand: false, locale: 'en_US', emailSettings: { confirmationEmail: {enabled: true}, reminderEmail: {enabled: true}, absenteeFollowUpEmail: {enabled: true}, attendeeFollowUpEmail: {enabled: true, includeCertificate: true} }, times: [{startTime: '2019-08-24T14:15:22Z', endTime: '2019-08-24T14:15:22Z'}], timeZone: 'string' } }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request PUT \ --url https://api.getgo.com/G2W/rest/v2/webinars/%7BwebinarKey%7D/copy \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '{"subject":"string","description":"string","type":"single_session","recordingAssetKey":"string","isOndemand":false,"locale":"en_US","emailSettings":{"confirmationEmail":{"enabled":true},"reminderEmail":{"enabled":true},"absenteeFollowUpEmail":{"enabled":true},"attendeeFollowUpEmail":{"enabled":true,"includeCertificate":true}},"times":[{"startTime":"2019-08-24T14:15:22Z","endTime":"2019-08-24T14:15:22Z"}],"timeZone":"string"}' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "{\"subject\":\"string\",\"description\":\"string\",\"type\":\"single_session\",\"recordingAssetKey\":\"string\",\"isOndemand\":false,\"locale\":\"en_US\",\"emailSettings\":{\"confirmationEmail\":{\"enabled\":true},\"reminderEmail\":{\"enabled\":true},\"absenteeFollowUpEmail\":{\"enabled\":true},\"attendeeFollowUpEmail\":{\"enabled\":true,\"includeCertificate\":true}},\"times\":[{\"startTime\":\"2019-08-24T14:15:22Z\",\"endTime\":\"2019-08-24T14:15:22Z\"}],\"timeZone\":\"string\"}" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("PUT", "/G2W/rest/v2/webinars/%7BwebinarKey%7D/copy", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('{"subject":"string","description":"string","type":"single_session","recordingAssetKey":"string","isOndemand":false,"locale":"en_US","emailSettings":{"confirmationEmail":{"enabled":true},"reminderEmail":{"enabled":true},"absenteeFollowUpEmail":{"enabled":true},"attendeeFollowUpEmail":{"enabled":true,"includeCertificate":true}},"times":[{"startTime":"2019-08-24T14:15:22Z","endTime":"2019-08-24T14:15:22Z"}],"timeZone":"string"}'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/webinars/%7BwebinarKey%7D/copy'); $request->setRequestMethod('PUT'); $request->setBody($body); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/webinars/%7BwebinarKey%7D/copy") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Put.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "{\"subject\":\"string\",\"description\":\"string\",\"type\":\"single_session\",\"recordingAssetKey\":\"string\",\"isOndemand\":false,\"locale\":\"en_US\",\"emailSettings\":{\"confirmationEmail\":{\"enabled\":true},\"reminderEmail\":{\"enabled\":true},\"absenteeFollowUpEmail\":{\"enabled\":true},\"attendeeFollowUpEmail\":{\"enabled\":true,\"includeCertificate\":true}},\"times\":[{\"startTime\":\"2019-08-24T14:15:22Z\",\"endTime\":\"2019-08-24T14:15:22Z\"}],\"timeZone\":\"string\"}" response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/registrants: post: tags: - Registrants operationId: createRegistrant summary: Create registrant description: | Register an attendee for a scheduled webinar. The response contains the registrantKey and join URL for the registrant. An email will be sent to the registrant unless the organizer turns off the confirmation email setting from the GoTo Webinar website. Please note that you must provide all required fields including custom fields defined during the webinar creation. Use the API call 'Get registration fields' to get a list of all fields, if they are required, and their possible values. At this time there are two versions of the 'Create Registrant' call. The first version only accepts firstName, lastName, and email and ignores all other fields. If you have custom fields or want to capture additional information this version won't work for you. The second version allows you to pass all required and optional fields, including custom fields defined when creating the webinar. To use the second version you must pass the Accept header value as 'application/json' instead of 'application/vnd.citrix.g2wapi-v1.1+json. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - name: Accept in: header description: | Set to 'application/json' to make a registration using fields (custom or default) additional to the basic ones or set it to 'application/vnd.citrix.g2wapi-v1.1+json' for just basic fields(firstName, lastName, and email). required: false schema: type: string - name: resendConfirmation in: query description: Indicates whether the confirmation email should be resent when a registrant is re-registered. The default value is false. required: false schema: type: boolean requestBody: content: application/json: schema: $ref: '#/components/schemas/RegistrantFields' description: The registrant details. To get all possible values run the API call 'Get registration fields' which is also part of this documentation. required: true responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/RegistrantCreated' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found '409': description: The user is already registered x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'POST', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants', params: {resendConfirmation: 'SOME_BOOLEAN_VALUE'}, headers: { Accept: 'SOME_STRING_VALUE', Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: { firstName: 'string', lastName: 'string', email: 'string', source: 'string', address: 'string', city: 'string', state: 'string', zipCode: 'string', country: 'string', phone: 'string', organization: 'string', jobTitle: 'string', questionsAndComments: 'string', industry: 'string', numberOfEmployees: 'string', purchasingTimeFrame: 'string', purchasingRole: 'string', responses: [{questionKey: 0, responseText: 'string', answerKey: 0}] } }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request POST \ --url 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants?resendConfirmation=SOME_BOOLEAN_VALUE' \ --header 'Accept: SOME_STRING_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '{"firstName":"string","lastName":"string","email":"string","source":"string","address":"string","city":"string","state":"string","zipCode":"string","country":"string","phone":"string","organization":"string","jobTitle":"string","questionsAndComments":"string","industry":"string","numberOfEmployees":"string","purchasingTimeFrame":"string","purchasingRole":"string","responses":[{"questionKey":0,"responseText":"string","answerKey":0}]}' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "{\"firstName\":\"string\",\"lastName\":\"string\",\"email\":\"string\",\"source\":\"string\",\"address\":\"string\",\"city\":\"string\",\"state\":\"string\",\"zipCode\":\"string\",\"country\":\"string\",\"phone\":\"string\",\"organization\":\"string\",\"jobTitle\":\"string\",\"questionsAndComments\":\"string\",\"industry\":\"string\",\"numberOfEmployees\":\"string\",\"purchasingTimeFrame\":\"string\",\"purchasingRole\":\"string\",\"responses\":[{\"questionKey\":0,\"responseText\":\"string\",\"answerKey\":0}]}" headers = { 'Accept': "SOME_STRING_VALUE", 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("POST", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants?resendConfirmation=SOME_BOOLEAN_VALUE", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('{"firstName":"string","lastName":"string","email":"string","source":"string","address":"string","city":"string","state":"string","zipCode":"string","country":"string","phone":"string","organization":"string","jobTitle":"string","questionsAndComments":"string","industry":"string","numberOfEmployees":"string","purchasingTimeFrame":"string","purchasingRole":"string","responses":[{"questionKey":0,"responseText":"string","answerKey":0}]}'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants'); $request->setRequestMethod('POST'); $request->setBody($body); $request->setQuery(new http\QueryString([ 'resendConfirmation' => 'SOME_BOOLEAN_VALUE' ])); $request->setHeaders([ 'Accept' => 'SOME_STRING_VALUE', 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants?resendConfirmation=SOME_BOOLEAN_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(url) request["Accept"] = 'SOME_STRING_VALUE' request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "{\"firstName\":\"string\",\"lastName\":\"string\",\"email\":\"string\",\"source\":\"string\",\"address\":\"string\",\"city\":\"string\",\"state\":\"string\",\"zipCode\":\"string\",\"country\":\"string\",\"phone\":\"string\",\"organization\":\"string\",\"jobTitle\":\"string\",\"questionsAndComments\":\"string\",\"industry\":\"string\",\"numberOfEmployees\":\"string\",\"purchasingTimeFrame\":\"string\",\"purchasingRole\":\"string\",\"responses\":[{\"questionKey\":0,\"responseText\":\"string\",\"answerKey\":0}]}" response = http.request(request) puts response.read_body get: tags: - Registrants operationId: getAllRegistrantsForWebinar summary: Get registrants description: | Retrieve registration details for all registrants of a specific webinar. Registrant details will not include all fields captured when creating the registrant. To see all data, use the API call 'Get Registrant'. Registrants can have one of the following states; WAITING - registrant registered and is awaiting approval (where organizer has required approval), APPROVED - registrant registered and is approved, and DENIED - registrant registered and was denied. We have pagination support for this API now. When you pass the page or limit parameter the response will follow RegistrantPaginatedResponse schema but without these params response will be in RegistrantArray schema as before parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/limit' responses: '200': description: OK content: application/json: schema: oneOf: - $ref: '#/components/schemas/RegistrantArray' - $ref: '#/components/schemas/RegistrantPaginatedResponse' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants', params: {page: 'SOME_INTEGER_VALUE', limit: 'SOME_INTEGER_VALUE'}, headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants?page=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants?page=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants'); $request->setRequestMethod('GET'); $request->setQuery(new http\QueryString([ 'page' => 'SOME_INTEGER_VALUE', 'limit' => 'SOME_INTEGER_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants?page=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/registrants/{registrantKey}: delete: tags: - Registrants operationId: deleteRegistrant summary: Delete registrant description: Removes a webinar registrant from current registrations for the specified webinar. The webinar must be a scheduled, future webinar. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/registrantKey' responses: '204': description: No content '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'DELETE', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/%7BregistrantKey%7D', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request DELETE \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/%7BregistrantKey%7D \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("DELETE", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/%7BregistrantKey%7D", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/%7BregistrantKey%7D'); $request->setRequestMethod('DELETE'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/%7BregistrantKey%7D") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Delete.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body get: tags: - Registrants operationId: getRegistrant summary: Get registrant description: Retrieve registration details for a specific registrant. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/registrantKey' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RegistrantDetailed' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/%7BregistrantKey%7D', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/%7BregistrantKey%7D \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/%7BregistrantKey%7D", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/%7BregistrantKey%7D'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/%7BregistrantKey%7D") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/registrants/fields: get: tags: - Registrants operationId: getRegistrationFields summary: Get registration fields description: Retrieve required, optional registration, and custom questions for a specified webinar. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RegistrationFields' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/fields', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/fields \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/fields", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/fields'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/registrants/fields") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/sessions: get: tags: - Sessions operationId: getAllSessions summary: Get webinar sessions description: Retrieves details for all past sessions of a specific webinar. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/size' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ReportingSessionsResponse' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions', params: {page: 'SOME_INTEGER_VALUE', size: 'SOME_INTEGER_VALUE'}, headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions?page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions?page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions'); $request->setRequestMethod('GET'); $request->setQuery(new http\QueryString([ 'page' => 'SOME_INTEGER_VALUE', 'size' => 'SOME_INTEGER_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions?page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/sessions/{sessionKey}: get: tags: - Sessions operationId: getWebinarSession summary: Get webinar session description: | Retrieves attendance details for a specific webinar session that has ended. If attendees attended the session ('registrantsAttended'), specific attendance details, such as attendenceTime for a registrant, will also be retrieved. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/sessionKey' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/Attendee' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/sessions/{sessionKey}/attendees: get: tags: - Attendees operationId: getAttendees summary: Get session attendees description: Retrieve details for all attendees of a specific webinar session. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/sessionKey' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/Attendee' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/sessions/{sessionKey}/attendees/{registrantKey}: get: tags: - Attendees operationId: getAttendee summary: Get attendee description: Retrieve registration details for a particular attendee of a specific webinar session. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/sessionKey' - $ref: '#/components/parameters/registrantKey' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/Registrant' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/sessions/{sessionKey}/attendees/{registrantKey}/polls: get: tags: - Attendees operationId: getAttendeePollAnswers summary: Get attendee poll answers description: Get poll answers from a particular attendee of a specific webinar session. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/sessionKey' - $ref: '#/components/parameters/registrantKey' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/PollAnswer' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/polls', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/polls \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/polls", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/polls'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/polls") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/sessions/{sessionKey}/attendees/{registrantKey}/questions: get: tags: - Attendees operationId: getAttendeeQuestions summary: Get attendee questions description: Get questions asked by an attendee during a webinar session. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/sessionKey' - $ref: '#/components/parameters/registrantKey' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/AttendeeQuestion' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/questions', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/questions \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/questions", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/questions'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/questions") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/sessions/{sessionKey}/attendees/{registrantKey}/surveys: get: tags: - Attendees operationId: getAttendeeSurveyAnswers summary: Get attendee survey answers description: Retrieve survey answers from a particular attendee during a webinar session. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/sessionKey' - $ref: '#/components/parameters/registrantKey' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/PollAnswer' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/surveys', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/surveys \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/surveys", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/surveys'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/attendees/%7BregistrantKey%7D/surveys") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/sessions/{sessionKey}/performance: get: tags: - Sessions operationId: getPerformance summary: Get session performance description: Get performance details for a session. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/sessionKey' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SessionPerformance' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/performance', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/performance \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/performance", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/performance'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/performance") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/sessions/{sessionKey}/polls: get: tags: - Sessions operationId: getPolls summary: Get session polls description: Retrieve all collated attendee questions and answers for polls from a specific webinar session. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/sessionKey' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/Poll' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/polls', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/polls \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/polls", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/polls'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/polls") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/sessions/{sessionKey}/questions: get: tags: - Sessions operationId: getQuestions summary: Get session questions description: Retrieve questions and answers for a past webinar session. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/sessionKey' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/AttendeeQuestion' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/questions', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/questions \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/questions", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/questions'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/questions") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/sessions/{sessionKey}/surveys: get: tags: - Sessions operationId: getSurveys summary: Get session surveys description: Retrieve surveys for a past webinar session. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/sessionKey' responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/Poll' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/surveys', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/surveys \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/surveys", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/surveys'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/sessions/%7BsessionKey%7D/surveys") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/panelists/{panelistKey}/resendInvitation: post: tags: - Panelists operationId: resendPanelistInvitation summary: Resend panelist invitation description: Resend the panelist invitation email. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/panelistKey' responses: '204': description: No Content '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'POST', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists/%7BpanelistKey%7D/resendInvitation', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request POST \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists/%7BpanelistKey%7D/resendInvitation \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("POST", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists/%7BpanelistKey%7D/resendInvitation", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists/%7BpanelistKey%7D/resendInvitation'); $request->setRequestMethod('POST'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists/%7BpanelistKey%7D/resendInvitation") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /organizers/{organizerKey}/webinars/{webinarKey}/panelists/{panelistKey}: delete: tags: - Panelists operationId: deleteWebinarPanelist summary: Delete webinar panelist description: Removes a webinar panelist. parameters: - $ref: '#/components/parameters/organizerKey' - $ref: '#/components/parameters/webinarKey' - $ref: '#/components/parameters/panelistKey' responses: '204': description: No content '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'DELETE', url: 'https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists/%7BpanelistKey%7D', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request DELETE \ --url https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists/%7BpanelistKey%7D \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("DELETE", "/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists/%7BpanelistKey%7D", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists/%7BpanelistKey%7D'); $request->setRequestMethod('DELETE'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/organizers/%7BorganizerKey%7D/webinars/%7BwebinarKey%7D/panelists/%7BpanelistKey%7D") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Delete.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /recordingassets/search: post: tags: - RecordingAssets operationId: searchAssets summary: Search for completed recording assets description: | Allows search for a completed recording asset. ### Example Interaction with curl The default request is represented below, that excludes the `includes` query parameter. You will get the `mp4DownloadUrl` and `transcriptUrl` by default in the response if they exist. The `recordingShareUrl` and `webinarKey` fields will not be included. ``` curl --request PUT 'https://api.getgo.com/G2W/rest/v2/recordingassets/search?page={page}&size={size}' \ --header 'Authorization: Bearer {ACCESS_TOKEN}' \ --header 'Content-Type: application/json' \ --data-raw '{ "accountKey": "123456", "sortField": "CREATETIME", "sortOrder": "DESC" }' ``` By adding the `includes` query parameter has shown below, you'll get the `recordingShareUrl` and `webinarKey` fields in the response. ``` curl --request PUT 'https://api.getgo.com/G2W/rest/v2/recordingassets/search?page={page}&size={size}&includes=recordingShareUrl%2CwebinarKey' \ --header 'Authorization: Bearer {ACCESS_TOKEN}' \ --header 'Content-Type: application/json' \ --data-raw '{ "accountKey": "123456", "sortField": "CREATETIME", "sortOrder": "DESC" }' ``` parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/size' - $ref: '#/components/parameters/includes' requestBody: content: application/json: schema: $ref: '#/components/schemas/AssetsSearchReq' description: The asset search parameters required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/AssetsResponse' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'POST', url: 'https://api.getgo.com/G2W/rest/v2/recordingassets/search', params: { page: 'SOME_INTEGER_VALUE', size: 'SOME_INTEGER_VALUE', includes: 'SOME_ARRAY_VALUE' }, headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: { accountKey: 'string', name: 'string', sortField: 'CREATETIME', sortOrder: 'DESC' } }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request POST \ --url 'https://api.getgo.com/G2W/rest/v2/recordingassets/search?page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE&includes=SOME_ARRAY_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '{"accountKey":"string","name":"string","sortField":"CREATETIME","sortOrder":"DESC"}' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "{\"accountKey\":\"string\",\"name\":\"string\",\"sortField\":\"CREATETIME\",\"sortOrder\":\"DESC\"}" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("POST", "/G2W/rest/v2/recordingassets/search?page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE&includes=SOME_ARRAY_VALUE", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('{"accountKey":"string","name":"string","sortField":"CREATETIME","sortOrder":"DESC"}'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/recordingassets/search'); $request->setRequestMethod('POST'); $request->setBody($body); $request->setQuery(new http\QueryString([ 'page' => 'SOME_INTEGER_VALUE', 'size' => 'SOME_INTEGER_VALUE', 'includes' => 'SOME_ARRAY_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/recordingassets/search?page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE&includes=SOME_ARRAY_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "{\"accountKey\":\"string\",\"name\":\"string\",\"sortField\":\"CREATETIME\",\"sortOrder\":\"DESC\"}" response = http.request(request) puts response.read_body /accounts/{accountKey}/recordingassets/search: post: tags: - RecordingAssets operationId: searchAssetsForAdmin summary: Search for completed recording assets of an admin user description: | Allows search for a completed recording asset for an admin user. The authorization token must represent an admin. ### Example Interaction with curl The default request is represented below, that excludes the `includes` query parameter. You will get the `mp4DownloadUrl` and `transcriptUrl` by default in the response if they exist. The `recordingShareUrl` and `webinarKey` fields will not be included. ``` curl --request POST 'https://api.getgo.com/G2W/rest/v2/accounts/{accountKey}/recordingassets/search?page={page}&size={size}' \ --header 'Authorization: Bearer {ACCESS_TOKEN}' \ --header 'Content-Type: application/json' \ --data-raw '{ "name": "Test" "organizerKey": "123456", "sortField": "CREATETIME", "sortOrder": "DESC", "fromTime":"2021-01-01T00:00:00Z", "toTime":"2022-02-02T06:36:02.352Z" }' ``` By adding the `includes` query parameter has shown below, you'll get the `recordingShareUrl` and `webinarKey` fields in the response. ``` curl --request POST 'https://api.getgo.com/G2W/rest/v2/accounts/{accountKey}/recordingassets/search?page={page}&size={size}&includes=recordingShareUrl%2CwebinarKey' \ --header 'Authorization: Bearer {ACCESS_TOKEN}' \ --header 'Content-Type: application/json' \ --data-raw '{ "name": "Test" "organizerKey": "123456", "sortField": "CREATETIME", "sortOrder": "DESC", "fromTime":"2021-01-01T00:00:00Z", "toTime":"2022-02-02T06:36:02.352Z" }' ``` parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/size' - $ref: '#/components/parameters/includes' - $ref: '#/components/parameters/accountKey' requestBody: content: application/json: schema: $ref: '#/components/schemas/AssetsSearchRequestForAdmin' description: The asset search parameters required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/AssetsResponse' '400': description: Bad Request '403': description: Forbidden or oauth scope is invalid '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'POST', url: 'https://api.getgo.com/G2W/rest/v2/accounts/%7BaccountKey%7D/recordingassets/search', params: { page: 'SOME_INTEGER_VALUE', size: 'SOME_INTEGER_VALUE', includes: 'SOME_ARRAY_VALUE' }, headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: { organizerKey: 'string', name: 'string', sortField: 'CREATETIME', sortOrder: 'DESC', fromTime: 'string', toTime: 'string' } }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request POST \ --url 'https://api.getgo.com/G2W/rest/v2/accounts/%7BaccountKey%7D/recordingassets/search?page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE&includes=SOME_ARRAY_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '{"organizerKey":"string","name":"string","sortField":"CREATETIME","sortOrder":"DESC","fromTime":"string","toTime":"string"}' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "{\"organizerKey\":\"string\",\"name\":\"string\",\"sortField\":\"CREATETIME\",\"sortOrder\":\"DESC\",\"fromTime\":\"string\",\"toTime\":\"string\"}" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("POST", "/G2W/rest/v2/accounts/%7BaccountKey%7D/recordingassets/search?page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE&includes=SOME_ARRAY_VALUE", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('{"organizerKey":"string","name":"string","sortField":"CREATETIME","sortOrder":"DESC","fromTime":"string","toTime":"string"}'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/accounts/%7BaccountKey%7D/recordingassets/search'); $request->setRequestMethod('POST'); $request->setBody($body); $request->setQuery(new http\QueryString([ 'page' => 'SOME_INTEGER_VALUE', 'size' => 'SOME_INTEGER_VALUE', 'includes' => 'SOME_ARRAY_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/accounts/%7BaccountKey%7D/recordingassets/search?page=SOME_INTEGER_VALUE&size=SOME_INTEGER_VALUE&includes=SOME_ARRAY_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "{\"organizerKey\":\"string\",\"name\":\"string\",\"sortField\":\"CREATETIME\",\"sortOrder\":\"DESC\",\"fromTime\":\"string\",\"toTime\":\"string\"}" response = http.request(request) puts response.read_body /webinars/{webinarKey}/recordingAssets: get: tags: - Webinars operationId: getRecordingAssets summary: Get all the recording assets associated with the webinarKey description: | Get all the recording assets associated with online recordings of the webinarKey. ### Example Interaction with curl The default request is represented below. By default, you will get the `mp4DownloadUrl` in the response and `transcriptUrl` if it exists. The `recordingShareUrl` and `webinarKey` fields will be included by default. ``` curl --request GET 'https://api.getgo.com/G2W/rest/v2/webinars/{webinarKey}/recordingAssets?page={page}&size={size}' \ --header 'Authorization: Bearer {ACCESS_TOKEN}' \ --header 'Content-Type: application/json' \ ``` parameters: - $ref: '#/components/parameters/page' - $ref: '#/components/parameters/limit' - $ref: '#/components/parameters/webinarKey' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/RecordingAssetsResponse' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/webinars/%7BwebinarKey%7D/recordingAssets', params: {page: 'SOME_INTEGER_VALUE', limit: 'SOME_INTEGER_VALUE'}, headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url 'https://api.getgo.com/G2W/rest/v2/webinars/%7BwebinarKey%7D/recordingAssets?page=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/webinars/%7BwebinarKey%7D/recordingAssets?page=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/webinars/%7BwebinarKey%7D/recordingAssets'); $request->setRequestMethod('GET'); $request->setQuery(new http\QueryString([ 'page' => 'SOME_INTEGER_VALUE', 'limit' => 'SOME_INTEGER_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/webinars/%7BwebinarKey%7D/recordingAssets?page=SOME_INTEGER_VALUE&limit=SOME_INTEGER_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /webhooks/secretkey: post: tags: - Webhooks operationId: createSecretKey summary: Creates a new secret key description: | This creates a new secret key per application. It takes an optional validFrom value, a date time in ISO8601 format, e.g. 2019-07-01T22:00:00Z. The secret key will be activated at the given date. If validFrom is not passed, the secret key will be activated immediately. The secret key is used to generate a signature for events published to the callback url. requestBody: content: application/json: schema: $ref: '#/components/schemas/SecretKeyRequest' description: The secret key object to create required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/SecretKeyResponse' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'POST', url: 'https://api.getgo.com/G2W/rest/v2/webhooks/secretkey', headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: {validFrom: 'string'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request POST \ --url https://api.getgo.com/G2W/rest/v2/webhooks/secretkey \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '{"validFrom":"string"}' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "{\"validFrom\":\"string\"}" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("POST", "/G2W/rest/v2/webhooks/secretkey", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('{"validFrom":"string"}'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/webhooks/secretkey'); $request->setRequestMethod('POST'); $request->setBody($body); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/webhooks/secretkey") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "{\"validFrom\":\"string\"}" response = http.request(request) puts response.read_body /webhooks: post: tags: - Webhooks operationId: createWebhooks summary: Creates new webhooks description: A new webhook will be created with the provided callback url. Callback url should be a https url. Callback url will be validated by making a GET request. It should return 200 OK. requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/CreateWebhookRequest' description: Webhooks object to create required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/WebhooksResponse' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'POST', url: 'https://api.getgo.com/G2W/rest/v2/webhooks', headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: [ { callbackUrl: 'string', eventName: 'string', eventVersion: 'string', product: 'g2w' } ] }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request POST \ --url https://api.getgo.com/G2W/rest/v2/webhooks \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '[{"callbackUrl":"string","eventName":"string","eventVersion":"string","product":"g2w"}]' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "[{\"callbackUrl\":\"string\",\"eventName\":\"string\",\"eventVersion\":\"string\",\"product\":\"g2w\"}]" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("POST", "/G2W/rest/v2/webhooks", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('[{"callbackUrl":"string","eventName":"string","eventVersion":"string","product":"g2w"}]'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/webhooks'); $request->setRequestMethod('POST'); $request->setBody($body); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/webhooks") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "[{\"callbackUrl\":\"string\",\"eventName\":\"string\",\"eventVersion\":\"string\",\"product\":\"g2w\"}]" response = http.request(request) puts response.read_body put: tags: - Webhooks operationId: updateWebhooks summary: Updates webhooks description: Callback url and state of webhooks can be updated using this API. Callback url should be a https url. Callback url will be validated by making a GET request. It should return 200 OK. requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/UpdateWebhooksRequest' description: Webhooks object to update required: true responses: '204': description: No Content '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'PUT', url: 'https://api.getgo.com/G2W/rest/v2/webhooks', headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: [{callbackUrl: 'string', webhookKey: 'string', state: 'INACTIVE'}] }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request PUT \ --url https://api.getgo.com/G2W/rest/v2/webhooks \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '[{"callbackUrl":"string","webhookKey":"string","state":"INACTIVE"}]' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "[{\"callbackUrl\":\"string\",\"webhookKey\":\"string\",\"state\":\"INACTIVE\"}]" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("PUT", "/G2W/rest/v2/webhooks", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('[{"callbackUrl":"string","webhookKey":"string","state":"INACTIVE"}]'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/webhooks'); $request->setRequestMethod('PUT'); $request->setBody($body); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/webhooks") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Put.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "[{\"callbackUrl\":\"string\",\"webhookKey\":\"string\",\"state\":\"INACTIVE\"}]" response = http.request(request) puts response.read_body get: tags: - Webhooks operationId: getWebhooks summary: Get webhooks description: Get the list of webhooks by product for the requesting user. Product must be provided. parameters: - $ref: '#/components/parameters/product' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/WebhooksResponse' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/webhooks', params: {product: 'SOME_STRING_VALUE'}, headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url 'https://api.getgo.com/G2W/rest/v2/webhooks?product=SOME_STRING_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/webhooks?product=SOME_STRING_VALUE", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/webhooks'); $request->setRequestMethod('GET'); $request->setQuery(new http\QueryString([ 'product' => 'SOME_STRING_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/webhooks?product=SOME_STRING_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body delete: tags: - Webhooks operationId: deleteWebhooks summary: Deletes webhooks description: Deletes webhooks by list of webhookKeys requestBody: content: application/json: schema: type: array items: type: string description: List of webhookKeys to delete required: true responses: '202': description: Accepted '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'DELETE', url: 'https://api.getgo.com/G2W/rest/v2/webhooks', headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: ['string'] }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request DELETE \ --url https://api.getgo.com/G2W/rest/v2/webhooks \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '["string"]' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "[\"string\"]" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("DELETE", "/G2W/rest/v2/webhooks", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('["string"]'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/webhooks'); $request->setRequestMethod('DELETE'); $request->setBody($body); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/webhooks") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Delete.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "[\"string\"]" response = http.request(request) puts response.read_body /webhooks/{webhookKey}: get: tags: - Webhooks operationId: getWebhook summary: Get webhook description: Get a webhook by webhookKey for the requesting user. parameters: - $ref: '#/components/parameters/webhookKey' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/Webhook' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/webhooks/%7BwebhookKey%7D', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/webhooks/%7BwebhookKey%7D \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/webhooks/%7BwebhookKey%7D", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/webhooks/%7BwebhookKey%7D'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/webhooks/%7BwebhookKey%7D") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body /userSubscriptions: post: tags: - Webhooks operationId: createUserSubscriptions summary: Creates new user subscriptions description: A user subscriptions will be created for the provided webhook. Callback url can be provided for user subscription. The callback url will be validated by making a GET request. It should return 200 OK. requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/CreateUserSubscriptionRequest' description: User subscriptions to create required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/UserSubscriptionResponse' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'POST', url: 'https://api.getgo.com/G2W/rest/v2/userSubscriptions', headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: [ {callbackUrl: 'string', webhookKey: 'string', userSubscriptionState: 'INACTIVE'} ] }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request POST \ --url https://api.getgo.com/G2W/rest/v2/userSubscriptions \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '[{"callbackUrl":"string","webhookKey":"string","userSubscriptionState":"INACTIVE"}]' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "[{\"callbackUrl\":\"string\",\"webhookKey\":\"string\",\"userSubscriptionState\":\"INACTIVE\"}]" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("POST", "/G2W/rest/v2/userSubscriptions", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('[{"callbackUrl":"string","webhookKey":"string","userSubscriptionState":"INACTIVE"}]'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/userSubscriptions'); $request->setRequestMethod('POST'); $request->setBody($body); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/userSubscriptions") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Post.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "[{\"callbackUrl\":\"string\",\"webhookKey\":\"string\",\"userSubscriptionState\":\"INACTIVE\"}]" response = http.request(request) puts response.read_body put: tags: - Webhooks operationId: updateUserSubscriptions summary: Updates user subscriptions description: Callback url and state of user subscriptions can be updated using this API. The callback url will be validated by making a GET request. It should return 200 OK. requestBody: content: application/json: schema: type: array items: $ref: '#/components/schemas/UpdateUserSubscriptionsRequest' description: User subscriptions to update required: true responses: '204': description: No Content '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'PUT', url: 'https://api.getgo.com/G2W/rest/v2/userSubscriptions', headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: [ { callbackUrl: 'string', webhookKey: 'string', userSubscriptionKey: 'string', userSubscriptionState: 'INACTIVE' } ] }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request PUT \ --url https://api.getgo.com/G2W/rest/v2/userSubscriptions \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '[{"callbackUrl":"string","webhookKey":"string","userSubscriptionKey":"string","userSubscriptionState":"INACTIVE"}]' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "[{\"callbackUrl\":\"string\",\"webhookKey\":\"string\",\"userSubscriptionKey\":\"string\",\"userSubscriptionState\":\"INACTIVE\"}]" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("PUT", "/G2W/rest/v2/userSubscriptions", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('[{"callbackUrl":"string","webhookKey":"string","userSubscriptionKey":"string","userSubscriptionState":"INACTIVE"}]'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/userSubscriptions'); $request->setRequestMethod('PUT'); $request->setBody($body); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/userSubscriptions") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Put.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "[{\"callbackUrl\":\"string\",\"webhookKey\":\"string\",\"userSubscriptionKey\":\"string\",\"userSubscriptionState\":\"INACTIVE\"}]" response = http.request(request) puts response.read_body get: tags: - Webhooks operationId: getUserSubscriptions summary: Get user subscriptions description: Get the list of user subscriptions by product for the requesting user. Product must be provided. parameters: - $ref: '#/components/parameters/product' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/UserSubscriptionResponse' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/userSubscriptions', params: {product: 'SOME_STRING_VALUE'}, headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url 'https://api.getgo.com/G2W/rest/v2/userSubscriptions?product=SOME_STRING_VALUE' \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/userSubscriptions?product=SOME_STRING_VALUE", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/userSubscriptions'); $request->setRequestMethod('GET'); $request->setQuery(new http\QueryString([ 'product' => 'SOME_STRING_VALUE' ])); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/userSubscriptions?product=SOME_STRING_VALUE") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body delete: tags: - Webhooks operationId: deleteUserSubscriptions summary: Deletes user subscriptions description: Deletes user subscriptions by list of userSubscriptionKeys requestBody: content: application/json: schema: type: array items: type: string description: List of userSubscriptionKeys to delete required: true responses: '202': description: Accepted '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'DELETE', url: 'https://api.getgo.com/G2W/rest/v2/userSubscriptions', headers: { Authorization: 'Bearer REPLACE_BEARER_TOKEN', }, data: ['string'] }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request DELETE \ --url https://api.getgo.com/G2W/rest/v2/userSubscriptions \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' \ --header 'content-type: application/json' \ --data '["string"]' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") payload = "[\"string\"]" headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN", 'content-type': "application/json" } conn.request("DELETE", "/G2W/rest/v2/userSubscriptions", payload, headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- append('["string"]'); $request->setRequestUrl('https://api.getgo.com/G2W/rest/v2/userSubscriptions'); $request->setRequestMethod('DELETE'); $request->setBody($body); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN', 'content-type' => 'application/json' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/userSubscriptions") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Delete.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' request["content-type"] = 'application/json' request.body = "[\"string\"]" response = http.request(request) puts response.read_body /userSubscriptions/{userSubscriptionsKey}: get: tags: - Webhooks operationId: getUserSubscription summary: Get user subscription description: Get a user subscription by userSubscriptionKey for the requesting user. parameters: - $ref: '#/components/parameters/userSubscriptionsKey' responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/UserSubscription' '400': description: Bad Request '403': description: Forbidden '404': description: Not Found x-codeSamples: - lang: Node + Axios source: |- var axios = require("axios").default; var options = { method: 'GET', url: 'https://api.getgo.com/G2W/rest/v2/userSubscriptions/%7BuserSubscriptionsKey%7D', headers: {Authorization: 'Bearer REPLACE_BEARER_TOKEN'} }; axios.request(options).then(function (response) { console.log(response.data); }).catch(function (error) { console.error(error); }); - lang: Shell + Curl source: |- curl --request GET \ --url https://api.getgo.com/G2W/rest/v2/userSubscriptions/%7BuserSubscriptionsKey%7D \ --header 'Authorization: Bearer REPLACE_BEARER_TOKEN' - lang: Python + Python3 source: |- import http.client conn = http.client.HTTPSConnection("api.getgo.com") headers = { 'Authorization': "Bearer REPLACE_BEARER_TOKEN" } conn.request("GET", "/G2W/rest/v2/userSubscriptions/%7BuserSubscriptionsKey%7D", headers=headers) res = conn.getresponse() data = res.read() print(data.decode("utf-8")) - lang: Php + Http2 source: |- setRequestUrl('https://api.getgo.com/G2W/rest/v2/userSubscriptions/%7BuserSubscriptionsKey%7D'); $request->setRequestMethod('GET'); $request->setHeaders([ 'Authorization' => 'Bearer REPLACE_BEARER_TOKEN' ]); $client->enqueue($request)->send(); $response = $client->getResponse(); echo $response->getBody(); - lang: Ruby + Native source: |- require 'uri' require 'net/http' require 'openssl' url = URI("https://api.getgo.com/G2W/rest/v2/userSubscriptions/%7BuserSubscriptionsKey%7D") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true http.verify_mode = OpenSSL::SSL::VERIFY_NONE request = Net::HTTP::Get.new(url) request["Authorization"] = 'Bearer REPLACE_BEARER_TOKEN' response = http.request(request) puts response.read_body servers: - url: https://api.getgo.com/G2W/rest/v2 components: securitySchemes: OAuth2: type: oauth2 description: | To use this API, you _must_ provide an OAuth Token that has been requested from LogMeIn OAuth Authorization Server. See https://goto-developer.logmeininc.com/how-get-access-token-and-organizer-key for documentation about how to use LogMeIn’s OAuth. in: header name: Authorization scheme: Bearer flows: password: tokenUrl: https://authentication.logmeininc.com/oauth/token refreshUrl: https://authentication.logmeininc.com/oauth/token authorizationCode: authorizationUrl: https://authentication.logmeininc.com/oauth/authorize tokenUrl: https://authentication.logmeininc.com/oauth/token refreshUrl: https://authentication.logmeininc.com/oauth/token parameters: Authorization: name: Authorization in: header description: Access token required: true schema: type: string organizerKey: name: organizerKey in: path description: The key of the organizer required: true schema: type: integer format: int64 accountKey: name: accountKey in: path description: The key of the account required: true schema: type: integer format: int64 name: name: name in: path description: The name of the asset required: true schema: type: string webinarKey: name: webinarKey in: path description: The key of the webinar required: true schema: type: integer format: int64 sessionKey: name: sessionKey in: path description: The key of the webinar session required: true schema: type: integer format: int64 registrantKey: name: registrantKey in: path description: The key of the registrant required: true schema: type: integer format: int64 coorganizerKey: name: coorganizerKey in: path description: The key of the internal or external co-organizer (memberKey) required: true schema: type: integer format: int64 panelistKey: name: panelistKey in: path description: The key of the webinar panelist required: true schema: type: integer format: int64 product: name: product in: query description: Supported products required: true schema: type: string enum: - g2w webhookKey: name: webhookKey in: path description: The unique identifier for a webhook. required: true schema: type: string userSubscriptionsKey: name: userSubscriptionsKey in: path description: The unique identifier for a user subscription. required: true schema: type: string requiredFromTime: name: fromTime in: query description: | Start of the datetime range in ISO8601 UTC format. The reserved characters like '+' have to be encoded while being passed as query parameter. required: true example: '2020-03-13T10:00:00Z' schema: type: string format: date-time requiredToTime: name: toTime in: query description: | End of the datetime range in ISO8601 UTC format. The reserved characters like '+' have to be encoded while being passed as query parameter. example: '2020-03-13T22:00:00Z' required: true schema: type: string format: date-time optionalFromTime: name: fromTime in: query description: | Start of the datetime range in ISO8601 UTC format. The reserved characters like '+' have to be encoded while being passed as query parameter. required: false example: '2020-03-13T10:00:00Z' schema: type: string format: date-time optionalToTime: name: toTime in: query description: | End of the datetime range in ISO8601 UTC format. The reserved characters like '+' have to be encoded while being passed as query parameter. example: '2020-03-13T22:00:00Z' required: true schema: type: string format: date-time page: name: page in: query required: false description: The page number to be displayed. The first page is 0. schema: type: integer format: int64 limit: name: limit in: query required: false description: The size of the page. schema: type: integer format: int64 maximum: 200 size: name: size in: query required: false description: The size of the page. schema: type: integer format: int64 maximum: 200 sourceWebinarKey: name: webinarKey in: path description: The key of source webinar required: true schema: type: integer format: int64 includes: name: includes in: query required: false description: Add the response variables. schema: type: array collectionFormat: csv items: type: string enum: - recordingShareUrl - webinarKey schemas: WebinarReqUpdate: description: Describes the details of the webinar properties: subject: type: string description: The name/subject of the webinar (128 characters maximum) description: type: string description: A description of the webinar (2048 characters maximum) times: description: Array with start and end time(s) for webinar type: array items: $ref: '#/components/schemas/DateTimeRange' timeZone: type: string description: | The time zone where the webinar is taking place (must be a valid time zone ID). If this parameter is not passed, the timezone of the organizer's profile will be used locale: type: string enum: - en_US - de_DE - es_ES - fr_FR - it_IT - zh_CN description: The webinar language emailSettings: $ref: '#/components/schemas/WebinarEmailSettings' AudioType: description: How to connect to the webinar's audio conference type: string enum: - PSTN - VOIP - Hybrid - Private AudioUpdate: description: Defines the audio/conferencing settings for the specified webinar required: - type properties: type: $ref: '#/components/schemas/AudioType' pstnInfo: $ref: '#/components/schemas/PstnInfoUpdate' privateInfo: $ref: '#/components/schemas/PrivateInfoUpdate' TollFreeCountries: description: Countries in which toll free PSTN numbers are available. type: string enum: - AE - AR - AT - AU - BE - BG - BH - BR - BY - CA - CH - CL - CN - CO - CZ - DE - DK - ES - FI - FR - GB - GR - HK - HU - ID - IE - IL - IN - IS - IT - JP - KR - LU - MX - MY - NL - 'NO' - NZ - PA - PE - PH - PL - PT - RO - RU - SA - SE - SG - TH - TR - TW - UA - US - UY - VN - ZA TollCountries: description: Defines in which countries toll PSTN numbers are available. type: string enum: - AT - AU - BE - CA - CH - DE - DK - ES - FI - FR - GB - IE - IT - NL - 'NO' - NZ - SE - US PstnInfoUpdate: description: Defines the audio/conferencing settings for the specified webinar. It required to pass 'tollFreeCountries' or 'tollCountries' or both. properties: tollFreeCountries: description: Defines in which countries toll free PSTN numbers are available. type: array items: $ref: '#/components/schemas/TollFreeCountries' tollCountries: description: Defines in which countries toll PSTN numbers are available. type: array items: $ref: '#/components/schemas/TollCountries' PrivateInfoUpdate: description: Defines the audio data for an own conferencing system required: - attendee properties: attendee: description: Attendee phone number for own conference call system type: string organizer: description: Organizer phone number for own conference call system type: string panelist: description: Panelist phone number for own conference call system type: string DateTimeRange: description: A pair of DateTime values, the first of which serves as a start time and the second as an end time of an interval. required: - startTime - endTime properties: startTime: type: string format: date-time description: The starting time of an interval, e.g. 2020-03-13T10:00:00Z endTime: type: string format: date-time description: The ending time of an interval, e.g. 2020-03-13T22:00:00Z WebinarReqCreate: description: Describes the details used to create a new single session webinar. required: - subject - times properties: subject: type: string description: The name/subject of the webinar (128 characters maximum) description: type: string description: A short description of the webinar (2048 characters maximum) times: description: | Array with startTime and endTime for webinar. Since this call creates single session webinars, the array can only contain a single pair of startTime and endTime type: array items: $ref: '#/components/schemas/DateTimeRange' timeZone: type: string description: | The time zone where the webinar is taking place (must be a valid time zone ID). If this parameter is not passed, the timezone of the organizer's profile will be used type: description: | Specifies the webinar type. The default type value is 'single_session', which is used to create a single webinar session. The possible values are 'single_session', 'series', 'sequence'. If type is set to 'single_session', a single webinar session is created. If type is set to 'series', a webinar series is created. In this case 2 or more timeframes must be specified for each webinar. Example: 'times': [{'startTime': '...', 'endTime': '...'},{'startTime': '...', 'endTime': '...'},{'startTime': '...', 'endTime': '...'}. If type is set to 'sequence' a sequence of webinars is created. The times object in the body must be replaced by the 'recurrenceStart' object. Example: 'recurrenceStart': {'startTime':'2012-06-12T16:00:00Z', 'endTime': '2012-06-12T17:00:00Z' }. The 'recurrenceEnd' and 'recurrencePattern' body parameter must be specified. Example: , 'recurrenceEnd': '2012-07-10', 'recurrencePattern': 'daily'. type: string default: single_session locale: type: string enum: - en_US - de_DE - es_ES - fr_FR - it_IT - zh_CN description: The webinar language isPasswordProtected: type: boolean default: false description: A boolean flag indicating if the webinar is password protected or not. recordingAssetKey: type: string description: The recording asset with which the simulive webinar should be created from. In case the recordingasset was created as an online recording the simulive webinar settings, poll and surveys would be copied from the webinar whose session was recorded. isOndemand: type: boolean default: false description: A boolean flag indicating if the webinar should be ondemand isBreakout: type: boolean default: false description: A boolean flag indicating if the webinar should be breakout experienceType: description: Specifies the experience type. The possible values are 'CLASSIC', 'BROADCAST' and 'SIMULIVE'. default: CLASSIC type: string emailSettings: $ref: '#/components/schemas/WebinarEmailSettings' WebinarEmailSettings: description: Describes email settings of a webinar. properties: confirmationEmail: $ref: '#/components/schemas/EmailSettings' reminderEmail: $ref: '#/components/schemas/EmailSettings' absenteeFollowUpEmail: $ref: '#/components/schemas/EmailSettings' attendeeFollowUpEmail: $ref: '#/components/schemas/AttendeeFollowUpEmailSetting' EmailSettings: description: Describes Confirmation email, Reminder email and Absentee follow-up email settings. properties: enabled: type: boolean description: Indicates whether email settings are enabled or disabled. AttendeeFollowUpEmailSetting: description: Describes Attendee follow-up email settings. allOf: - $ref: '#/components/schemas/EmailSettings' - type: object properties: includeCertificate: type: boolean description: Indicates whether to include certificates in attendee follow-up emails is enabled or disabled. AssetsSearchReq: description: Describes the details used to search a completed recordingasset. required: - accountKey properties: accountKey: type: string description: The key of the account name: type: string description: The name of the recordingasset sortField: type: string description: Sorts on the specified field. The default value is 'CREATETIME'. The possible values are 'CREATETIME' and 'NAME'. default: CREATETIME sortOrder: description: Specifies the sort order type. The default value is 'DESC'. The possible values are 'DESC', 'ASC'. type: string default: DESC AssetsSearchRequestForAdmin: description: Describes the details used to search a completed recordingasset. required: - organizerKey properties: organizerKey: type: string description: The key of the organizer name: type: string description: The name of the recordingasset sortField: type: string description: Sorts on the specified field. The default value is 'CREATETIME'. The possible values are 'CREATETIME' and 'NAME'. default: CREATETIME sortOrder: description: Specifies the sort order type. The default value is 'DESC'. The possible values are 'DESC', 'ASC'. type: string default: DESC fromTime: description: Specifies the time from which the recordings should be included. Date should be in ISO format. type: string toTime: description: Specifies the time till which the recordings should be included. Date should be in ISO format. type: string CreatedWebinar: description: Describes a newly created webinar. required: - webinarKey properties: webinarKey: type: string description: The unique key of the webinar. recurrenceKey: type: string description: The recurrence key of the webinar which is received only for Series Webinars. AssetsResponse: description: Describes a list of completed assets required: - _embedded - page properties: _embedded: $ref: '#/components/schemas/Assets' page: $ref: '#/components/schemas/page' Assets: description: '' required: - recordingAssets properties: recordingAssets: type: array items: $ref: '#/components/schemas/Asset' Asset: description: Describes a completed recordingasset. required: - name - recordingAssetKey - productName - createTime - creatorKey - accountKey - totalReferenceCount - mp4DownloadUrl properties: name: type: string description: The name of the asset recordingAssetKey: type: string description: The unique identifier for the recording asset productName: type: string description: The product with which the asset was originally created createTime: type: string format: date-time description: The create time of the asset creatorKey: type: string description: The key of the creator accountKey: type: string description: The key of the account totalReferenceCount: type: integer format: int32 description: The total number of references of the asset across products mp4DownloadUrl: type: string description: The url to download recording assets video transcriptDownloadUrl: type: string description: The url to download the transcript for the given recording video, available only if the transcript was generated recordingShareUrl: type: string description: The share link for recording webinarKey: type: string description: The webinarKey of parent webinar for which this online recordings was created, not available for uploaded recordings RecordingAssetsResponse: description: Describes a list of completed assets required: - data - total - page - pageSize properties: data: type: array items: $ref: '#/components/schemas/Asset' total: type: integer format: int32 description: The total elements page: type: integer format: int32 description: The current page number. The first page is 0 pageSize: type: integer format: int32 description: The page size WebinarByKey: description: Describes a webinar required: - webinarKey - webinarID - subject - description - organizerKey - organizerEmail - organizerName - times - registrationUrl - inSession - impromptu - type - timeZone - numberOfRegistrants - registrationLimit - locale - accountKey - recurrencePeriod - experienceType - isPasswordProtected properties: webinarKey: type: integer format: int64 description: The unique key of the webinar webinarID: type: string description: The 9-digit webinar ID subject: type: string description: The webinar subject. description: type: string description: A short description of the webinar organizerKey: type: integer format: int64 description: The key of the webinar organizer organizerEmail: type: string description: The email of the webinar organizer organizerName: type: string description: The name of the webinar organizer times: type: array items: $ref: '#/components/schemas/DateTimeRange' description: Array with startTime and endTime for the webinar sessions registrationUrl: type: string description: The URL the webinar invitees can use to register inSession: type: boolean description: Indicates whether there is a webinar session currently in progress impromptu: type: boolean description: A boolean flag indicating if the webinar type is impromptu type: description: Specifies the recurrence type. The possible values are 'single_session', 'series' and 'sequence'. type: string timeZone: type: string description: The timezone where the webinar is taking place numberOfRegistrants: type: integer format: int32 description: The number of registrants at the webinar registrationLimit: type: integer format: int32 description: The maximum number of registrants a webinar can have locale: type: string enum: - en_US - de_DE - es_ES - fr_FR - it_IT - zh_CN description: The webinar language accountKey: type: string description: The key of the account recurrencePeriod: description: Specifies the recurrence type. The possible values are 'single_session', 'series' and 'sequence'. type: string experienceType: description: Specifies the experience type. The possible values are 'classic', 'broadcast' and 'simulive'. type: string isPasswordProtected: type: boolean description: A boolean flag indicating if the webinar is password protected Webinar: description: Describes a webinar required: - webinarKey - webinarId - organizerKey - accountKey - subject - description - times - timeZone - locale - status - approvalType - registrationUrl - impromptu - isPasswordProtected - recurrenceType - experienceType properties: webinarKey: type: string description: The unique key of the webinar webinarID: type: string description: The 9-digit webinar ID organizerKey: type: string description: The key of the webinar organizer accountKey: type: string description: The key of the account subject: type: string description: The webinar subject description: type: string description: A short description of the webinar times: type: array items: $ref: '#/components/schemas/DateTimeRange' description: Array with startTime and endTime for the webinar sessions timeZone: type: string description: The timezone where the webinar is taking place locale: type: string enum: - en_US - de_DE - es_ES - fr_FR - it_IT - zh_CN description: The webinar language approvalType: type: string description: Specifies if the organizer needs to approve the webinar registrations. The possible values are 'AUTOMATIC' and 'MANUAL'. registrationUrl: type: string description: The URL the webinar invitees can use to register impromptu: type: boolean description: A boolean flag indicating if the webinar type is impromptu isPasswordProtected: type: boolean description: A boolean flag indicating if the webinar is password protected recurrenceType: description: Specifies the recurrence type. The possible values are 'single_session', 'series' and 'sequence'. type: string experienceType: description: Specifies the experience type. The possible values are 'classic', 'broadcast' and 'simulive'. type: string ReportingWebinarsResponse: description: Describes a list of webinars for an account within a given date range required: - _embedded - page properties: _embedded: $ref: '#/components/schemas/ReportingWebinars' page: $ref: '#/components/schemas/page' ReportingWebinars: description: '' required: - webinars properties: webinars: type: array items: $ref: '#/components/schemas/Webinar' BrokerWebinar: description: Describes a scheduled webinar required: - numberOfRegistrants - times - description - subject - inSession - organizerKey - webinarKey - webinarID - timeZone - registrationUrl - experienceType - organizerEmail - organizerName - impromptu - coorganizers - isOndemand properties: numberOfRegistrants: type: integer format: int32 description: The number of registrants at the webinar times: type: array items: $ref: '#/components/schemas/DateTimeRange' description: Array with startTime and endTime for the webinar sessions description: type: string description: A short description of the webinar subject: type: string description: The webinar subject inSession: type: boolean description: Indicates whether there is a webinar session currently in progress organizerKey: type: integer format: int64 description: The key of the webinar organizer webinarKey: type: integer format: int64 description: The unique key of the webinar webinarID: type: string description: The 9-digit webinar ID timeZone: type: string description: The timezone where the webinar is taking place registrationUrl: type: string description: The URL the webinar invitees can use to register experienceType: description: Specifies the experience type. The possible values are 'classic', 'broadcast' and 'simulive'. type: string coorganizers: type: array items: $ref: '#/components/schemas/CoorganizerDetails' description: Array with email address and organizerKey of Coorganizers organizerEmail: type: string description: The email address of the organizer organizerName: type: string description: The name of the webinar organizer impromptu: type: boolean description: A boolean flag indicating if the webinar type is impromptu isOndemand: type: boolean default: false description: A boolean flag indicating if the webinar should be ondemand page: required: - size - totalElements - totalPages - number properties: size: type: integer format: int32 description: The page size totalElements: type: integer format: int32 description: The total elements totalPages: type: integer format: int32 description: The pages count number: type: integer format: int32 description: The current page number. The first page is 0 firstPage: required: - href properties: href: type: string description: The first page link selfPage: required: - href properties: href: type: string description: The current page link lastPage: required: - href properties: href: type: string description: The last page link ReportingSessionsResponse: description: Describes a list of webinar sessions required: - _embedded - page properties: _embedded: $ref: '#/components/schemas/ReportingSessions' page: $ref: '#/components/schemas/page' ReportingSessions: description: '' required: - sessionInfoResources properties: sessionInfoResources: type: array items: $ref: '#/components/schemas/ReportingSession' ReportingSession: description: Describes a completed webinar session. required: - sessionKey - webinarKey - webinarName - startTime - endTime - registrantsAttended - registrantCount - accountKey - creatingOrganizerKey - creatingOrganizerName - startingOrganizerKey - startingOrganizerName - totalPollCount - timeZone - experienceType - webinarID properties: sessionKey: type: string description: The unique key of the webinar session webinarKey: type: string description: The unique key of the webinar webinarName: type: string description: The webinar name startTime: type: string format: date-time description: The starting time of the webinar session endTime: type: string format: date-time description: The ending time of the webinar session registrantsAttended: type: integer format: int32 description: The number of registrants who attended the webinar session registrantCount: type: integer format: int32 description: The total number of registrants for the webinar accountKey: type: string description: The key of the account creatingOrganizerKey: type: string description: The key of the webinar organizer who scheduled the webinar creatingOrganizerName: type: string description: The name of the webinar organizer who scheduled the webinar startingOrganizerKey: type: string description: The key of the webinar organizer who started the webinar session startingOrganizerName: type: string description: The name of the webinar organizer who started the webinar session totalPollCount: type: integer format: int32 description: The total number of polls for the webinar session timeZone: type: string description: The timezone where the webinar is taking place experienceType: description: Specifies the experience type. The possible values are 'classic', 'broadcast' and 'simulive'. type: string webinarID: type: string description: The 9-digit webinar ID webinarType: type: integer format: int32 description: The webinar type numRegLinkClicks: type: integer format: int32 description: The number of registration link clicks numOpenedInvitations: type: integer format: int32 description: The number of opened invitations includeCertificate: type: boolean description: Indicates whether to include certificate is enabled or disabled followupEmailTriggered: type: boolean description: Indicates whether to trigger followup email is enabled or disabled Session: description: Describes a completed webinar session. required: - startTime - registrantsAttended - webinarKey - webinarID - sessionKey - endTime properties: startTime: type: string format: date-time description: The starting time of the webinar session registrantsAttended: type: integer format: int32 description: The number of registrants who attended the webinar session webinarKey: type: integer format: int64 description: The unique key of the webinar webinarID: type: string description: The 9-digit webinar ID sessionKey: type: integer format: int64 description: The unique key of the webinar session endTime: type: string format: date-time description: The ending time of the webinar session Attendance: description: Describes the times the attendee joined and left a webinar session. required: - joinTime - leaveTime properties: joinTime: type: string format: date-time description: The time the attendee joined a webinar session leaveTime: type: string format: date-time description: The time the attendee left a webinar session ReportingAttendeeResponse: description: Describes a list of webinar attendees required: - _embedded - page properties: _embedded: $ref: '#/components/schemas/ReportingAttendees' page: $ref: '#/components/schemas/page' ReportingAttendees: description: '' required: - attendeeParticipationResponses properties: attendeeParticipationResponses: type: array items: $ref: '#/components/schemas/ReportingAttendee' ReportingAttendee: description: Describes the attendee of a webinar required: - registrantKey - sessionKey - email - attendanceTimeInSeconds - attendance - firstName - lastName properties: registrantKey: type: integer format: int64 description: The key of the webinar attendee sessionKey: type: integer format: int64 description: The unique key of the webinar session email: type: string description: The attendee's email address attendanceTimeInSeconds: type: integer format: int64 description: The total attendance time in seconds attendance: type: array items: $ref: '#/components/schemas/Attendance' description: The list of times the attendee joined and left the webinar session firstName: type: string description: The attendee's first name lastName: type: string description: The attendee's last name Attendee: description: Describes the attendee of a webinar required: - registrantKey - firstName - lastName - email - attendanceTimeInSeconds - attendance - sessionKey properties: registrantKey: type: integer format: int64 description: The key of the webinar attendee firstName: type: string description: The attendee's first name lastName: type: string description: The attendee's last name email: type: string description: The attendee's email address attendanceTimeInSeconds: type: integer format: int64 description: The total attendance time in seconds sessionKey: type: integer format: int64 description: The unique key of the webinar session attendance: type: array items: $ref: '#/components/schemas/Attendance' description: The list of times the attendee joined and left the webinar session AttendeeQuestion: description: Describes the question asked by an attendee during a webinar session; includes the answers given to it. required: - answers - question - askedBy - askerKey - dateAsked properties: answers: type: array items: $ref: '#/components/schemas/AnswerToAttendeeQuestion' description: Answer to a question of an attendee and key of the organizer that answered question: type: string description: The question asked by the attendee askedBy: type: string description: The email address of the attendee that asked the question askerKey: type: string description: The key of the attendee who asked the question dateAsked: type: string format: date-time description: The date on which the question was asked e.g. 2020-03-13T10:00:00Z AnswerToAttendeeQuestion: description: Describes an answer to a question asked by an attendee during a webinar session. required: - answer - answeredBy - answererRole - answerTime - answererEmail properties: answer: type: string description: An answer given to a question asked by an attendee during a webinar session answeredBy: type: string description: The key of the organizer that answered the attendee's question answererRole: type: string description: The role of the answerer answerTime: type: string description: The key of the organizer that answered the attendee's question answererEmail: type: string description: The answerer's email address Coorganizer: description: Describes a webinar co-organizer. A co-organizer without a GoToWebinar account is marked as external and is returned without a surname required: - joinLink - email - memberKey - external - surname - givenName properties: joinLink: type: string description: The co-organizer's join link email: type: string description: The co-organizer's email address memberKey: type: string description: The co-organizer's organizer key. A new member key is created for external co-organizers external: type: boolean description: If the co-organizer has no GoTo Webinar account, this value is set to 'true' surname: type: string description: The co-organizer's surname. For external co-organizers this parameter is not returned givenName: type: string description: The co-organizer's given name CoorganizerReqCreate: description: 'Details used for creating a co-organizer for a webinar. ' required: - external properties: external: type: boolean description: If the co-organizer has no GoTo Webinar account, this value has to be set to 'true' organizerKey: type: string description: The co-organizer's organizer key. This parameter has to be passed only, if 'external' is set to 'false' givenName: type: string description: The co-organizer's given name. This parameter has to be passed only, if 'external' is set to 'true' email: type: string description: The co-organizer's email address. This parameter has to be passed only, if 'external' is set to 'true' Panelist: description: Describes a webinar session panelist required: - joinLink - lastName - email - name - panelistId - firstName properties: joinLink: type: string description: The co-organizer's join link lastName: deprecated: true type: string description: DEPRECATED. The fields 'firstName' and 'lastName' are replaced by the field 'name' email: type: string description: The panelist's email address name: type: string description: The panelist's name panelistId: type: integer format: int64 description: The panelist's ID firstName: deprecated: true type: string description: DEPRECATED. The fields 'firstName' and 'lastName' are replaced by the field 'name' PanelistReqCreate: description: Describes a single panelist required: - email - name properties: email: type: string description: The panelist's email address name: type: string description: The panelist's name CreatedPanelist: description: Describes a created panelist required: - name - email - joinLink - panelistKey properties: name: type: string description: The panelist's name email: type: string description: The panelist's email address joinLink: type: string description: The panelist's join link panelistKey: type: string description: The panelist's key Audio: description: Describes the audio/conferencing information for a webinar. required: - type properties: type: $ref: '#/components/schemas/AudioType' confCallNumbers: type: object additionalProperties: $ref: '#/components/schemas/CallNumbers' description: | The conference call numbers and access codes per country. This will be returned only, if 'type' is not set to 'Private'. privateInfo: $ref: '#/components/schemas/PrivateInfo' CallNumbers: description: Conference call numbers per country. required: - accessCodes - toll properties: accessCodes: $ref: '#/components/schemas/AccessCodes' toll: type: string description: Conference number for toll calls. tollFree: type: string description: Conference number for toll-free calls. PrivateInfo: description: Phone numbers for an own conference call service. required: - attendee properties: attendee: type: string description: Text for the panelist when using an own conference call service organizer: type: string description: Text for the organizer when using an own conference call service panelist: type: string description: Text for the panelist when using an own conference call service AccessCodes: description: Describes the access codes for organizer, panelists and attendees required: - organizer - panelist - attendee properties: organizer: type: string description: Access code for the organizer panelist: type: string description: Access code for panelists attendee: type: string description: Access code for attendees AttendanceStatistics: description: Describes attendance metrics for a webinar session. required: - registrantCount - percentageAttendance - averageInterestRating - averageAttentiveness - averageAttendanceTimeSeconds properties: registrantCount: type: integer format: int32 description: The number of registrations for the webinar percentageAttendance: type: number format: float description: The percentage of registrants that actually attended the webinar session averageInterestRating: type: number format: float description: Numerical value 1-100 (100 being most interested) indicating the average interest rating of the webinar attendees averageAttentiveness: type: number format: float description: Average based on the focus of the attendees Viewer during the webinar session averageAttendanceTimeSeconds: type: number format: float description: Average attendance time in seconds Poll: description: A poll or survey launched by an organizer during or after a webinar session; includes the responses given to it by the attendees. required: - responses - question - numberOfResponses properties: responses: type: array items: $ref: '#/components/schemas/PollResponse' description: The responses given by the attendees to the poll or survey question: type: string description: The poll or survey question asked by the webinar organizer numberOfResponses: type: integer format: int32 description: The total number of responses received for this poll or survey PollAnswer: description: Describes the answer given by a webinar attendee to a poll or survey launched by an organizer. required: - answers - question properties: answer: type: string description: The answer given to the poll or survey question. Use `answers` array instead. example: Great deprecated: true answers: type: array description: The answer given to the poll or survey question items: type: string example: - Great - Super question: type: string description: The poll or survey question example: How was the experience? PollResponse: description: One of the potential responses/options to a poll or survey launched by an organizer during a webinar session. required: - text - percentage properties: text: type: string description: The text of the response/option to a poll or survey percentage: type: number format: float description: The percentage of responses that favored this particular option maximum: 100 minimum: 0 PollsAndSurveysStatistics: description: Details on the polls and surveys for a webinar session. required: - pollCount - surveyCount - questionsAsked - percentagePollsCompleted - percentageSurveysCompleted properties: pollCount: type: integer format: int32 description: The number of polls launched at a webinar session surveyCount: type: number format: float description: The percentage of surveys launched at a webinar session questionsAsked: type: integer format: int32 description: The number of questions asked at a webinar session percentagePollsCompleted: type: number format: float description: The percentage of polls completed by the attendees percentageSurveysCompleted: type: number format: float description: The percentage of surveys completed by the attendees SessionInfoStatistics: description: Describes session details for webinar session required: - webinarName - webinarId - sessionKey - timeZone - experienceType - recurrencePeriod - startTime - endTime - registrationEmailOpenedCount - registrationLinkClickedCount properties: webinarName: type: string description: Name of the webinar webinarId: type: string description: The 9-digit webinar ID sessionKey: type: string description: The key of the webinar session timeZone: type: string description: The time zone where the webinar will take place experienceType: description: Specifies the webinar experience type. type: string enum: - CLASSIC - BROADCAST - SIMULIVE recurrencePeriod: type: string startTime: type: string format: date-time description: The starting time of an interval, e.g. 2020-03-13T10:00:00Z endTime: type: string format: date-time description: The ending time of an interval, e.g. 2020-03-13T22:00:00Z registrationEmailOpenedCount: type: string description: The count of opened registration emails registrationLinkClickedCount: type: string description: The count of registration links clicked SessionPerformance: description: Describes performance details for webinar sessions required: - sessionInfo - attendance - pollsAndSurveys properties: sessionInfo: $ref: '#/components/schemas/SessionInfoStatistics' attendance: $ref: '#/components/schemas/AttendanceStatistics' pollsAndSurveys: $ref: '#/components/schemas/PollsAndSurveysStatistics' RegistrantCreated: description: Describes a newly created webinar registrant. required: - registrantKey - joinUrl properties: registrantKey: type: integer format: int64 description: The registrant's key joinUrl: type: string description: The URL the registrant will use to join the webinar. Registrant: description: Describes a webinar registrant required: - lastName - email - firstName - registrantKey - registrationDate - status - joinUrl - timeZone properties: lastName: type: string description: The registrant's last name email: type: string description: The registrant's email address firstName: type: string description: The registrant's first name registrantKey: type: integer format: int64 description: The registrant's key registrationDate: type: string format: date-time description: The registration date and time status: type: string enum: - APPROVED - DENIED - WAITING description: The registration status joinUrl: type: string description: The URL the registrant will use to join the webinar timeZone: type: string description: The time zone where the webinar will take place RegistrantArray: type: array items: $ref: '#/components/schemas/Registrant' RegistrantPaginatedResponse: description: Describes a list of webinar sessions required: - data - total - page - limit - pageSize properties: data: type: array items: $ref: '#/components/schemas/Registrant' total: type: integer format: int32 description: The total elements page: type: integer format: int32 description: The current page number. The first page is 0 limit: type: integer format: int32 description: The number of items per page pageSize: type: integer format: int32 description: The actual number of items in the current page RegistrantQAResponse: description: | Describes a completed registration question for a webinar registrant. If you use "Multiple choice" questions the response contains the numeric answerKey, otherwise the answer text. required: - questionKey properties: questionKey: type: integer format: int64 description: The unique key of the question responseText: type: string description: Answer of the question. answerKey: type: integer format: int64 description: The numeric key of the answer to a multiple-choice question. RegistrantFields: description: Detailed description of a all fields to register a registrant for a webinar. required: - firstName - lastName - email properties: firstName: type: string description: The registrant's first name lastName: type: string description: The registrant's last name email: type: string description: The registrant's email address source: type: string description: The source that led to the registration. This can be any string like 'Newsletter 123' or 'Marketing campaign ABC' address: type: string description: The registrant's address city: type: string description: The registrant's city state: type: string description: The registrant's state (US only) zipCode: type: string description: The registrant's zip (post) code country: type: string description: The registrant's country phone: type: string description: The registrant's phone organization: type: string description: The registrant's organization jobTitle: type: string description: The registrant's job title questionsAndComments: type: string description: Any questions or comments the registrant made at the time of registration industry: type: string description: The type of industry the registrant's organization belongs to numberOfEmployees: type: string description: The size in employees of the registrant's organization purchasingTimeFrame: type: string description: The time frame within which the product will be purchased purchasingRole: type: string description: The registrant's role in purchasing the product responses: type: array items: $ref: '#/components/schemas/RegistrantQAResponse' description: Set the answers of all questions RegistrantDetailed: description: Detailed description of a webinar registrant with all registration fields. required: - firstName - lastName - email - registrantKey - registrationDate - status - joinUrl - timeZone properties: lastName: type: string description: The registrant's last name email: type: string description: The registrant's email address firstName: type: string description: The registrant's first name registrantKey: type: integer format: int64 description: The registrant's key registrationDate: type: string format: date-time description: The registration date and time source: type: string description: The source that led to the registration. This can be any string like 'Newsletter 123' or 'Marketing campaign ABC' status: type: string enum: - APPROVED - DENIED - WAITING description: The registration status joinUrl: type: string description: The URL the registrant will use to join the webinar timeZone: type: string description: The time zone where the webinar will take place phone: type: string description: The registrant's phone state: type: string description: The registrant's state (US only) city: type: string description: The registrant's city organization: type: string description: The registrant's organization zipCode: type: string description: The registrant's zip (post) code numberOfEmployees: type: string description: The size in employees of the registrant's organization industry: type: string description: The type of industry the registrant's organization belongs to jobTitle: type: string description: The registrant's job title purchasingRole: type: string description: The registrant's role in purchasing the product implementationTimeFrame: type: string description: The time frame within which the product will be purchased purchasingTimeFrame: type: string description: The time frame within which the product will be purchased questionsAndComments: type: string description: Any questions or comments the registrant made at the time of registration employeeCount: type: string description: The size in employees of the registrant's organization country: type: string description: The registrant's country address: type: string description: The registrant's address type: type: string description: The type is REGULAR for 'One session' and 'Sequence' webinars. The type LATE is for registrants registering for past webinars. For webinar series this parameter is not passed enum: - LATE - REGULAR unsubscribed: type: boolean description: Indicates whether the registrant opted-out from receiving other emails from this webinar's organizer responses: description: Responses to custom questions type: array items: $ref: '#/components/schemas/CustomAnswers' RegistrationAnswer: description: Describes an answer to a multiple choice custom registration field. required: - answer - answerKey properties: answer: type: string description: The answer value answerKey: type: integer format: int64 description: The answer key RegistrationQuestion: description: Describes a custom field for a webinar registration. required: - questionKey - question - required - type - maxSize properties: questionKey: type: integer format: int64 description: The unique key of the custom registration field question: type: string description: The value (text) of the custom registration field required: type: boolean description: Indicates whether the custom registration field is compulsory type: type: string enum: - multipleChoice - shortAnswer description: Indicates whether the custom registration field requires a single short answer or whether it is a multiple choice question maxSize: type: integer format: int32 description: The character size of the custom registration field (max 1000) answers: type: array items: $ref: '#/components/schemas/RegistrationAnswer' description: The answers to a multiple choice custom registration field RegistrationField: description: Describes a field for a webinar registration. required: - field - required - maxSize properties: field: type: string description: The name of the registration field answers: type: array items: type: string description: List of choices for a multiple choice registration field required: type: boolean description: Indicates whether the custom registration field is compulsory maxSize: type: integer format: int32 description: The character size of the custom registration field (max 128) RegistrationFields: description: The fields to be completed on the webinar registration form. required: - questions - fields properties: questions: type: array items: $ref: '#/components/schemas/RegistrationQuestion' description: Custom fields created by the organizer for the webinar registration form fields: type: array items: $ref: '#/components/schemas/RegistrationField' description: The default fields the organizer has selected for the webinar registration form CustomAnswers: description: Answers to custom questions of the registrant required: - answer - question properties: answer: type: string description: Answer to a custom question when registering question: type: string description: Custom question for registering SecretKeyRequest: description: Representation of a secret key properties: validFrom: description: A date time in ISO8601 format, e.g. 2019-07-01T22:00:00Z. The secret key will be activated at the given date type: string SecretKeyResponse: description: Representation of a secret key properties: id: description: The unique identifier for the secret key type: integer value: description: The value of the secret key. This is used for generating a signature of events posted to the callback url type: string validFrom: description: A date time in ISO8601 format, e.g. 2019-07-01T22:00:00Z. The secret key will be activated at the given date type: string WebhooksResponse: description: List of webhooks required: - _embedded properties: _embedded: $ref: '#/components/schemas/Webhooks' Webhooks: description: '' required: - webhooks properties: webhooks: type: array items: $ref: '#/components/schemas/Webhook' WebhookState: type: string description: State of the webhook enum: - INACTIVE - ACTIVE Product: type: string description: Product of the events enum: - g2w CreateWebhookRequest: description: Representation of a single webhook required: - callbackUrl - eventName - eventVersion - product properties: callbackUrl: type: string description: A HTTPs url that can accept posted events. It should return 200 OK for GET requests. eventName: type: string description: Type of event for the webhook. Supported eventNames are registrant.added, registrant.joined, webinar.created, webinar.changed, survey.submitted eventVersion: type: string description: Version of event being subscribed for. Supported eventVersion is 1.0.0 product: $ref: '#/components/schemas/Product' Webhook: description: Representation of a single webhook required: - callbackUrl - eventName - eventVersion - product properties: callbackUrl: type: string description: A HTTPs url that can accept posted events. It should return 200 OK for GET requests. eventName: type: string description: Type of event for the webhook. Supported eventNames are registrant.added, registrant.joined, webinar.created, webinar.changed, survey.submitted eventVersion: type: string description: Version of event being subscribed for. Supported eventVersion is 1.0.0 product: $ref: '#/components/schemas/Product' webhookKey: type: string description: The unique identifier for the webhook state: $ref: '#/components/schemas/WebhookState' createTime: type: string description: The create time of the webhook UpdateWebhooksRequest: description: Describes a single webhook update request required: - webhookKey properties: callbackUrl: type: string description: A HTTPs url that can accept posted events. It should return 200 OK for GET requests. webhookKey: type: string description: The unique identifier for the webhook state: $ref: '#/components/schemas/WebhookState' UserSubscriptionState: type: string description: State of the user subscription enum: - INACTIVE - ACTIVE ActivationState: type: string description: Final state of user subscription. ActivationState will be ACTIVE if both webhook and user subscription states are ACTIVE, INACTIVE otherwise. enum: - INACTIVE - ACTIVE CreateUserSubscriptionRequest: description: Describes a single user subscription required: - webhookKey properties: callbackUrl: type: string description: A HTTPs url that can accept posted events. It should return 200 OK for GET requests. webhookKey: type: string description: The unique identifier for the webhook userSubscriptionState: $ref: '#/components/schemas/UserSubscriptionState' UserSubscriptionResponse: description: Describes a list of user subscriptions required: - _embedded properties: _embedded: $ref: '#/components/schemas/UserSubscriptions' UserSubscriptions: description: '' required: - userSubscriptions properties: userSubscriptions: type: array items: $ref: '#/components/schemas/UserSubscription' UserSubscription: description: Describes a single user subscription properties: callbackUrl: type: string description: A HTTPs url that can accept posted events. It should return 200 OK for GET requests. eventName: type: string description: Type of event of the webhook eventVersion: type: string description: Version of event being subscribed for product: $ref: '#/components/schemas/Product' webhookKey: type: string description: The unique identifier for the webhook userSubscriptionKey: type: string description: The unique identifier for the user subscription userSubscriptionState: $ref: '#/components/schemas/UserSubscriptionState' activationState: $ref: '#/components/schemas/ActivationState' createTime: type: string description: The create time of the webhook UpdateUserSubscriptionsRequest: description: Describes a single user subscription update request required: - webhookKey - userSubscriptionKey properties: callbackUrl: type: string description: A HTTPs url that can accept posted events. It should return 200 OK for GET requests. webhookKey: type: string description: The unique identifier for the webhook userSubscriptionKey: type: string description: The unique identifier for the user subscription userSubscriptionState: $ref: '#/components/schemas/UserSubscriptionState' WebinarStartUrlResponse: description: Describes a webinar start url required: - startUrl properties: startUrl: type: string description: The URL that can be used to start a webinar CopyWebinar: description: Describes the details of the webinar to be copied properties: subject: type: string description: The name/subject of the webinar (128 characters maximum) description: type: string description: A description of the webinar (2048 characters maximum) type: description: | Specifies the webinar type. The default type value is 'single_session', which is used to create a single webinar session. The possible values are 'single_session', 'series' and 'sequence'. If type is set to 'single_session', a single webinar session is created. If type is set to 'series', a webinar series is created. In this case 2 or more timeframes must be specified for each webinar. Example: 'times': [{'startTime': '...', 'endTime':'...'}, {'startTime': '...', 'endTime': '...'},{'startTime': '...','endTime': '...'}]. If type is set to 'sequence', a sequence of webinars is created. In this case 2 or more timeframes must be specified for each webinar. If given webinar is 'single_session', we can create 'sequence' or 'series' webinar, in this case 2 or more timeframes must be specified for each webinar (same example as above). If given webinar is 'series', we can create 'single_session' or 'sequence' webinar with 2 or more timeframes must be specified. If given webinar is simulive webinar 'sequence' type is not supported. type: string default: single_session recordingAssetKey: type: string description: The recording asset with from the simulive webinar should be created from. In case the recordingasset was created as an online recording the simulive webinar settings, poll and surveys would be copied from the webinar whose session was recorded. We can get recordingasset from [RecordingAssets](GoToWebinarV2#operation/searchAssets) isOndemand: type: boolean default: false description: A boolean flag indicating if the webinar should be ondemand locale: type: string enum: - en_US - de_DE - es_ES - fr_FR - it_IT - zh_CN description: The webinar language emailSettings: $ref: '#/components/schemas/WebinarEmailSettings' times: description: Array with start and end time(s) for webinar type: array items: $ref: '#/components/schemas/DateTimeRange' timeZone: type: string description: The time zone where the webinar is taking place (must be a valid time zone ID). If this parameter is not passed, the timezone of the organizer's profile will be used CopiedWebinar: description: Describes a newly copied webinar. required: - webinarKey properties: webinarKey: type: string description: The unique key of the webinar. CoorganizerDetails: description: Email address and the organizerKey of the coorganizer required: - email - organizerKey properties: email: type: string description: The email address of the coorganizer organizerKey: type: integer format: int64 description: The key of the webinar coorganizer