canonical: https://jentic.com/apis/goto.com/goto

# GoTo Webinar 2.0 REST API

Jentic publishes the only available OpenAPI specification for GoTo Webinar 2.0 REST API, keeping it validated and agent-ready. The GoTo Webinar API lets organizers schedule single-session and multi-session webinars, manage panelists and co-organizers, accept registrations, and capture attendee analytics through a stable v2 REST surface. It exposes 53 endpoints across webinars, sessions, registrants, attendees, panelists, recording assets, and webhooks, all secured by OAuth 2.0 bearer tokens issued by GoTo's authentication service. Webinar configuration covers polls, surveys, custom registration questions, and questionnaires that organizers can set up before the event and review afterwards.

## For AI agents

Schedule webinars, manage registrants and panelists, and pull post-event attendee and recording data for GoTo Webinar accounts via OAuth-secured REST endpoints.

## Scope

Does not handle on-demand video hosting, ad-hoc 1:1 meetings, or telephone-only conferencing - use for scheduled GoTo Webinar events only.

## Capabilities

- Schedule single-session or recurring webinars under an organizer key
- Register attendees and capture custom registration field answers
- Add and remove panelists and co-organizers on a scheduled webinar
- Retrieve attendee join times, watch duration, and questions asked during a session
- Fetch on-demand recording assets and download URLs after a webinar ends
- Subscribe to webhooks for registration, attendance, and webinar lifecycle events
- Run polls and surveys and read aggregated response data per session

## Use cases

### Marketing Webinar Funnel

Schedule a product launch webinar, expose a registration form on a marketing site, and sync registrants into a CRM. The GoTo Webinar API creates the webinar, accepts registration POSTs against `/organizers/{organizerKey}/webinars/{webinarKey}/registrants`, and webhooks fire when each registrant signs up so downstream lead-routing fires immediately. Initial integration takes 1-2 days for OAuth setup and webhook handling.

Example prompt: Create a webinar titled 'Q3 Product Launch' starting 2026-07-15T15:00:00Z lasting 60 minutes, then register an attendee with email lead@example.com and verify the registrant ID returns.

### Post-Event Attendee Analytics

After a webinar ends, fetch attendance, watch duration, polls, surveys, and questions asked to measure engagement. GoTo Webinar exposes per-session attendee detail at `/organizers/{organizerKey}/webinars/{webinarKey}/sessions/{sessionKey}/attendees` so analytics jobs can pull data within minutes of session end. Useful for sales-qualifying the most engaged attendees.

Example prompt: For webinar key 1234567890 and session key 8888, list all attendees and return the names of those who watched more than 80 percent of the session.

### Recording Distribution Workflow

Pull recording assets after a session ends and post download links into a content library or learning management system. GoTo Webinar surfaces recording resources under the webinar's session, so an agent can poll until the asset is ready, then capture the download URL. Common time saved compared to manual download and re-upload: 15-30 minutes per webinar.

Example prompt: Check whether the recording for webinar key 1234567890 session 8888 is ready, and if so return the download URL of the recording asset.

### AI Agent Webinar Operations

An AI agent built on Jentic acts as a webinar operations assistant: schedules sessions from natural-language requests, registers VIP attendees, and pulls recap data. The agent searches Jentic for 'schedule a webinar', loads the GoTo Webinar operation schema, and executes against the organizer's account using credentials managed by Jentic's vault. End-to-end webinar scheduling drops from a 5-minute admin task to a single chat turn.

Example prompt: Use Jentic to search 'schedule a gotowebinar' and create a webinar called 'Customer Office Hours' for next Friday at 2pm UTC for 45 minutes.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | `/organizers/{organizerKey}/webinars` | Schedule a new webinar for an organizer |
| GET | `/organizers/{organizerKey}/webinars` | List all webinars for an organizer |
| GET | `/organizers/{organizerKey}/webinars/{webinarKey}` | Retrieve a single webinar's details |
| PUT | `/organizers/{organizerKey}/webinars/{webinarKey}` | Update a scheduled webinar |
| DELETE | `/organizers/{organizerKey}/webinars/{webinarKey}` | Cancel a webinar |
| GET | `/organizers/{organizerKey}/webinars/{webinarKey}/attendees` | List attendees for a completed webinar |
| GET | `/organizers/{organizerKey}/webinars/{webinarKey}/coorganizers` | List co-organizers on a webinar |

## Key resources

- **Webinars** — Create, update, and delete webinars and list webinars by organizer or account
- **Sessions** — Read sessions for a webinar and pull session-level attendance and polls
- **Registrants** — Register attendees, list registrants, and retrieve registration field configuration
- **Attendees** — Pull attendee detail per session including watch duration and questions asked
- **Panelists** — Add, list, and remove panelists on a scheduled webinar
- **Co-organizers** — Manage co-organizer assignments on a webinar
- **RecordingAssets** — List and retrieve recording assets for completed sessions
- **Webhooks** — Subscribe to lifecycle events for webinars, registrants, and attendees

## Why Jentic

- **Setup:** Wiring GoTo Webinar by hand means running its OAuth2 flow, exchanging and refreshing bearer tokens, and threading the organizer key through every webinar route yourself. Through Jentic you install once, import GoTo Webinar from the API Directory, store the credential once, and your agent calls it with a scoped token at execution time.
- **Permission scoping:** GoTo Webinar puts the organizer and webinar id in the URL path (`/organizers/{organizerKey}/webinars/{webinarKey}`), so a rule can pin your agent to one organizer's webinars: it can create, read, and list attendees for those webinars and nothing else. You choose the operations it may call, so destructive ones like deleting a webinar are not included unless you add them.
- **Credential handling:** Your GoTo OAuth client secret is stored once, encrypted, by your own Jentic One instance and a scoped bearer token is injected at execution time. The client secret and refresh token never enter the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'schedule a webinar' or 'list webinar attendees', and Jentic returns the matching GoTo Webinar operation with its input schema so the agent calls the right endpoint without reading the developer portal.

## Related APIs

- **Zoom Meetings API** — Zoom Meetings is the most common alternative for hosted meetings and webinars
- **Webex API** — Webex offers webinars and events from Cisco's collaboration platform
- **Google Calendar API** — Use alongside GoTo Webinar to put scheduled webinars on attendee calendars

## FAQ

### Why is there no official OpenAPI spec for GoTo Webinar 2.0 REST API?

GoTo does not publish an OpenAPI specification. Jentic generates and maintains this spec so that AI agents and developers can call GoTo Webinar 2.0 REST API via structured tooling. It is validated against the live API and kept up to date. Get started with Jentic One, the self-hosted execution layer.

### What authentication does the GoTo Webinar API use?

The GoTo Webinar API uses OAuth 2.0 bearer tokens. Tokens are obtained from the GoTo authentication service against an OAuth client registered in the developer portal, then sent as Authorization: Bearer headers. When called through Jentic, the OAuth client credentials live in Jentic's encrypted vault and the agent receives only scoped access tokens at execution time.

### Can I retrieve attendee data after a webinar ends with the GoTo Webinar API?

Yes. After a session ends, GET `/organizers/{organizerKey}/webinars/{webinarKey}/attendees` and `/organizers/{organizerKey}/webinars/{webinarKey}/sessions/{sessionKey}/attendees` return registered attendees, watch duration, and questions asked during the session. Polls and surveys are exposed on dedicated session-scoped paths.

### What are the rate limits for the GoTo Webinar API?

GoTo Webinar applies per-application and per-organizer throttling, but exact thresholds are not stated in the spec. Plan for 5-10 requests per second per organizer and back off on HTTP 429 responses. Bulk attendee pulls should be batched per session rather than fired in parallel.

### How do I schedule a webinar with the GoTo Webinar API through Jentic?

Search Jentic for 'schedule a gotowebinar', load the POST `/organizers/{organizerKey}/webinars` operation, and execute with the webinar subject, description, and times array. With pip install jentic, the call is one search, one load, one execute, and Jentic handles the OAuth token exchange in the background.

### Does the GoTo Webinar API support webhooks?

Yes. The Webhooks tag exposes subscription endpoints so agents can register a callback URL for webinar lifecycle events such as registration created, attendee joined, and session ended. Webhooks remove the need to poll for changes.

### Can I limit what my agent is allowed to do with the GoTo Webinar API?

Yes. Because you run Jentic One yourself, your own rules decide which GoTo Webinar operations and credentials the agent may use. Since the organizer and webinar id sit in the URL path (`/organizers/{organizerKey}/webinars/{webinarKey}`), you can pin the agent to a single organizer's webinars and allow only the calls you choose, such as creating webinars, reading details, and listing attendees. Destructive operations like DELETE `/organizers/{organizerKey}/webinars/{webinarKey}` stay off unless you explicitly add them.
