create_short
Create AI-generated short-form video clips from a YouTube video or uploaded file. Returns a request ID instantly. Processing takes 5-30 minutes. Costs 1 credit.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"start": "<start>",
"end": "<end>"
},
"name": "create_short"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| end | Yes | End time in seconds (> start, max 1200s window) | |
| url | No | YouTube video URL | |
| music | No | Add background music | |
| start | Yes | Start time in seconds (>= 0) | |
| layout | No | Video framing layout | auto |
| ctaText | No | CTA text (max 200 chars, required when ctaEnabled=true) | |
| fileUrl | No | Public video file URL (alternative to url) | |
| language | No | Spoken language (ISO 639-1) | en |
| memeHook | No | Prepend a meme hook clip (2-5s attention grabber) | |
| gameVideo | No | Add split-screen gameplay overlay | |
| hookTitle | No | Add animated hook title at start | |
| maxShorts | No | Maximum number of shorts to create (1-12). Keeps the highest-scoring clips and never pads, so short videos may return fewer. Omit to get up to 12. | |
| musicName | No | Exact track name from list_music (case-sensitive) | |
| outroText | No | Custom outro text (max 80 chars). Omit for the localized default ("Please subscribe"). Requires outroEnabled=true. | |
| ctaEnabled | No | Show call-to-action text overlay | |
| musicNames | No | Several exact track names from list_music (case-sensitive); each short uses one of them at random. Use instead of musicName. Requires music=true. | |
| noClipping | No | Skip AI clipping, process entire range as one clip | |
| outroSting | No | Play the short bell sound on the outro (default true). Requires outroEnabled=true. | |
| templateId | No | Caption template ID from list_templates (24-char hex) | |
| webhookUrl | No | Optional webhook URL for completion/failure notifications. Receives a POST with results when processing finishes. | |
| musicVolume | No | Music volume 0-100 | |
| outroHandle | No | Channel handle shown on the outro card, e.g. "@mychannel" (max 40 chars). Requires outroEnabled=true. | |
| memeHookName | No | Exact meme hook name from list_meme_hooks (case-sensitive) | |
| outroEnabled | No | Append an end-screen outro card (bell animation + "Please subscribe" text) after each clip. Default false. | |
| outroSeconds | No | Outro duration in seconds (1-3, default 2). Requires outroEnabled=true. | |
| gameVideoName | No | Exact game video name from list_game_videos (case-sensitive) | |
| outroImageUrl | No | Public image URL for a custom outro card instead of the stock bell card. Requires outroEnabled=true. | |
| blurBackground | No | Background behind the clip when the source does not fill the 9:16 canvas (mainly layout=fit): true = blurred copy of the video, false = solid color (backgroundColor, else the account's saved color, else the template color). Omit to use the account's saved editor preference (default: blurred). | |
| hookTitleStyle | No | Your own hook title design. Required when hookTitlePresetId is 'custom', not allowed otherwise. Titles in Korean, Japanese, Chinese, Arabic, Hebrew, Hindi or Thai use a font made for that script. | |
| backgroundColor | No | Solid background color as hex, e.g. "#000000". Only with blurBackground=false. Omit to use the account's saved background color, else the template color. | |
| captionLanguage | No | Caption language if different from spoken | |
| captionsEnabled | No | Burn captions into the clips (default true). Set false for sources that already have captions. | |
| preferredLength | No | Target clip duration | under60sec |
| customSourceLink | No | Own link for the Source line, e.g. "mysite.com/videos" (https:// added if missing, max 300 chars). Requires includeSourceLink=true. | |
| hookTitlePresetId | No | Hook title style (requires hookTitle=true). classic-pill (default) = black text on white pills; dark-pill = white on dark pills; bold-outline = white text with black outline; classic = one white box; native = Regular style: plain white left-aligned text like an Instagram caption; editorial = serif with a lime keyword; statement = condensed setup + big payoff; custom = your own design, set in hookTitleStyle. editorial and statement animate in and leave after ~4s; the others stay for the whole clip. See ssemble://hook-title-presets. | |
| includeSourceLink | No | When these clips are later scheduled from the Ssemble web app (Share / Calendar), end each caption with "Source: <link>": customSourceLink if set, else the original YouTube video. Omit to use the account's last scheduler choice. Does not change the clips. |