canonical: https://jentic.com/apis/citrixonline.com/gotomeeting

# Citrixonline GoToMeeting

Jentic publishes the only available OpenAPI specification for GoToMeeting, keeping it validated and agent-ready. The GoToMeeting API integrates GoToMeeting provisioning and meeting management into existing systems, so admins can add, suspend, or delete organizers and applications can create, update, or delete meetings on behalf of users. It exposes 26 endpoints across organizers, groups, meetings, and historical meeting data. The API is the supported route for syncing GoToMeeting Corporate accounts with internal directories and for embedding scheduled or ad-hoc meetings into third-party scheduling and CRM tools.

## For AI agents

Provision GoToMeeting organizers, schedule and update meetings, and pull historical or upcoming meeting data so an agent can manage a Corporate account programmatically.

## Scope

Does not handle webinars, GoToWebinar registrations, or in-meeting recording APIs - use for GoToMeeting meeting scheduling, organizer provisioning, and historical meeting data only.

## Capabilities

- Create, update, or delete a GoToMeeting meeting on behalf of an organizer
- Provision a new organizer in a Corporate account or remove one when an employee leaves
- List upcoming meetings for an organizer or group for calendar sync
- Pull historical meeting records and attendee lists for reporting
- Start a scheduled meeting via the dedicated start endpoint
- Manage groups of organizers within a Corporate GoToMeeting account

## Use cases

### Calendar-to-GoToMeeting scheduling integration

When a user creates an event in a corporate calendar tool, the integration calls POST /meetings to schedule the GoToMeeting and writes the join URL back into the calendar invite. Updates to the calendar event flow through PUT /meetings/{meetingId}, and deletes call DELETE /meetings/{meetingId} to keep the two systems in sync.

Example prompt: Call POST /meetings with subject, starttime, endtime, and passwordrequired flags, then write the returned join URL into the calendar event.

### HR-driven organizer provisioning

When HR onboards a new employee, the directory tool calls POST /organizers to create a GoToMeeting organizer for the employee's email, and DELETE /organizers/{organizerKey} when they leave. This removes the manual admin step in the GoToMeeting console and keeps Corporate licence usage aligned with the employee directory.

Example prompt: Call POST /organizers with the new hire's email, firstname, lastname, and groupKey, then store the returned organizerKey on the employee record.

### Meeting attendance reporting

Operations teams pull /historicalMeetings and /meetings/{meetingId}/attendees to build attendance reports - total minutes attended, drop-off times, and attendee email lists. This feeds into engagement dashboards and licence-utilisation reviews without exporting CSVs from the GoToMeeting console.

Example prompt: Call GET /historicalMeetings for the past 30 days, then for each meetingId call GET /meetings/{meetingId}/attendees to build a per-meeting attendance roll.

### AI agent meeting scheduling via Jentic

An AI assistant connected through Jentic accepts a natural-language scheduling request, searches Jentic for 'schedule a video meeting in GoToMeeting', loads the schema for POST /meetings, and creates the meeting. The join URL is returned to the user along with a calendar invite - the agent never sees the underlying API credential.

Example prompt: Through Jentic, search 'schedule a GoToMeeting', load the schema for POST /meetings, and execute it with subject, starttime, and endtime extracted from the user's request.

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| POST | /meetings | Create a meeting |
| GET | /meetings/{meetingId} | Get a meeting |
| PUT | /meetings/{meetingId} | Update a meeting |
| DELETE | /meetings/{meetingId} | Delete a meeting |
| GET | /meetings/{meetingId}/attendees | Get attendees for a meeting |
| POST | /organizers | Create an organizer |
| GET | /historicalMeetings | List historical meetings |
| GET | /groups/{groupKey}/upcomingMeetings | Get upcoming meetings by group |

## Key resources

- **Meetings** — Create, retrieve, update, delete, and start GoToMeeting sessions and pull attendee lists
- **Organizers** — Provision, retrieve, and delete organizers in a Corporate account
- **Groups** — Manage groups of organizers and pull group-level meetings, attendees, and organizer lists
- **Historical meetings** — Past meeting records used for attendance reporting and analytics

## Why Jentic

- **Setup:** Wiring the GoToMeeting API by hand means threading meeting scheduling, organizer provisioning, and historical-meeting queries through the right G2M endpoints yourself. Through Jentic you install once, import GoToMeeting from the API Directory, store the credential once, and your agent calls it.
- **Permission scoping:** GoToMeeting puts the meeting id in the URL path (/meetings/{meetingId}), so a rule can pin your agent to reading and updating a given meeting. You choose the operations it may call, so deleting meetings or provisioning organizers is not included unless you add it.
- **Credential handling:** Your GoToMeeting credential is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'schedule a meeting' or 'list historical meetings', and Jentic returns the matching GoToMeeting operation with its input schema so the agent calls the right endpoint without browsing the reference docs.

## Related APIs

- **Zoom API** — Larger video conferencing platform with overlapping meeting and user provisioning endpoints
- **Google Calendar API** — Calendar layer that holds the events for which GoToMeetings are created
- **Microsoft Teams Events API** — Source of Outlook calendar events and Microsoft 365 user identity for organizer provisioning

## FAQ

### Why is there no official OpenAPI spec for GoToMeeting?

GoToMeeting does not publish an OpenAPI specification on the developer portal. Jentic generates and maintains this spec so that AI agents and developers can call GoToMeeting 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 GoToMeeting API use?

GoToMeeting uses OAuth 2.0 access tokens issued via the Citrix/LogMeIn developer portal. The OpenAPI spec does not declare an inline security scheme, but production calls require an Authorization: Bearer access token. Through Jentic, the token and refresh credentials are held in your Jentic One instance.

### Can I create a GoToMeeting meeting through the API?

Yes. POST /meetings creates a meeting with the subject, starttime, endtime, password requirement, and meeting type, and returns the meetingId and join URL. PUT /meetings/{meetingId} updates the meeting and DELETE /meetings/{meetingId} cancels it.

### Can I provision and remove organizers in a Corporate account?

Yes. POST /organizers creates an organizer for a new user, GET /organizers retrieves them by email, and DELETE /organizers/{organizerKey} removes them. This is the supported way to keep GoToMeeting Corporate licences aligned with the employee directory.

### What are the rate limits for the GoToMeeting API?

The OpenAPI spec does not declare rate limits. Citrix enforces them at the application and account level - for production usage, add retry-with-backoff on 429 responses and prefer batched group endpoints (for example /groups/{groupKey}/upcomingMeetings) over per-organizer loops.

### How do I schedule a GoToMeeting from an AI agent through Jentic?

Run pip install jentic, then have the agent search 'schedule a GoToMeeting', load the schema for POST /meetings, and execute it with subject, starttime, and endtime. Jentic resolves the OAuth token from the vault and returns the meetingId and join URL to the agent.

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

Yes. Because you run Jentic One yourself, your own rules decide which GoToMeeting operations and credentials the agent may use. Since the meeting id sits in the URL path (/meetings/{meetingId}), you can pin the agent to reading and updating a specific meeting while withholding riskier calls, so DELETE /meetings/{meetingId} or POST /organizers stay off-limits unless you explicitly grant them. The operator chooses the exact set of endpoints the agent can reach, and the stored credential is injected only for those approved calls.
