Integration details
Description
Zoom connects Codex to Zoom meeting context through the Zoom app connector and provides developer workflows for planning, building, debugging, and reviewing Zoom integrations across APIs, SDKs, webhooks, WebSockets, bots, and automation use cases.
- Integration type
- Plugin
- Verification status
- Not applicable
- Platform
- ChatGPT
- Primary Subcategory
- Meeting Notes & Call Intelligence
- Secondary Subcategories
- None listed
- Brand
- Zoom
- Access
- Account required
- First tracked
- 2026-07-16
- Tool count
- 20
- Geography
- US
The Primary Subcategory used for this profile’s headline score.
Other Subcategories where the Integration is listed.
Get alerts for Zoom
Get updates when Zoom’s Discoverability Score or category rank changes.
ChatGPT Plugin Discovery Score
ChatGPT Plugin discovery is coming soon
ChatGPT can surface a Plugin when it matches a user's request.Your Plugin Discovery Score measures how often yours appears.
No spam. Unsubscribe any time.
What discovery looks like

Competing in ChatGPT Meeting Notes & Call Intelligence
View Category20 tools agents can invoke
# Ask **READ-ONLY** Returns one synthesized answer with citations from the user's accessible Zoom workspace and connected files. Datasource scopes are `zoom_meeting`, `zoom_chat_message`, `zoom_chat_session`, `zoom_canvas`, `zoom_my_notes`, `zoom_phone_call`, `zoom_phone_sms`, `zoom_phone_voicemail` and `third_party_file`. ## Tool selection Ask suits summaries, explanations, comparisons, status, decisions, owners, risks, themes, and action items. Search suits get, find, list, browse, and open requests returning matching records. ## Ask planning 1. **Form the request.** Supply the complete natural-language task through `query`. Ask combines semantic retrieval, content retrieval, and reasoning. Relative or local time expressions are resolved internally using the user's time zone from their Zoom profile, so callers do not supply UTC boundaries or separately request the time zone. 2. **Route by requested object.** Select datasources for the artifacts the user wants returned; a person, meeting, date, or platform that identifies an artifact is a constraint, not another requested family. Combine datasources only when the user independently requests multiple families or the requested artifact can belong to multiple families and the wording does not disambiguate it. - `zoom_my_notes` covers authorized notes and attendee-side transcripts from Zoom, third-party, and in-person meetings, including notes created by the user, shared with them, or moved outside the My Notes folder; “My Notes” is a product collection rather than a creator filter. - `zoom_meeting` covers host-owned meeting records, summaries, cloud recordings, and their recording transcripts. - When a transcript request does not specify whether it means an attendee-side/My Notes transcript or a recording transcript, include both `zoom_my_notes` and `zoom_meeting`; meeting context alone does not resolve that ambiguity. - `zoom_chat_session` covers chat groups and channels. - `zoom_chat_message` covers message content. - `zoom_canvas` covers Zoom Docs. - `zoom_phone_call` covers Zoom Phone call records. - `zoom_phone_sms` covers Zoom Phone SMS messages. - `zoom_phone_voicemail` covers Zoom Phone voicemail records. - `third_party_file` covers connected files and uses `source` for the provider; if source values are unknown, request `third_party_file` from Search Describe Capabilities before Ask. 3. **Set context.** Restrict `datasources` when the evidence scope is known. If it is broad or unclear, omit `datasources` to search all supported Ask sources. Use `context_resources` for known resources and `chat_history` for prior turns. Datasource selection changes retrieval scope, not the synthesized response format. Ask does not accept metadata filters or return pageable raw records. Search provides exact counts, pagination, and field-level filtering. An Ask answer does not change the meaning of an empty exact Search result. ## Parameters - **`query`** (string, required) — Complete natural-language question or instruction. - **`chat_history`** (array, optional) — Prior `{role, content}` turns in chronological order. Ask is stateless when history is omitted. - **`context_resources`** (array, optional) — Known resources to include as context, identified by `datasource` and datasource-specific identifiers. A third-party file uses `source` and `file_id`. - **`datasources`** (array, optional) — Strictly limits retrieval to the listed datasource scopes. A third-party scope uses `source`; omission searches all supported Ask sources. ## Response Returns `request_id`, an assistant `message`, and `citations`. Citations may contain a title, excerpt, URL, entity type, datasource, and datasource-specific metadata. `message.content` is the completed synthesis rather than raw evidence and can be presented directly with its citations. Formatting should preserve its meaning and attribution without introducing additional claims.
Adds collaborators (Zoom users, Team Chat channels, or email addresses) to a Zoom Canvas (formerly Zoom Docs) file, granting them a specified access role. Only `doc` or `data table` file types are supported. ## When to Use Use this tool when a user wants to share a Canvas file with one or more people or channels by assigning them viewer, commenter, editor, or co-owner permissions. ## Must Do - Each collaborator entry **must** include exactly one identifier: `user_id`, `channel_id`, or `email` - Each collaborator entry **must** include a `role` (`viewer`, `commenter`, `editor`, or `co-owner`) - Provide between **1 and 50** collaborators per request - The target file must be of type `doc` or `data table` ## Must NOT Do - Do **not** include more than one identifier field (`user_id`, `channel_id`, `email`) per collaborator entry - Do **not** use this tool on unsupported file types (e.g., spreadsheets, presentations)
Retrieves the list of collaborators for a specified Zoom Canvas (formerly Zoom Docs) file (supports `doc` and `data table` file types only). ## When to Use Use this tool when you need to view who has access to a Zoom Canvas file, including their roles and collaborator types (user, channel, or email). ## Must Do - Provide a valid `fileId` from Zoom Canvas - Only use with `doc` or `data table` file types ## Output Returns up to 50 collaborators, each containing: - `collaborator_id`: Use this ID when removing or modifying a collaborator - `collaborator_type`: One of `user`, `channel`, or `email` - `role`: One of `viewer`, `commenter`, `editor`, or `co-owner` - `collaborator_name`: Display name - Conditional identity field: `user_id` (if type=user), `channel_id` (if type=channel), or `email` (if type=email)
Modifies the role of an existing collaborator on a Zoom Canvas (formerly Zoom Docs) file. Only `doc` or `data table` file types are supported. ## When to Use Use this tool when you need to change a collaborator's permission level (e.g., upgrading a viewer to an editor, or demoting a co-owner to a commenter) on a specific Zoom Canvas file. ## Must Do - Provide the file ID, collaborator ID, and the new role - Ensure the target file is of type `doc` or `data table` - Use one of the valid role values: `viewer`, `commenter`, `editor`, or `co-owner`
Removes a specified collaborator from a file in Zoom Canvas (formerly Zoom Docs). Only `doc` or `data table` file types are supported. ## When to Use Use this tool when a user wants to revoke a collaborator's access to a specific Zoom Canvas file (doc or data table). ## Prerequisites - You must have the **file ID** of the target document in Zoom Canvas. - You must have the **collaborator item ID** to identify which collaborator to remove (obtainable via a "list collaborators" operation). ## Must Do - Ensure the target file is of type `doc` or `data table` before attempting removal. ## Must NOT Do - Do not use this tool on unsupported file types (e.g., files other than `doc` or `data table`).
## Tool Description ⚠️ DEPRECATED: This tool has been replaced by `hub_create_file_from_content`. DO NOT use this tool. Use `hub_create_file_from_content` instead for creating files with Markdown content. ## When to Use DO NOT use this tool. It is deprecated and no longer maintained. ## Must NOT Do - DO NOT call this tool for any new requests. - DO NOT use this tool when the user wants to create a file with content. ## Migration Use `hub_create_file_from_content` as the direct replacement for all file creation with Markdown content tasks.
## Tool Description [DEPRECATED] This tool is deprecated. Please use `hub_get_file_content` instead for all future file content retrieval tasks. Retrieves the full Markdown content and file name of an existing Zoom Docs (Zoom Canvas) document using its file ID. ## When to Use ⚠️ **This tool is deprecated. Use `hub_get_file_content` as the replacement.** Only use this tool as a fallback if `hub_get_file_content` is unavailable. Use this tool when you need to read the full content of a Zoom Docs file by its file ID, in either structured XML format (for block-level editing) or plain Markdown format (for reading only). ## Must Do - Always prefer `hub_get_file_content` over this tool for all new tasks. - Use `xml` format when block-level editing is planned, as it is the ONLY format that exposes block IDs required by block-level edit tools (docs_file_insert_blocks, docs_file_update_block, docs_file_delete_block, docs_file_replace_range_of_blocks). - Use `markdown` format only when plain text reading is sufficient and no block-level editing is needed. ## Must NOT Do - Do NOT use `markdown` format when block-level editing is planned, as it does not expose block IDs.
# Get Meeting Assets V4.0 **READ-ONLY** Retrieve all available assets for a specific Zoom meeting, including AI summaries, My Notes, cloud recordings, whiteboards, Zoom Docs, agenda documents, and participants. ## When to use this tool - User wants to retrieve assets for a completed meeting - User needs access to meeting summaries,My Notes, recordings, whiteboards, Zoom Docs, agenda, or participant information - User provides a meeting identifier (numeric meeting ID or UUID) **Required condition:** User must provide a meeting ID (numeric or UUID format) to use this tool. ## Parameters ### `meetingId` (String, Required) The meeting identifier. Accepts either: 1. **UUID** (preferred) — e.g., `"38DCDB7C-74B1-442F-BE85-390DF0BB96CC"`. Targets a specific meeting instance. 2. **Numeric meeting ID** — e.g., `"123456789"`. Returns assets for the latest meeting instance when multiple instances exist. Always prefer UUID when available; numeric ID cannot target specific past instances of recurring meetings. ## Response Returns a JSON object containing the following asset fields (each may be `null` if unavailable): - `meeting_summary` — AI-generated summary with quick recap, full text, and next steps - `my_notes` — User notes and participant transcripts recorded during the meeting - `recording` — Cloud recording with play URL, duration, and processing status - `whiteboards` — Whiteboards shared or created during the meeting - `docs` — Zoom Docs linked to the meeting - `agenda_doc` — Agenda document associated with the meeting - `participants` — Meeting participant list ## Access Control Only the meeting host or participants explicitly granted access by the host can retrieve meeting assets. Unauthorized requests return a permission error. ## Error Handling | Error | Meaning | |-------|---------| | 403 / Permission denied | User lacks access to this meeting's assets. | | 404 / Not found | Invalid, expired, or unrecognized meeting ID/UUID. | ## Usage Notes - Cloud recordings may show `processing: true` while still being generated after a meeting ends. - AI summaries require AI Companion to have been enabled and sufficient meeting duration. - It is normal for a meeting to have some asset types but not others (e.g., recording but no summary). - Timestamps are in UTC (ISO 8601). Convert to the user's local timezone for display.
**Description:** Retrieves detailed content and metadata for a specific Zoom recording, including transcript text, topic summaries, next steps/action items, and playback URLs. Use this tool when the user explicitly mentions "recording" or requests content-level details (e.g., "What did they say about X?", "Play the recording", "Find the part where they discussed pricing"). For general meeting discovery or meeting-level metadata without recording context, prefer the Assets tool. **Parameters:** - **types** *(string, optional)*: Comma-separated list of resource types to retrieve. Valid values: `transcript`, `summary`, `nextStep`, `playUrl`. If omitted or empty, all available types are returned. Include `transcript` when answering content questions; include both `transcript` and `playUrl` when the user wants to jump to a specific moment. - **raw_passcode** *(string, optional)*: Plaintext passcode for the recording (up to 10 characters; letters, digits, or special characters). - **encode_passcode** *(string, optional)*: Encrypted passcode from the `pwd=` parameter of a Zoom share link. - **clip_num** *(integer, optional)*: 1-based index of the clip to retrieve for multi-clip recordings. Returns null if the index exceeds available clips. - **play_time** *(integer, optional)*: Playback start time in seconds within the selected clip (e.g., `20` = start 20 seconds in). Use transcript timestamps to determine the appropriate value when the user asks to jump to a specific topic. **Return Schema Overview:** ```json { "transcripts": [{ "timeline": [{ "text", "ts", "end_ts", "display_name" }], "recording_id", "meeting_id", "recording_start", "recording_end" }], "summaries": [{ "overall_summary", "items": [{ "label", "summary" }], "recording_start", "total_items" }], "next_steps": [{ "items": [{ "text" }], "recording_start", "total_items" }], "play_urls": [{ "urls": ["string"], "recording_start", "play_time" }] } ``` Fields are omitted if no data exists for that type. **Usage Notes:** - Recording duration = `recording_end − recording_start`. - To navigate to a topic: first retrieve `transcript` to find the relevant timestamp, then use that value as `play_time` alongside `playUrl`. - When user intent is ambiguous (content + playback), omit `types` to fetch all resources. - Tool selection rule: **recording keyword or playback action present → this tool; general meeting queries → Assets tool first.**
## Tool Description Creates a new Zoom Hub file (doc, paper_doc, or spreadsheet) from plain-text content and returns the file ID and deep link. ## Prerequisites - `parent_id` is OPTIONAL. - DO NOT specify `parent_id` unless the user explicitly tells you where to save the file. - If the user does not mention a folder or location, omit `parent_id` entirely — do not default it to "root" or empty string. - Only provide `parent_id` when the user explicitly provides a valid folder ID or path. ✅ Correct: omit parent_id when user says "Generate a sample sales spreadsheet for me." ❌ Wrong: parent_id = "root" ← do not assume this as default ## When to Use Use this tool when the user wants to create a new document, paper document, or spreadsheet in Zoom Hub with specific text content (Markdown for docs/paper_docs, CSV for spreadsheets). ## Prerequisites - For `parent_id`: use empty string or `"root"` to place in the caller's My Files folder, or provide a valid folder ID owned by or shared with the caller ## Must Do - Set `file_type` to one of: `doc`, `paper_doc`, or `spreadsheet` - Use **Markdown format** for `doc` or `paper_doc` content - Use **CSV format** for `spreadsheet` content - Keep `content` size ≤ 100 KB ## Must NOT Do - Do **not** use `file_type=presentation` — slide-deck import is not supported ## Error Handling - `400 REASON_PARAMS_INVALID`: Invalid parameters (e.g., attempting to create a presentation or exceeding content size limit)
## Tool Description Exports the plain-text content of a Zoom Hub file (doc, spreadsheet, presentation, or paper_doc) in a specified format (markdown, xml, or csv). ## File ID Extraction from URL If the user provides a Zoom Hub spreadsheet URL, extract file_id using this rule: URL pattern: https://<host>/spreadsheet/{file_id} https://<host>/spreadsheet/{file_id}/{sheet_id} https://<host>/spreadsheet/{file_id}/{sheet_id}?... - Always extract ONLY the first path segment after `/spreadsheet/` as `file_id` - The second path segment is the Sheet Tab ID — it is NOT part of file_id, ignore it - Query parameters (e.g., ?from=sheets) should also be ignored ✅ Examples: https://sheets.zoomd.us/spreadsheet/orLkROyAQvuIBEWFnj6F7g → file_id = "orLkROyAQvuIBEWFnj6F7g" https://sheets.zoomd.us/spreadsheet/orLkROyAQvuIBEWFnj6F7g/q2sbq?from=sheets → file_id = "orLkROyAQvuIBEWFnj6F7g" ❌ Wrong: file_id = "orLkROyAQvuIBEWFnj6F7g/q2sbq" ← never include sheet_id in file_id ## When to Use Use this tool when you need to read or extract the textual content of a Zoom Hub file for analysis, display, or processing. ## Prerequisites - You must have a valid `file_id` for an existing Hub file - The file type must support the requested export format (see format compatibility below) ## Must Do - Provide both `file_id` and `format` parameters (both required) - Ensure the `format` matches the file type: - **doc**: use `markdown` or `xml` - **spreadsheet**: use `csv` (only first sheet exported) - **presentation**: use `markdown` - **paper_doc**: use `markdown` ## Must NOT Do - Do not request a format incompatible with the file type (returns 400 error) - Do not attempt to export files larger than 100 KB (bounded by size limit, returns 400 error) ## Error Handling - **400 REASON_PARAMS_INVALID**: Mismatched file type and format combination, or file size exceeds 100 KB limit
In-meeting controls [In-meeting](https://support.zoom.us/hc/en-us/articles/360021921032-In-Meeting-Controls) controls include starting, stopping, pausing, and resuming a recording; inviting participants; updating the waiting room with a custom message; and starting, stopping, or disabling the Zoom AI. **Note:** This API's recording control only works for cloud recordings, **not** for local recordings.
Create a Zoom meeting Use for scheduling a new meeting. Not for editing an existing one, looking one up, or webinars. Derive `topic` and `start_time` from what the user has already told you, including earlier turns and any document or message they shared. Ask only when the context doesn't yield them — and never invent a title or a time. `timezone` is an IANA ID, e.g. "America/Los_Angeles", or "UTC". Use the user's timezone when you already have it — from the client context, their profile, or earlier in the conversation. Otherwise ask. Do not derive it from their language, their country, or the server clock. Send `start_time` as a local timestamp with no zone suffix ("2026-03-25T15:00:00") paired with `timezone` — never a "Z" suffix, even for UTC. A past start_time silently defaults to now, so resolve relative times ("tomorrow 3pm") against the user's current date in that timezone before calling. The host defaults to `userId: "me"`. Don't ask who is hosting — only set `userId` or `schedule_for` when the user names someone else. For type 8, recurrence needs repeat_interval plus one of end_date_time or end_times. Omit `password` unless asked; the account generates one when required. start_url grants host access to anyone holding it and expires in 2 hours — return it only to the host, on request. Limit: 100 meetings/day/host. A 429 means it's spent; do not retry.
Delete a meeting Delete a meeting. **Prerequisites**: * For recurring meetings, the `occurrence_id` is required to delete a specific occurrence. If not provided, the entire recurring series will be deleted.
Update a meeting Updates meeting details. **Prerequisites** * The `start_time` value must be a future date. If the value is omitted or a date is in the past, the API ignores this value and does not update any recurring meetings. * The `recurrence` object is required only when updating the entire series of a recurring meeting with `type=8`. * This API has a rate limit of **100 requests per day**. You can update a meeting for a maximum of 100 times within a 24-hour period.
Retrieves a specific note from Zoom My Notes, including user-authored content, AI-generated content, and associated transcript. This covers all notes including from Zoom meetings, 3rd party meetings (eg. Microsoft Teams, Google Meet), and in-person meetings. ## When to Use This Tool Use this tool for any user request that mentions "note" or "notes" in any form — "my notes", "meeting notes", "what did I write down", "AI notes", "notes from my 1:1", or similar. ## How to Use - Provide the unique `noteId` of the note to fetch. This can be obtained using the `search` tool. - Set `include=transcript` explicitly when the user needs the transcript along with the note content. ## Usage Notes - Notes must never be reported as unavailable without first calling this tool - Do not report that no transcripts are available unless `include=transcript`was set in the request.
List user all recordings Lists all [cloud recordings](https://support.zoom.us/hc/en-us/articles/203741855-Cloud-Recording) for a user.
# Search **READ-ONLY** Returns pageable records from the user's accessible Zoom workspace across `zoom_meeting`, `calendar`, `zoom_chat_message`, `zoom_chat_session`, `zoom_canvas`, `zoom_my_notes`, `zoom_phone_call`, `zoom_phone_sms`, `zoom_phone_voicemail`, and `third_party_file`. ## Tool selection Search suits get, find, list, browse, and open requests. Ask suits summaries, explanations, comparisons, decisions, risks, themes, and action items requiring one synthesized answer. ## Search planning 1. **Decode the request.** Separate content or topic terms for `query` from requested operations, artifact types, datasource families, and metadata slots. Use `query` only for content or topics to match; if none remain, omit it. Slots include identifiers, type or format, view or provider, ownership or hierarchy, people or organization, time ranges, states or availability, and numeric thresholds. A natural-language constraint is a slot even when its API field name is unknown. 2. **Route by requested object.** Select datasources for the artifacts the user wants returned; a person, meeting, date, or platform that identifies an artifact is a constraint, not another requested family. Search the requested artifact's datasource directly; do not search a qualifier's datasource only to resolve that artifact. Combine datasources only when the user independently requests multiple families or the requested artifact can belong to multiple families and the wording does not disambiguate it. - `zoom_my_notes` covers authorized notes and attendee-side transcripts from Zoom, third-party, and in-person meetings, including notes created by the user, shared with them, or moved outside the My Notes folder; “My Notes” is a product collection rather than a creator filter. - `zoom_meeting` covers host-owned meeting records, summaries, cloud recordings, and their recording transcripts. - When a transcript request does not specify whether it means an attendee-side/My Notes transcript or a recording transcript, include both `zoom_my_notes` and `zoom_meeting`; meeting context alone does not resolve that ambiguity. - `calendar` covers schedules and calendar events. - `zoom_chat_session` covers chat groups and channels. - `zoom_chat_message` covers message content. - `zoom_canvas` covers Zoom Docs. - `zoom_phone_call` covers Zoom Phone call records. - `zoom_phone_sms` covers Zoom Phone SMS messages. - `zoom_phone_voicemail` covers Zoom Phone voicemail records. - `third_party_file` covers connected files and uses `source` for the provider. 3. **Resolve time context.** Relative or local time slots include today, tomorrow, yesterday, this/last week, named weekdays, and clock times without an offset. Search requires the user's current time zone from user or client context. If unavailable, the user must provide it before Search Describe Capabilities or Search can proceed; an inferred zone is not valid. Local boundaries are converted to ISO 8601 UTC before Search. UTC or offset-aware timestamps need no conversion. 4. **Resolve filters.** Without metadata slots, Search accepts `query` and datasource scope without filter trees. A metadata slot requires Search Describe Capabilities for every selected datasource. Do not construct or send filters until it has supplied metadata for that datasource, and never infer filterability from Search response fields or prior knowledge. If scope is uncertain, request several schemas together. Each datasource uses a separate filter tree based on its returned names, types, enums, capabilities, and operator restrictions. Fields cannot be transferred between schemas. Put a constraint in a filter when the schema supports it; otherwise do not invent a field or value—retain the constraint for result disambiguation. Search applies submitted constraints exactly. Empty `data` means no match. Third-party file results may include up to five highest-scored query-matching content chunks. Querying `zoom_phone_call` may include up to five highest-scored matching `call_summary_chunks`; querying `zoom_phone_voicemail` may include up to five matching `transcript_chunks`. ## Parameters - **`query`** — Optional full-text terms. - **`datasource_filters`** — Optional datasource scopes and separate filter trees. - **`page_size`** — Records per datasource; 1–100, default 10. - **`next_page_token`** — Continuation token used with the original request. ## Response Returns `{data, has_more, next_page_token}`.
# Search Describe Capabilities **READ-ONLY** Returns authoritative per-datasource metadata for constructing Search filters; it returns no user content. Supported datasources are `zoom_meeting`, `zoom_chat_message`, `zoom_chat_session`, `zoom_canvas`, `zoom_my_notes`, `zoom_phone_call`, `zoom_phone_sms`, `zoom_phone_voicemail`, `third_party_file`, and `calendar`. ## Capability planning Use this tool before invoking Search when the request has been routed to the Search workflow and slot decoding identifies metadata constraints. A request containing only full-text terms and datasource scope needs no capability discovery. When required: 1. **Recognize slots.** Metadata slots include identifiers; type, subtype, or format; view, provider, owner, or hierarchy; people or organization; time ranges; boolean state or asset availability; and numeric thresholds. Natural-language expressions of these concepts are slots even without API field names. 2. **Resolve time context.** For a relative or local time slot, obtain the user's current time zone from user or client context. If unavailable, ask and wait; call neither this tool nor Search until the zone is known. Never infer a zone. 3. **Request capabilities.** Request every selected datasource. If selection is uncertain, request several schemas together rather than guessing. 4. **Construct filters.** Resolve each slot from the response's field name, type, enum, `filterable`/`searchable` flags, and operator restrictions. Resolve time fields separately for each datasource. Never transfer fields between schemas or enforce metadata only through `query`. A `filterable` field supports its documented filter operators; a `searchable` field supports top-level `query` or supported `match`. ## Parameters - **`datasources`** (array, optional) — Datasource schemas to return. Multiple values are supported; omission returns all schemas. ## Response Returns `{"data": {<datasource>: [<field>, ...]}}`. Fields include `field_name`, `field_type`, `description`, `filterable`, `searchable`, and optional `enum`.
Deprecated: This tool is deprecated. Please use search instead. **READ-ONLY** `search_meetings` is a deprecated meeting-search endpoint retained for backward compatibility with clients that may cache its previously published tool definition. The endpoint remains operational so requests created from that definition can continue to return legacy meeting-search results. Current Zoom workspace meeting retrieval is provided by `search` with the `zoom_meeting` datasource. It supports meeting discovery, full-text retrieval, metadata and time filtering, and pagination through the unified search contract. `search_describe_capabilities` describes the current searchable and filterable fields, their types, and supported values when datasource-specific metadata is needed. If you still call the tool, before invoking this tool, you must first obtain the user's current time zone; invoking this tool without knowing the user's current time zone is strictly prohibited. If the current time zone is unknown, please ask the user for it first. The legacy request accepts optional meeting keywords, a meeting number, UTC start and end times, a legacy inclusion flag, page size, and a continuation token. These parameters retain their previously published meanings for compatibility. This endpoint uses the legacy request format and does not accept the unified datasource filter structure. New search fields and datasource capabilities are documented through the unified tools. ## Response Returns the legacy meeting-search response: - `meetings` — Matching legacy meeting records - `page_size` — Number of records included in the response page - `next_page_token` — Continuation token when additional records are available - `from_server` — Whether the records were returned by the server Meeting records can contain meeting identifiers, topic, scheduled times, status, host information, duration, timezone, and available meeting metadata. Exact properties follow the published output schema. This read-only endpoint does not create, update, or delete meetings.
How do I improve a ChatGPT Plugin's discoverability?
The levers are the listing surface agents actually read: names, descriptions, keywords, tool metadata, and registry health. Which lever matters depends on where discovery breaks, which is what continuous measurement shows.
What are Zoom alternatives on ChatGPT?
As of 2026-09-28, Zoom competes with Abacor, AI Note Maker, AI TeamsMaestro, Airepoto, CapMind, Circleback, Cohearo, CraftNote, fairw.ai, Fathom, Fellow.ai, Fireflies, Grain, Granola, Hardline, Jamie, Klee, Krisp, LivingMeeting, MeetGeek, Meeting Mate, Meeting Summarizer, Meetly, MeetNotes, Memova.ai, NotoScribe, Otter.ai, Owll, Plaud, Pocket AI, Read AI, Runa, Sally AI, SEO&OH AI, Sider Recorder & Transcriber, SpeakApp, Spinach AI, SuperIntern, tldv, Vibe AI, Wave AI Note Taker, wiserwork, Wispr Flow, Wolfee, Zocks in ChatGPT Meeting Notes & Call Intelligence, ranked by public Discoverability Score.
Where is this profile measured?
This profile uses the geography attached to the latest public registry snapshot: US. Locale tags are intentionally omitted.