POST
/
api
/
v1
/
automation
/
create-clips
Create Clips
curl --request POST \
  --url https://public.reap.video/api/v1/automation/create-clips \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '{
  "sourceUrl": "<string>",
  "uploadId": "<string>",
  "reframeClips": true,
  "exportOrientation": "<string>",
  "exportResolution": 123,
  "captionsPreset": "<string>",
  "enableEmojies": true,
  "enableHighlights": true,
  "language": "<string>",
  "translationLanguage": "<string>",
  "genre": "<string>",
  "selectedStart": 123,
  "selectedEnd": 123
}'
{
  "id": "<string>",
  "title": "<string>",
  "thumbnail": "<string>",
  "billedDuration": 123,
  "status": "<string>",
  "projectType": "<string>",
  "source": "<string>",
  "genre": "<string>",
  "topics": [
    {}
  ],
  "clipDurations": [
    {}
  ],
  "selectedStart": 123,
  "selectedEnd": 123,
  "reframeClips": true,
  "exportResolution": 123,
  "exportOrientation": "<string>",
  "captionsPreset": "<string>",
  "enableCaptions": true,
  "enableEmojies": true,
  "enableHighlights": true,
  "language": "<string>",
  "dubbingLanguage": "<string>",
  "translateTranscription": true,
  "translationLanguages": [
    {}
  ],
  "metadata": {},
  "urls": {},
  "createdAt": 123,
  "updatedAt": 123
}

Overview

Transform long-form videos into engaging short clips using AI. This endpoint analyzes your video content and automatically extracts the most engaging moments, creating viral-ready clips optimized for social media platforms.

Rate Limiting

This endpoint is rate limited to 10 requests per minute per API key.

Request Body

sourceUrl
string

YouTube URL to process (alternative to uploadId)

uploadId
string

Upload ID from a previously uploaded file (alternative to sourceUrl)

reframeClips
boolean
default:"false"

Whether to automatically reframe clips for different aspect ratios

exportOrientation
string
default:"landscape"

Output orientation for the clips

exportResolution
integer
default:"720"

Output resolution for the clips

captionsPreset
string

Caption style preset ID (use null to disable captions)

enableEmojies
boolean
default:"false"

Whether to add emojis to captions

enableHighlights
boolean
default:"false"

Whether to highlight keywords in captions

language
string

Primary language of the video content (auto-detected if not provided)

translationLanguage
string

Language to translate captions to

genre
string
default:"talking"

Video genre for better AI analysis

selectedStart
number

Start time in seconds for processing (processes entire video if not specified)

selectedEnd
number

End time in seconds for processing (processes entire video if not specified)

You must provide either sourceUrl or uploadId, but not both.

Video Requirements

Duration

Minimum: 2 minutes
Maximum: 3 hours

File Size

Maximum: 5 GB

Format

MP4 or MOV with valid video streams

Content Type

Works best with dialogue-rich content

Plan Limitations

PlanMax ResolutionFeatures
Free720pBasic clipping, limited minutes
Creator1080pAll features, more minutes
Studio4K (2160p)All features, unlimited processing

Response

id
string

Unique project identifier

title
string

Project title (usually the filename)

thumbnail
string

Thumbnail URL for the project

billedDuration
number

Duration in seconds that will be billed to your account

status
string

Current processing status

  • processing - Video is being analyzed and clips are being generated
  • completed - All clips have been generated successfully
  • failed - Processing failed due to an error
projectType
string

Type of project (always “clipping” for this endpoint)

source
string

Source of the video content

  • user_upload - Uploaded file
  • youtube - YouTube URL
genre
string

Video genre used for AI analysis

topics
array

Array of identified topics in the video

clipDurations
array

Array of clip duration preferences

selectedStart
number

Start time in seconds for processing (null if entire video)

selectedEnd
number

End time in seconds for processing (null if entire video)

reframeClips
boolean

Whether clips will be automatically reframed

exportResolution
integer

Output resolution for the clips

exportOrientation
string

Output orientation for the clips

captionsPreset
string

Caption style preset ID (null if captions disabled)

enableCaptions
boolean

Whether captions are enabled

enableEmojies
boolean

Whether emojis are added to captions

enableHighlights
boolean

Whether keyword highlighting is enabled

language
string

Primary language of the video content

dubbingLanguage
string

Target dubbing language (null if not applicable)

translateTranscription
boolean

Whether transcription will be translated

translationLanguages
array

Array of languages for translation

metadata
object

Video file metadata including duration, resolution, format, etc.

urls
object

Project URLs and assets (populated when processing completes)

createdAt
integer

Unix timestamp when the project was created

updatedAt
integer

Unix timestamp when the project was last updated

Example Request

curl -X POST "https://public.reap.video/api/v1/automation/create-clips" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "uploadId": "65f1a2b3c4d5e6f7a8b9c0d1",
    "genre": "educational",
    "exportResolution": 1080,
    "exportOrientation": "portrait",
    "reframeClips": true,
    "captionsPreset": "system_beasty",
    "enableEmojies": true,
    "enableHighlights": true,
    "language": "en"
  }'

Example Response

Processing Workflow

  1. Upload Analysis - Video is analyzed for content, speakers, and key moments
  2. AI Clipping - Our AI identifies the most engaging segments for clips
  3. Processing - Clips are generated with your specified settings
  4. Completion - Use Get Project Status to monitor progress
  5. Download - Retrieve clips using Get Project Clips

Best Practices

  • Content Quality: Videos with clear speech and engaging content produce better clips
  • Duration: Longer videos (10+ minutes) typically yield more clip options
  • Genre Selection: Choose the correct genre for optimal AI analysis
  • Caption Presets: Use captions for better engagement on social platforms
  • Resolution: Higher resolutions are better for professional content but take longer to process

Use Cases

Content Creators

Turn long-form content into social media clips

Educators

Extract key teaching moments from lectures

Marketers

Create promotional clips from webinars and presentations

Podcasters

Generate video clips from audio-only content with visualizations