Clips API - create a clip from an existing cloud recording by specifying a time range
I run customer research interviews over Zoom and process transcripts programmatically (via Claude/AI tools). After each
interview, I extract key quotes with exact timestamps and want to save short clips of those moments as permanent Zoom Clips to
share with stakeholders in Notion.
The current manual friction:
The Watch Highlights feature auto-selects moments I didn't choose. To create clips from my own extracted quotes, I have to: open
the recording, deselect all of Zoom's auto-highlighted moments, then manually hunt for and select each of my timestamps. This
is the most tedious step in an otherwise automated workflow.
What I investigated:
- The Zoom Clips REST API (/clips) only supports uploading video files — there's no endpoint to create a clip from an existing cloud recording by specifying a time range
- Watch Highlights has no API surface at all — it can't be controlled or pre-seeded programmatically
What I'd need to automate this:
1. POST /recordings/{meetingId}/clips — Create a Zoom Clip from an existing cloud recording by specifying start_time and
end_time in seconds. Returns a permanent clip URL.
2. OR: PUT /recordings/{meetingId}/highlights — Pre-set the Watch Highlights selection with specific time ranges before the user
opens the recording, so they only need to confirm and click "Add to Zoom Clips."
Either of these would let me go from extracted quote timestamps straight to permanent, embeddable Zoom Clips with no manual
steps. Do you have any other suggestions for how I could accomplish my goal?
