POST
javascript
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 const axios = require('axios'); const api_key = "YOUR API-KEY"; const url = "https://api.segmind.com/v1/opus-clips-from-video"; const data = { "video_url": "https://segmind-resources.s3.amazonaws.com/input/opus-clips-from-video-input.mp4", "clip_type": "talking-heads", "clip_duration_min": 15, "clip_duration_max": 60, "genre": "Auto", "topic_keywords": [], "aspect_ratio": "portrait", "remove_filler_words": false, "skip_curate": false }; (async function() { try { const response = await axios.post(url, data, { headers: { 'x-api-key': api_key } }); console.log(response.data); } catch (error) { console.error('Error:', error.response.data); } })();
RESPONSE
image/jpeg
HTTP Response Codes
200 - OKImage Generated
401 - UnauthorizedUser authentication failed
404 - Not FoundThe requested URL does not exist
405 - Method Not AllowedThe requested HTTP method is not allowed
406 - Not AcceptableNot enough credits
500 - Server ErrorServer had some issue with processing

Attributes


video_urlvideo * Affects Pricing

Public long-form video URL, up to 90 minutes. Supports YouTube, Vimeo, Zoom, MP4.


clip_typeenum:str ( default: talking-heads )

Curation mode. Use talking-heads for podcasts and interviews; generic for prompt-driven clipping.

Allowed values:


custom_promptstr ( default: 1 )

Describes what to extract; required when clip_type is generic. Example: compile funniest moments.


clip_duration_minint ( default: 15 )

Minimum clip length in seconds (5-300). Set 15-30 for Shorts and Reels.

min : 5,

max : 300


clip_duration_maxint ( default: 60 )

Maximum clip length in seconds (5-300). Keep 60 or below for shorts.

min : 5,

max : 300


genreenum:str ( default: Auto )

Content genre guiding curation. Use Auto to detect, or set Podcast, Interview, Educational.

Allowed values:


topic_keywordslist ( default: )

Keywords to prioritize during talking-heads curation. Add topics you want clips focused on.


aspect_ratioenum:str ( default: portrait )

Output framing. Use portrait for TikTok, Reels, Shorts; landscape for YouTube; square for feeds.

Allowed values:


remove_filler_wordsbool ( default: 1 )

Removes ums and uhs from clips. Enable for tighter, more polished talking-head cuts.


source_languagestr ( default: 1 )

Spoken language as an ISO code like en. Leave blank to auto-detect.


skip_curatebool ( default: 1 )

Skips highlight selection and reframes and captions the whole video. Enable to bypass curation.


brand_template_idenum:str ( default: 1 )

Optional OpusClip style preset for captions and layout. Choose a template to brand clips.

Allowed values:


video_titlestr ( default: 1 )

Optional title giving context to improve curation. Add your video title for relevance.

To keep track of your credit usage, you can inspect the response headers of each API call. The x-remaining-credits property will indicate the number of remaining credits in your account. Ensure you monitor this value to avoid any disruptions in your API usage.

OpusClip - Clips From Video (Video-to-Video)

What is OpusClip - Clips From Video?

OpusClip - Clips From Video is an AI video-clipping model that turns one long-form video into ready-to-post short clips. Point it at a podcast, interview, webinar, or vlog URL and it transcribes the audio, scores the highest-impact moments, and returns vertical clips with animated captions and automatic reframing. It is built for creators, podcasters, and marketers who want to repurpose long videos into TikToks, Reels, and YouTube Shorts without a manual editing pass.

Key Features

  • Two curation modes: talking-heads for rule-based podcast and interview clipping, and generic for prompt-driven clipping of any genre.
  • AI reframe that keeps the speaker centered when converting landscape footage to portrait, landscape, or square.
  • Animated, high-accuracy captions burned into every clip.
  • Controls for clip length, genre, topic keywords, source language, filler-word removal, and brand-template styling.
  • Accepts long-form sources up to 90 minutes from YouTube, Vimeo, Zoom, Twitch, LinkedIn, or a public MP4.

Best Use Cases

Podcasters and interviewers get the strongest results with clip_type: talking-heads. In testing, a landscape interview produced clean 1080x1920 vertical clips with the speaker tracked and captions synced to speech. Use generic with a custom prompt to pull specific moments — the funniest exchanges, product mentions, key takeaways — from vlogs, gaming, sports, or explainers. Marketers can batch one webinar into a week of social posts.

Prompt Tips and Output Quality

For talking-heads, set genre to Podcast or Interview and add topic_keywords to steer selection. Keep clip_duration between 15 and 60 seconds for Shorts and Reels, and choose aspect_ratio: portrait for vertical platforms. Enable remove_filler_words for tighter cuts and pick a brand_template_id to match your channel style. The response is a clips array; each clip includes a title, description, hashtags, and a downloadable MP4 URL.

FAQs

What video types work best? Talking-head content like podcasts and interviews works best; use generic mode with a prompt for vlogs, sports, gaming, or explainers.

Does it add captions? Yes. Every clip ships with animated captions synced to the spoken audio, ready to post.

Which aspect ratios are supported? Portrait, landscape, and square, so one source can be reframed for TikTok, YouTube, or square feeds.

What languages are supported? Source language auto-detects, and you can set an ISO code such as en to skip detection.

How long can my input be? Up to 90 minutes per source video from a supported URL or public MP4. Talking-heads mode needs no prompt; only generic mode does.