Skip to main content

GoTo Webinar Component

GoTo Webinar is a platform for hosting, managing, and attending live or pre-recorded webinars.

Component key: gotowebinar

Changelog ↓

Description

GoTo Webinar is a platform for hosting, managing, and attending live or pre-recorded webinars.

Use the component to schedule, manage, and subscribe to webinars, registrants, attendees, and more.

API Documentation:

The component was built using the GoTo Webinar 2.0 REST API.

Connections

OAuth 2.0

Creating an OAuth Client:

  1. In the GoTo Developer portal, navigate to OAuth Clients . Choose Create a client to create a new client.
  2. If you already have clients, they are listed here. Scroll to the bottom of this listing and select Create a New Client.
  3. On the Details page, enter a Client name, an optional Description, and enter the Redirect URI as https://oauth2.prismatic.io/callback.
  4. On the next page, select the proper scopes needed for a Goto Webinar integration.
  5. The next page will provide the Client ID and Client Secret. Along with the assigned scopes from the previous page, enter these into the connection configuration of the integration.
InputNotesExample
Authorize URL

The OAuth2 Authorize URL for GoTo Webinar.

https://authentication.logmeininc.com/oauth/authorize
Client ID

The OAuth2 Client ID for GoTo Webinar.

Client Secret

The OAuth2 Client Secret for GoTo Webinar.

Organizer Key

The GoTo Webinar Organizer Key.

Scopes

Space separated list of OAuth2 scopes for GoTo Webinar.

identity:scim.me collab:
Token URL

The OAuth2 Token URL for GoTo Webinar

https://authentication.logmeininc.com/oauth/token

Triggers

User Subscription

Triggers when a user subscribes to a plan | key: userSubscriptionTrigger

InputNotesExample
Connection
Event Name

The name of the event to subscribe to.

Event Version

The version of the event to subscribe to.

1.0.0

Data Sources

Select Organizer

Select a Organizer from the list of available Organizer Keys | key: selectOrganizer | type: picklist

InputNotesExample
Account Key

The key of the account.

123456790
Connection
From Time

Start of the datetime range in ISO8601 UTC format.

2020-03-13T10:00:00Z
From Time

End of the datetime range in ISO8601 UTC format.

2020-03-13T10:00:00Z

Select Webhook

Select a webhook from a list of available webhooks. | key: selectWebhook | type: picklist

InputNotesExample
Connection

Select Webinar

Select a webinar from the list of available webinars by your Account Key. | key: selectWebinar | type: picklist

InputNotesExample
Account Key

The key of the account.

123456790
Connection
From Time

Start of the datetime range in ISO8601 UTC format.

2020-03-13T10:00:00Z
From Time

End of the datetime range in ISO8601 UTC format.

2020-03-13T10:00:00Z

Actions

Cancel Webinar

Cancels a specific webinar. | key: cancelWebinar

InputNotesExample
Connection
Delete All

Specifies whether all scheduled sessions should be deleted if the webinar is part of a series. Default behavior is true.

false
Send Cancellation Email

Indicates whether cancellation notice emails should be sent. Default behavior is false.

Webinar Key

The key identifier of the webinar.

123456790

{
"data": {
"message": "Action performed successfully."
}
}

Create Registrant

Register an attendee for a scheduled webinar. | key: createRegistrant

InputNotesExample
Address

The address of the registrant.

123 Main St
City

The city of the registrant.

Sioux Falls
Connection
Country

The country of the registrant.

United States
Email

The email address of the registrant.

johndoe@testemail.com
First Name

The first name of the registrant.

John
Industry

The industry of the registrant.

IT
Job Title

The job title of the registrant.

Software Engineer
Last Name

The last name of the registrant.

Doe
Number of Employees

The number of employees in the organization.

100
Organization

The organization of the registrant.

Acme Corp
Phone

The phone number of the registrant.

605-555-5555
Purchasing Role

The role of the registrant in the purchasing process.

Decision Maker
Purchasing Time Frame

The time frame within which the product will be purchased.

1-3 months
Questions and Comments

Any questions or comments the registrant has.

I have a question about the webinar.
Responses

The responses to the custom questions.

Source

The source that led to the registration. This can be any string like 'Newsletter 123' or 'Marketing campaign ABC'

website
State

The state of the registrant.

South Dakota
Webinar Key

The key identifier of the webinar.

123456790
Zip Code

The zip code of the registrant.

57104

{
"data": {
"registrantKey": "string",
"joinUrl": "string"
}
}

Create User Subscription

A new user subscriptions will be created as a webhook. | key: createUserSubscription

InputNotesExample
Connection
Event Name

The name of the event to subscribe to.

Event Version

The version of the event to subscribe to.

1.0.0
Webhook URL

A HTTPs url that can accept posted events. It should return 200 OK for GET requests.

https://example.com/webhook

{
"data": {
"_embedded": {
"userSubscriptions": [
{
"callbackUrl": "string",
"eventName": "string",
"eventVersion": "string",
"product": "g2w",
"webhookKey": "string",
"userSubscriptionKey": "string",
"userSubscriptionState": "INACTIVE",
"activationState": "INACTIVE",
"createTime": "string"
}
]
}
}
}

Create Webinar

Creates a single session webinar, a sequence of webinars, or a series of webinars. | key: createWebinar

InputNotesExample
Should Send Absentee Follow Up Email

Whether or not to send an absentee follow up email to the registrants.

Should Send Attendee Follow Up Email

Whether or not to send an attendee follow up email to the registrants.

Should Send Confirmation Email

Whether or not to send a confirmation email to the registrants.

Connection
Description

The description of the webinar

Learn how to create a webinar from scratch
Experience Type

The experience type of the webinar.

CLASSIC
Is Breakout

A boolean flag indicating if the webinar should be breakout.

false
Is On Demand

A boolean flag indicating if the webinar should be On-Demand.

false
Is Password Protected

Indicates if the webinar is password protected.

false
Locale

The locale to use.

en_US
Recording Asset Key

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.

your-recording-asset-key
Should Send Seminder Email

Whether or not to send a reminder email to the registrants.

Subject

The subject of the webinar

How to Create a Webinar
Time Range for Webinar

Time Range Array for the webinar. Please note that the examples provided describe the expected payload given all webinar types. Only one array should be used based on the webinar type.

Timezone

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.

America/Chicago
Webinar Type

The type of the webinar. if 'Single Session' is selected, the webinar will be a single session. if 'Series' is selected, the webinar will be a series. if 'Sequence' is selected, the webinar will be a sequence.

{
"data": {
"webinarKey": "string",
"recurrenceKey": "string"
}
}

Delete Instanced Subscriptions

Deletes all subscriptions that point to a flow in this instance | key: deleteInstancedWebhooksAction

InputNotesExample
Connection

{
"data": {
"message": "Action performed successfully."
}
}

Delete Registrant

Removes a webinar registrant from current registrations for the specified webinar. The webinar must be a scheduled, future webinar. | key: deleteRegistrant

InputNotesExample
Connection
Registrant Key

The key of the registrant.

123456790
Webinar Key

The key identifier of the webinar.

123456790

{
"data": {
"message": "Action performed successfully."
}
}

Delete User Subscriptions

Deletes one or more user subscriptions. | key: deleteUserSubscription

InputNotesExample
Connection
Delete Webhooks

Set to true if you want the affiliated webhook deleted with the user subscription. Note, deleting the webhook will also delete any other user subscriptions tied to the corresponding webhook key.

false
User Subscription Keys

The subscription keys to act upon.

{
"data": {
"message": "Action performed successfully."
}
}

Get Attendee

Retrieve registration details for a particular attendee of a specific webinar session | key: getAttendee

InputNotesExample
Connection
Registrant Key

The key of the registrant.

123456790
Session Key

The key of the webinar session.

123456790
Webinar Key

The key identifier of the webinar.

123456790

{
"data": {
"lastName": "string",
"email": "string",
"firstName": "string",
"registrantKey": 0,
"registrationDate": "2019-08-24T14:15:22Z",
"status": "APPROVED",
"joinUrl": "string",
"timeZone": "string"
}
}

Get Registrant

Retrieve registration details for a specific registrant. | key: getRegistrant

InputNotesExample
Connection
Registrant Key

The key of the registrant.

123456790
Webinar Key

The key identifier of the webinar.

123456790

{
"data": {
"lastName": "string",
"email": "string",
"firstName": "string",
"registrantKey": "string",
"registrationDate": "2019-08-24T14:15:22Z",
"source": "string",
"status": "APPROVED",
"joinUrl": "string",
"timeZone": "string",
"phone": "string",
"state": "string",
"city": "string",
"organization": "string",
"zipCode": "string",
"numberOfEmployees": "string",
"industry": "string",
"jobTitle": "string",
"purchasingRole": "string",
"implementationTimeFrame": "string",
"purchasingTimeFrame": "string",
"questionsAndComments": "string",
"employeeCount": "string",
"country": "string",
"address": "string",
"type": "LATE",
"unsubscribed": true,
"responses": [
{
"answer": "string",
"question": "string"
}
]
}
}

Get User Subscription

Retrieve a user subscription by User Subscription Key. | key: getUserSubscription

InputNotesExample
Connection
User Subscription Key

The unique identifier of the user subscription.

123456790

{
"data": {
"callbackUrl": "string",
"eventName": "string",
"eventVersion": "string",
"product": "g2w",
"webhookKey": "string",
"userSubscriptionKey": "string",
"userSubscriptionState": "INACTIVE",
"activationState": "INACTIVE",
"createTime": "string"
}
}

Get Webinars

Returns upcoming and past webinars for the currently authenticated organizer that are scheduled within the specified date/time range. | key: getWebinars

InputNotesExample
Account Key

The key of the account. If using this input instead of the organizer key, the action will retrieve the webinars by Account Key

123456790
Connection
Fetch All

If true, all pages will be fetched. If false, only the first page will be fetched.

false
From Time

Start of the datetime range in ISO8601 UTC format.

2020-03-13T10:00:00Z
Page Number

The page number to be displayed. The first page is 0.

0
Page Size

The page size to use in pagination, Maximum value is 200.

200
From Time

End of the datetime range in ISO8601 UTC format.

2020-03-13T10:00:00Z

{
"data": {
"_embedded": {
"webinars": [
{
"webinarKey": "string",
"webinarID": "string",
"organizerKey": "string",
"accountKey": "string",
"subject": "string",
"description": "string",
"times": [
{
"startTime": "2019-08-24T14:15:22Z",
"endTime": "2019-08-24T14:15:22Z"
}
],
"timeZone": "string",
"locale": "en_US",
"approvalType": "string",
"registrationUrl": "string",
"impromptu": true,
"isPasswordProtected": true,
"recurrenceType": "string",
"experienceType": "string"
}
]
},
"page": {
"size": 0,
"totalElements": 0,
"totalPages": 0,
"number": 0
}
}
}

List All Attendees for all Webinar Sessions

Returns all attendees for all sessions of the specified webinar. | key: listAttendees

InputNotesExample
Connection
Fetch All

If true, all pages will be fetched. If false, only the first page will be fetched.

false
Webinar Key

The key identifier of the webinar.

123456790

{
"data": {
"property1": {
"sessionInfo": {
"webinarName": "string",
"webinarId": "string",
"sessionKey": "string",
"timeZone": "string",
"experienceType": "CLASSIC",
"recurrencePeriod": "string",
"startTime": "2019-08-24T14:15:22Z",
"endTime": "2019-08-24T14:15:22Z",
"registrationEmailOpenedCount": "string",
"registrationLinkClickedCount": "string"
},
"attendance": {
"registrantCount": 0,
"percentageAttendance": 0.1,
"averageInterestRating": 0.1,
"averageAttentiveness": 0.1,
"averageAttendanceTimeSeconds": 0.1
},
"pollsAndSurveys": {
"pollCount": 0,
"surveyCount": 0.1,
"questionsAsked": 0,
"percentagePollsCompleted": 0.1,
"percentageSurveysCompleted": 0.1
}
},
"property2": {
"sessionInfo": {
"webinarName": "string",
"webinarId": "string",
"sessionKey": "string",
"timeZone": "string",
"experienceType": "CLASSIC",
"recurrencePeriod": "string",
"startTime": "2019-08-24T14:15:22Z",
"endTime": "2019-08-24T14:15:22Z",
"registrationEmailOpenedCount": "string",
"registrationLinkClickedCount": "string"
},
"attendance": {
"registrantCount": 0,
"percentageAttendance": 0.1,
"averageInterestRating": 0.1,
"averageAttentiveness": 0.1,
"averageAttendanceTimeSeconds": 0.1
},
"pollsAndSurveys": {
"pollCount": 0,
"surveyCount": 0.1,
"questionsAsked": 0,
"percentagePollsCompleted": 0.1,
"percentageSurveysCompleted": 0.1
}
}
}
}

List Registrants

Retrieve registration details for all registrants of a specific webinar. | key: listRegistrants

InputNotesExample
Connection
Page Size

The page size to use in pagination, Maximum value is 200.

200
Page Number

The page number to be displayed. The first page is 0.

0
Webinar Key

The key identifier of the webinar.

123456790

{
"data": [
{
"lastName": "string",
"email": "string",
"firstName": "string",
"registrantKey": "string",
"registrationDate": "2019-08-24T14:15:22Z",
"status": "APPROVED",
"joinUrl": "string",
"timeZone": "string"
}
]
}

List Session Attendees

Retrieve details for all attendees of a specific webinar session. | key: listSessionAttendees

InputNotesExample
Connection
Session Key

The key of the webinar session.

123456790
Webinar Key

The key identifier of the webinar.

123456790

{
"data": [
{
"registrantKey": 0,
"firstName": "string",
"lastName": "string",
"email": "string",
"attendanceTimeInSeconds": 0,
"sessionKey": 0,
"attendance": [
{
"joinTime": "2019-08-24T14:15:22Z",
"leaveTime": "2019-08-24T14:15:22Z"
}
]
}
]
}

List User Subscriptions

Retrieve a list of user subscriptions. | key: listUserSubscriptions

InputNotesExample
Connection

{
"data": {
"_embedded": {
"userSubscriptions": [
{
"callbackUrl": "string",
"eventName": "string",
"eventVersion": "string",
"product": "g2w",
"webhookKey": "string",
"userSubscriptionKey": "string",
"userSubscriptionState": "INACTIVE",
"activationState": "INACTIVE",
"createTime": "string"
}
]
}
}
}

Raw Request

Send a raw HTTP request to GoTo Webinar. | key: rawRequest

InputNotesExample
Connection
Data

The HTTP body payload to send to the URL.

{"exampleKey": "Example Data"}
Debug Request

Enabling this flag will log out the current request.

false
File Data

File Data to be sent as a multipart form upload.

[{key: "example.txt", value: "My File Contents"}]
File Data File Names

File names to apply to the file data inputs. Keys must match the file data keys above.

Form Data

The Form Data to be sent as a multipart form upload.

[{"key": "Example Key", "value": new Buffer("Hello World")}]
Header

A list of headers to send with the request.

User-Agent: curl/7.64.1
Max Retry Count

The maximum number of retries to attempt. Specify 0 for no retries.

0
Method

The HTTP method to use.

Query Parameter

A list of query parameters to send with the request. This is the portion at the end of the URL similar to ?key1=value1&key2=value2.

Response Type

The type of data you expect in the response. You can request json, text, or binary data.

json
Retry On All Errors

If true, retries on all erroneous responses regardless of type. This is helpful when retrying after HTTP 429 or other 3xx or 4xx errors. Otherwise, only retries on HTTP 5xx and network errors.

false
Retry Delay (ms)

The delay in milliseconds between retries. This is used when 'Use Exponential Backoff' is disabled.

0
Timeout

The maximum time that a client will await a response to its request

2000
URL

Input the path only (/organizers), The base URL is already included. For example, in order to send a webinar request, only /organizer/{organizerKey}/webinars is entered in this field.

/organizers/{organizerKey}/webinars
Use Exponential Backoff

Specifies whether to use a pre-defined exponential backoff strategy for retries. When enabled, 'Retry Delay (ms)' is ignored.

false

Update User Subscription

Updates an existing user subscription. | key: updateUserSubscription

InputNotesExample
Webhook URL

A HTTPs url that can accept posted events. It should return 200 OK for GET requests.

https://example.com/webhook
Connection
User Subscription Key

The key of the user subscription to update

userSubscriptionKey1
User Subscription State

The state of the user subscription

ACTIVE
Webhook Key

The key of the webhook to update

webhookKey1

{
"data": {
"message": "Action performed successfully."
}
}

Update Webinar

Updates a specific webinar. | key: updateWebinar

InputNotesExample
Should Send Absentee Follow Up Email

Whether or not to send an absentee follow up email to the registrants.

Should Send Attendee Follow Up Email

Whether or not to send an attendee follow up email to the registrants.

Should Send Confirmation Email

Whether or not to send a confirmation email to the registrants.

Connection
Description

The description of the webinar

Learn how to create a webinar from scratch
Locale

The locale to use.

en_US
Notify Participants

Notify participants of the webinar.

false
Should Send Seminder Email

Whether or not to send a reminder email to the registrants.

Subject

The subject of the webinar

How to Create a Webinar
Time Range for Webinar

The time range of the webinar.

Timezone

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.

America/Chicago
Webinar Key

The key identifier of the webinar.

123456790

{
"data": {
"message": "Action performed successfully."
}
}

Changelog

2025-10-17

Enhanced webhook lifecycle management with improved user subscription trigger handling and automated cleanup.

2025-04-07

Initial release of GoTo Webinar component with comprehensive webinar management, attendee tracking, and user subscription capabilities.