GoTo Webinar
App · Video Conferencing · 20 actions
Schedule GoTo webinars, register attendees and panelists, and read attendance, polls and questions back.
Actions
| Action | What it does |
|---|---|
| Cancel a webinar | Cancel a webinar, optionally emailing its registrants. |
| Copy a webinar | Create a new webinar from an existing one, at a new date and time. |
| Create a webinar | Schedule a new webinar and get back its registration key. |
| Get a registrant | Read one registrant, including every field and custom answer they gave. |
| Get a webinar | Read one webinar's details, including how many people have registered. |
| Get a webinar's start URL | Get the link that starts a webinar as its organizer, to send to a presenter. |
| Get registration fields | Read a webinar's registration form: its custom questions, their answer keys, and the standard fields it asks for. |
| Get webinar performance | Read attendance, poll and survey figures for every session of a webinar that has been run. |
| Invite panelists | Invite one or more panelists to a webinar and get back their join links. |
| List panelists | List a webinar's panelists and their join links. |
| List registrants | List everyone registered for a webinar. |
| List session attendees | List everyone who attended one past session. |
| List session polls | Read the poll answers collected during a past session. |
| List session questions | Read the questions attendees asked during a past session, and the answers they were given. |
| List webinar attendees | List everyone who attended any session of a webinar, with how long they stayed. |
| List webinar sessions | List the past sessions of a webinar, with their attendance counts and session keys. |
| List webinars | List the webinars scheduled between two dates, upcoming or past. |
| Register someone for a webinar | Register a person for a webinar and get back their personal join link. |
| Remove a registrant | Remove someone's registration from a webinar that has not happened yet. |
| Update a webinar | Change a scheduled webinar's title, description, times or language. |
Cancel a webinar
Cancel a webinar, optionally emailing its registrants.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
- Email registrants
send_cancellation_emailstrue/false - Tell everyone registered that it is cancelled.Default:
false. - Cancel every session
delete_alltrue/false - For a series, cancel all of its remaining sessions rather than just this one.Default:
true.
Outputs
cancelledtrue/falsewebinar_keytext
Example output
{
"cancelled": true,
"webinar_key": "9876543210987654321"
}Copy a webinar
Create a new webinar from an existing one, at a new date and time.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
- New title
subjecttextRequired - The title of the copy.
- Starts at
start_timedate and timeRequired - When the webinar starts.
- Ends at
end_timedate and timeRequired - When the webinar ends.
- Description
descriptiontext - A description for the copy.
- Extra sessions
additional_sessionslist - Extra dates for a series, each an object with 'start_time' and 'end_time'. Leave empty for a one-off webinar.
- Time zone
time_zonetext - The time zone the webinar is held in, such as America/New_York. Leave blank to use the organizer's own time zone.
- Webinar type
webinar_typetext - Whether this is a one-off webinar or a series. A series needs at least one extra session.One of:
single_session(Single session — one date and time),series(Series — the same webinar on several dates). Default:single_session. - Language
localetext - The language of the registration and confirmation pages.One of:
en_US(English (US)),de_DE(German),es_ES(Spanish),fr_FR(French),it_IT(Italian),zh_CN(Chinese (Simplified)). - Available on demand
is_ondemandtrue/false - Let people watch the recording after the event.
Outputs
source_webinar_keytextsubjecttextwebinar_keytext
Example output
{
"source_webinar_key": "9876543210987654321",
"subject": "Product launch (repeat)",
"webinar_key": "1111111111111111111"
}Create a webinar
Schedule a new webinar and get back its registration key.
Inputs
- Title
subjecttextRequired - The webinar's title (up to 128 characters).
- Starts at
start_timedate and timeRequired - When the webinar starts.
- Ends at
end_timedate and timeRequired - When the webinar ends.
- Description
descriptiontext - A short description (up to 2048 characters).
- Time zone
time_zonetext - The time zone the webinar is held in, such as America/New_York. Leave blank to use the organizer's own time zone.
- Webinar type
webinar_typetext - Whether this is a one-off webinar or a series. A series needs at least one extra session.One of:
single_session(Single session — one date and time),series(Series — the same webinar on several dates). Default:single_session. - Extra sessions
additional_sessionslist - Extra dates for a series, each an object with 'start_time' and 'end_time'. Leave empty for a one-off webinar.
- Language
localetext - The language of the registration and confirmation pages.One of:
en_US(English (US)),de_DE(German),es_ES(Spanish),fr_FR(French),it_IT(Italian),zh_CN(Chinese (Simplified)). - Experience
experience_typetext - How attendees take part in the webinar.One of:
CLASSIC(Classic — a standard webinar),BROADCAST(Broadcast — attendees watch in their browser),SIMULIVE(Simulive — play a recording as a live event). Default:CLASSIC. - Require a password
is_password_protectedtrue/false - Ask attendees for a password before they join.
- Available on demand
is_ondemandtrue/false - Let people watch the recording after the event.
- Send confirmation emails
confirmation_emailtrue/false - Email each registrant a confirmation when they sign up.
- Send reminder emails
reminder_emailtrue/false - Email registrants a reminder before the webinar starts.
- Send follow-up to absentees
absentee_followup_emailtrue/false - Email registrants who did not attend afterwards.
Outputs
recurrence_keytextsubjecttextwebinar_keytext
Example output
{
"subject": "Product launch",
"webinar_key": "9876543210987654321"
}Get a registrant
Read one registrant, including every field and custom answer they gave.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
- Registrant key
registrant_keytextRequired - The registrant to read. Use List registrants to find one.
Outputs
addresstextcitytextcountrytextemailtextemployee_counttextfirst_nametextimplementation_time_frametextindustrytextjob_titletextjoin_urltextlast_nametextnumber_of_employeestextorganizationtextphonetextpurchasing_roletextpurchasing_time_frametextquestions_and_commentstextregistrant_keytextregistration_datetextresponseslistsourcetextstatetextstatustexttime_zonetexttypetextunsubscribedtrue/falsewebinar_keytextzip_codetext
Example output
{
"email": "sam@example.com",
"first_name": "Sam",
"job_title": "Analyst",
"join_url": "https://attendee.gotowebinar.com/join/1",
"last_name": "Attendee",
"organization": "Example Ltd",
"registrant_key": "2222222222222222222",
"registration_date": "2026-11-20T09:00:00Z",
"responses": [
{
"answer": "A colleague",
"question": "How did you hear about us?"
}
],
"status": "APPROVED",
"time_zone": "America/New_York",
"type": "REGULAR",
"webinar_key": "9876543210987654321"
}Get a webinar
Read one webinar's details, including how many people have registered.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
Outputs
account_keytextdescriptiontextexperience_typetextimpromptutrue/falsein_sessiontrue/falseis_password_protectedtrue/falselocaletextnumber_of_registrantsnumberorganizer_emailtextorganizer_keytextorganizer_nametextrecurrence_periodtextregistration_limitnumberregistration_urltextsubjecttexttime_zonetexttimeslisttypetextwebinar_idtextwebinar_keytext
Example output
{
"description": "A look at what is new.",
"experience_type": "classic",
"in_session": false,
"is_password_protected": false,
"locale": "en_US",
"number_of_registrants": 12,
"organizer_email": "organizer@example.com",
"organizer_name": "Dana Organizer",
"registration_limit": 500,
"registration_url": "https://attendee.gotowebinar.com/register/1",
"subject": "Product launch",
"time_zone": "America/New_York",
"times": [
{
"end_time": "2026-12-01T18:00:00Z",
"start_time": "2026-12-01T17:00:00Z"
}
],
"type": "single_session",
"webinar_id": "123456789",
"webinar_key": "9876543210987654321"
}Get a webinar's start URL
Get the link that starts a webinar as its organizer, to send to a presenter.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
Outputs
start_urltextwebinar_keytext
Example output
{
"start_url": "https://global.gotowebinar.com/mainstage/start/1",
"webinar_key": "9876543210987654321"
}Get registration fields
Read a webinar's registration form: its custom questions, their answer keys, and the standard fields it asks for.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
Outputs
countnumberfieldslistquestionslistwebinar_keytext
Example output
{
"count": 2,
"fields": [
{
"field": "organization",
"max_size": 128,
"required": false
}
],
"questions": [
{
"answers": [
{
"answer": "A colleague",
"answer_key": "4444444444444444444"
}
],
"max_size": 1000,
"question": "How did you hear about us?",
"question_key": "3333333333333333333",
"required": false,
"type": "multipleChoice"
}
],
"webinar_key": "9876543210987654321"
}Get webinar performance
Read attendance, poll and survey figures for every session of a webinar that has been run.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
Outputs
countnumbersessionslistwebinar_keytext
Example output
{
"count": 1,
"sessions": [
{
"attendance": {
"average_attendance_time_seconds": 2100.0,
"average_attentiveness": 81.0,
"average_interest_rating": 72.0,
"percentage_attendance": 58.3,
"registrant_count": 12
},
"polls_and_surveys": {
"percentage_polls_completed": 66.0,
"percentage_surveys_completed": 40.0,
"poll_count": 2,
"questions_asked": 4,
"survey_count": 1.0
},
"session_info": {
"end_time": "2026-12-01T18:00:00Z",
"experience_type": "CLASSIC",
"recurrence_period": "single_session",
"registration_email_opened_count": "8",
"registration_link_clicked_count": "5",
"session_key": "1234567890123456789",
"start_time": "2026-12-01T17:00:00Z",
"time_zone": "America/New_York",
"webinar_id": "123456789",
"webinar_name": "Product launch"
},
"session_key": "1234567890123456789"
}
],
"webinar_key": "9876543210987654321"
}Invite panelists
Invite one or more panelists to a webinar and get back their join links.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
- Panelists
panelistslistRequired - The people to invite. Each entry needs a 'name' and an 'email'.
Outputs
countnumberpanelistslistwebinar_keytext
Example output
{
"count": 1,
"panelists": [
{
"email": "ada@example.com",
"join_link": "https://global.gotowebinar.com/join/1",
"name": "Ada Panelist",
"panelist_key": "6666666666666666666"
}
],
"webinar_key": "9876543210987654321"
}List panelists
List a webinar's panelists and their join links.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
Outputs
countnumberpanelistslistwebinar_keytext
Example output
{
"count": 1,
"panelists": [
{
"email": "ada@example.com",
"join_link": "https://global.gotowebinar.com/join/1",
"name": "Ada Panelist",
"panelist_key": "6666666666666666666"
}
],
"webinar_key": "9876543210987654321"
}List registrants
List everyone registered for a webinar.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
- Page
pagenumber - Which page of results to read. The first page is 0.From 0 to 10000.
- Results per page
limitnumber - How many results to read at once (up to 200).From 1 to 200.
Outputs
countnumberlimitnumberpagenumberpage_sizenumberregistrantslisttotalnumberwebinar_keytext
Example output
{
"count": 1,
"limit": 20,
"page": 0,
"page_size": 1,
"registrants": [
{
"email": "sam@example.com",
"first_name": "Sam",
"join_url": "https://attendee.gotowebinar.com/join/1",
"last_name": "Attendee",
"registrant_key": "2222222222222222222",
"registration_date": "2026-11-20T09:00:00Z",
"status": "APPROVED",
"time_zone": "America/New_York"
}
],
"total": 1,
"webinar_key": "9876543210987654321"
}List session attendees
List everyone who attended one past session.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
- Session key
session_keytextRequired - A past session of that webinar. Sessions only exist once a webinar has been run: use List webinar sessions to find one.
Outputs
attendeeslistcountnumbersession_keytextwebinar_keytext
Example output
{
"attendees": [
{
"attendance": [
{
"join_time": "2026-12-01T17:01:00Z",
"leave_time": "2026-12-01T17:41:00Z"
}
],
"attendance_time_in_seconds": 2400,
"email": "attendee@example.com",
"first_name": "Sam",
"last_name": "Attendee",
"registrant_key": "2222222222222222222",
"session_key": "1234567890123456789"
}
],
"count": 1,
"session_key": "1234567890123456789",
"webinar_key": "9876543210987654321"
}List session polls
Read the poll answers collected during a past session.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
- Session key
session_keytextRequired - A past session of that webinar. Sessions only exist once a webinar has been run: use List webinar sessions to find one.
Outputs
countnumberpollslistsession_keytextwebinar_keytext
Example output
{
"count": 1,
"polls": [
{
"number_of_responses": 6,
"question": "How did you hear about us?",
"responses": [
{
"percentage": 50.0,
"text": "A colleague"
},
{
"percentage": 50.0,
"text": "Search"
}
]
}
],
"session_key": "1234567890123456789",
"webinar_key": "9876543210987654321"
}List session questions
Read the questions attendees asked during a past session, and the answers they were given.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
- Session key
session_keytextRequired - A past session of that webinar. Sessions only exist once a webinar has been run: use List webinar sessions to find one.
Outputs
countnumberquestionslistsession_keytextwebinar_keytext
Example output
{
"count": 1,
"questions": [
{
"answers": [
{
"answer": "Yes, by email tomorrow.",
"answer_time": "2026-12-01T17:23:00Z",
"answered_by": "Dana Organizer",
"answerer_email": "organizer@example.com",
"answerer_role": "ORGANIZER"
}
],
"asked_by": "attendee@example.com",
"asker_key": "5555555555555555555",
"date_asked": "2026-12-01T17:22:00Z",
"question": "Will the slides be shared?"
}
],
"session_key": "1234567890123456789",
"webinar_key": "9876543210987654321"
}List webinar attendees
List everyone who attended any session of a webinar, with how long they stayed.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
- Page
pagenumber - Which page of results to read. The first page is 0.From 0 to 10000.
- Results per page
sizenumber - How many results to read at once (up to 200).From 1 to 200.
Outputs
attendeeslistcountnumberpageobjectwebinar_keytext
Example output
{
"attendees": [
{
"attendance": [
{
"join_time": "2026-12-01T17:01:00Z",
"leave_time": "2026-12-01T17:41:00Z"
}
],
"attendance_time_in_seconds": 2400,
"email": "attendee@example.com",
"first_name": "Sam",
"last_name": "Attendee",
"registrant_key": "2222222222222222222",
"session_key": "1234567890123456789"
}
],
"count": 1,
"page": {
"number": 0,
"size": 20,
"total_elements": 1,
"total_pages": 1
},
"webinar_key": "9876543210987654321"
}List webinar sessions
List the past sessions of a webinar, with their attendance counts and session keys.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
- Page
pagenumber - Which page of results to read. The first page is 0.From 0 to 10000.
- Results per page
sizenumber - How many results to read at once (up to 200).From 1 to 200.
Outputs
countnumberpageobjectsessionslistwebinar_keytext
Example output
{
"count": 1,
"page": {
"number": 0,
"size": 20,
"total_elements": 1,
"total_pages": 1
},
"sessions": [
{
"end_time": "2026-12-01T18:00:00Z",
"experience_type": "CLASSIC",
"registrant_count": 12,
"registrants_attended": 7,
"session_key": "1234567890123456789",
"start_time": "2026-12-01T17:00:00Z",
"time_zone": "America/New_York",
"total_poll_count": 2,
"webinar_id": "123456789",
"webinar_key": "9876543210987654321",
"webinar_name": "Product launch"
}
],
"webinar_key": "9876543210987654321"
}List webinars
List the webinars scheduled between two dates, upcoming or past.
Inputs
- From
from_timedate and timeRequired - The start of the date range to search.
- To
to_timedate and timeRequired - The end of the date range to search.
- Page
pagenumber - Which page of results to read. The first page is 0.From 0 to 10000.
- Results per page
sizenumber - How many results to read at once (up to 200).From 1 to 200.
Outputs
countnumberpageobjectwebinarslist
Example output
{
"count": 1,
"page": {
"number": 0,
"size": 20,
"total_elements": 1,
"total_pages": 1
},
"webinars": [
{
"approval_type": "AUTOMATIC",
"description": "A look at what is new.",
"experience_type": "classic",
"locale": "en_US",
"recurrence_type": "single_session",
"registration_url": "https://attendee.gotowebinar.com/register/1",
"subject": "Product launch",
"time_zone": "America/New_York",
"times": [
{
"end_time": "2026-12-01T18:00:00Z",
"start_time": "2026-12-01T17:00:00Z"
}
],
"webinar_id": "123456789",
"webinar_key": "9876543210987654321"
}
]
}Register someone for a webinar
Register a person for a webinar and get back their personal join link.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
- First name
first_nametextRequired - The registrant's first name.
- Last name
last_nametextRequired - The registrant's last name.
- Email
emailtextRequired - The registrant's email address.
- Resend confirmation
resend_confirmationtrue/false - Email the confirmation again if this person is already registered.Default:
false. - Organization
organizationtext - The registrant's company or organisation.
- Job title
job_titletext - The registrant's job title.
- Phone
phonetext - The registrant's phone number.
- Address
addresstext - Street address.
- City
citytext - City.
- State
statetext - State or province (GoTo only validates US states).
- Postal code
zip_codetext - Postal or ZIP code.
- Country
countrytext - Country.
- Industry
industrytext - The registrant's industry, as free text.
- Number of employees
number_of_employeestext - How many people the registrant's organisation employs.
- Purchasing time frame
purchasing_time_frametext - When the registrant expects to buy, as free text.
- Purchasing role
purchasing_roletext - The registrant's role in a purchase, as free text.
- Source
sourcetext - Where the registration came from, for your own reporting.
- Questions and comments
questions_and_commentstext - Anything the registrant wants to ask in advance.
- Answers to custom questions
responseslist - Answers to the webinar's own registration questions. Each entry needs a 'question_key' and either an 'answer_key' (multiple choice) or a 'response_text'. Get both keys from Get registration fields.
Outputs
emailtextjoin_urltextregistrant_keytextwebinar_keytext
Example output
{
"email": "sam@example.com",
"join_url": "https://attendee.gotowebinar.com/join/1",
"registrant_key": "2222222222222222222",
"webinar_key": "9876543210987654321"
}Remove a registrant
Remove someone's registration from a webinar that has not happened yet.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
- Registrant key
registrant_keytextRequired - The registration to remove.
Outputs
deletedtrue/falseregistrant_keytextwebinar_keytext
Example output
{
"deleted": true,
"registrant_key": "2222222222222222222",
"webinar_key": "9876543210987654321"
}Update a webinar
Change a scheduled webinar's title, description, times or language.
Inputs
- Webinar
webinar_keytextRequired - The webinar to act on. Pick one, or paste a webinar key copied from its GoTo Webinar URL.
- Title
subjecttext - A new title. Leave blank to keep the current one.
- Description
descriptiontext - A new description.
- Starts at
start_timedate and time - When the webinar starts.
- Ends at
end_timedate and time - When the webinar ends.
- Extra sessions
additional_sessionslist - Extra dates for a series, each an object with 'start_time' and 'end_time'. Leave empty for a one-off webinar.
- Time zone
time_zonetext - The time zone the webinar is held in, such as America/New_York. Leave blank to use the organizer's own time zone.
- Language
localetext - The language of the registration and confirmation pages.One of:
en_US(English (US)),de_DE(German),es_ES(Spanish),fr_FR(French),it_IT(Italian),zh_CN(Chinese (Simplified)). - Notify participants
notify_participantstrue/false - Email everyone registered about the change.
- Send confirmation emails
confirmation_emailtrue/false - Email each registrant a confirmation when they sign up.
- Send reminder emails
reminder_emailtrue/false - Email registrants a reminder before the webinar starts.
- Send follow-up to absentees
absentee_followup_emailtrue/false - Email registrants who did not attend afterwards.
Outputs
updatedtrue/falsewebinar_keytext
Example output
{
"updated": true,
"webinar_key": "9876543210987654321"
}