Skip to content

Video editing API to level up your applications

Add SendShort's AI editing to your product. Send a video link, get short clips with captions back, and schedule them to TikTok and YouTube. A REST API with webhooks, from Professional ($29/month).

POST /api/v1/import

curl -X POST "https://app.sendshort.ai/api/v1/import" \

-H "Authorization: Bearer ss_sk_your_api_key" \

-H "Content-Type: application/json" \

-d '{"youtube_url": "https://youtu.be/xxxxxxxx"}'

 

# 202 {"job_id": "…", "status": "queued"}

const res = await fetch("https://app.sendshort.ai/api/v1/import", {

method: "POST",

headers: {

Authorization: "Bearer ss_sk_your_api_key",

"Content-Type": "application/json",

},

body: JSON.stringify({ youtube_url: "https://youtu.be/xxxxxxxx" }),

});

const { job_id } = await res.json(); // status: "queued"

import requests

 

res = requests.post(

"https://app.sendshort.ai/api/v1/import",

headers={"Authorization": "Bearer ss_sk_your_api_key"},

json={"youtube_url": "https://youtu.be/xxxxxxxx"},

)

job_id = res.json()["job_id"] # status: "queued"

Why the SendShort API

The clipping engine of our editor, as an API

The API uses the same pipeline as the SendShort editor: AI moments, captions, crop and framing, B-roll and translation. You do not run any video servers.

Import a video from YouTube, Twitch, Kick or a direct link. Clip it into shorts, make music videos, and schedule the results to TikTok and YouTube. Webhooks tell your app when each job is done.

Getting started

From API key to finished shorts in three steps

01

Get your API key

On Professional or Business, open Settings → Preferences → API keys and create a key.

02

Import and clip

Import a video link, then start a clip job with the number of shorts, the caption theme and the format.

03

Get results

Poll the job or get a webhook. The clip status has the download link of each short.

Get your API key

API features

What you can do with the API

Long videos into shorts

A video link goes in. The AI finds the best moments and cuts them into shorts. Pick a count or the moments you want.

Captions

Word-level captions in 100+ languages, with the caption themes and templates of your account.

Editing options

Crop, format, B-roll, zoom, silence cut, transitions, audio effects and caption translation, in the same clip request.

Music videos

A 9:16 video of the first 60 seconds of a song, with lyric captions, a sound wave, beat bars and a background clip.

Scheduling

Schedule shorts to TikTok and YouTube, and slideshows to TikTok as photo posts. List and cancel posts.

Webhooks

Signed events when a short is ready, a post goes live or a job fails. 7 retries over about 42 hours.

Reference

Authentication and API keys

Base URL https://app.sendshort.ai. Send every request with these headers:

Headers

Authorization: Bearer ss_sk_your_api_key

Content-Type: application/json

  • Create keys in Settings → Preferences → API keys. Up to 10 active keys.
  • Expiry: 30 days, 90 days, 1 year or never.
  • Keep the key on your server. Never put it in a URL or in browser code.
  • Plan: Professional ($29/month) or Business.

Rate limits

Limit

Value

All requests

120 a minute per key (shared with the AI Agent)

Clip starts

5 a minute

Import starts

3 a minute

Music-video starts

3 a minute

Over the limit

429 with a Retry-After header

Endpoints

All paths are under https://app.sendshort.ai. Jobs (import, clip, music video) return 202 with a job_id. Poll the status endpoint or use webhooks.

Method and path

Purpose

GET /api/v1/status

Plan, quotas, rate limits

POST /api/v1/import

Import a long video (202 + job_id)

GET /api/v1/import/:jobId

Import status

GET /api/v1/videos

List long videos (search, limit, offset)

POST /api/v1/videos/:videoId/delete

Delete a long video

GET /api/v1/videos/:videoId/moments

AI moments (generate=true creates them)

GET /api/v1/themes

Caption themes

GET /api/v1/templates

Templates

POST /api/v1/clip

Clip into shorts (202)

GET /api/v1/clip/:jobId

Clip status and download links

POST /api/v1/music-video

Create a music video

GET /api/v1/music-video/:jobId

Music-video status

POST /api/v1/music-video/upload

Signed upload URL for audio or your own video

GET /api/v1/shorts

List shorts

GET /api/v1/shorts/:shortId

One short and its download link

GET /api/v1/slideshows

List slideshows

GET /api/v1/social-accounts

Connected TikTok and YouTube accounts

POST /api/v1/schedule/short

Schedule a short

POST /api/v1/schedule/slideshow

Schedule a slideshow (TikTok)

GET /api/v1/schedule

List scheduled posts (include_past=true)

POST /api/v1/schedule/:scheduleId/cancel

Cancel a post

GET, POST /api/v1/webhooks

List webhooks and event types / subscribe

GET, DELETE /api/v1/webhooks/:id

One webhook / unsubscribe

POST /api/v1/webhooks/:id/test

Send a webhook.test event

GET /api/v1/events

Event log, last 30 days (type, since, limit)

Request fields and responses: full API reference.

Clip a video into shorts

POST /api/v1/clip

curl -X POST "https://app.sendshort.ai/api/v1/clip" \

-H "Authorization: Bearer ss_sk_your_api_key" \

-H "Content-Type: application/json" \

-d '{"video_id": 12345, "count": 5}'

 

# 202 {"job_id": "…", "status": "queued"}

# Then poll GET /api/v1/clip/:jobId for the download links.

Make a music video

POST /api/v1/music-video

curl -X POST "https://app.sendshort.ai/api/v1/music-video" \

-H "Authorization: Bearer ss_sk_your_api_key" \

-H "Content-Type: application/json" \

-d '{"audio_url": "https://youtu.be/xxxxxxxx", "media_type": "gameplay"}'

 

# 202 {"job_id": "…", "status": "queued"}

# Then poll GET /api/v1/music-video/:jobId.

Use only songs that you have the rights to. See the music video generator.

Schedule a short to YouTube

POST /api/v1/schedule/short

curl -X POST "https://app.sendshort.ai/api/v1/schedule/short" \

-H "Authorization: Bearer ss_sk_your_api_key" \

-H "Content-Type: application/json" \

-d '{"short_id": 67890,

"publish_at": "2026-11-20T18:00:00+01:00",

"youtube": {"account_ids": ["…"]}}'

 

# Account IDs come from GET /api/v1/social-accounts.

Webhooks and events

Subscribe with POST /api/v1/webhooks or in Settings → Preferences → Webhooks. Webhooks also work with Zapier, Make and n8n.

Event

Sent when

short.ready

A short is ready

short.failed

A short failed

post.published

A scheduled post went live

post.failed

A scheduled post failed

import.completed

A long video finished importing

import.failed

An import failed

clip.failed

A clip job failed

music_video.completed

A music video is ready

music_video.failed

A music video failed

  • Signed with Standard Webhooks headers. Check the signature before you trust an event.
  • 7 retries over about 42 hours.
  • Up to 25 webhooks. GET /api/v1/events returns the event log of the last 30 days.

POST /api/v1/webhooks

curl -X POST "https://app.sendshort.ai/api/v1/webhooks" \

-H "Authorization: Bearer ss_sk_your_api_key" \

-H "Content-Type: application/json" \

-d '{"url": "https://example.com/sendshort", "events": ["short.ready", "post.failed"]}'

 

# 201. Then POST /api/v1/webhooks/:id/test sends a webhook.test event.

Video editing API use cases

Agencies

Clip and caption videos for every client from one script.

Education

Schools and course platforms can caption and clip lectures at scale.

Creators

Turn one recording into a week of scheduled posts without an editor.

Automation builders

Connect SendShort to n8n, Zapier or Make with the API and webhooks.

SaaS

Add clipping and captions to your podcast or course product.

Studios

Automate the repeated half of post-production and take on more clients.

FOR AI AGENTS

The same jobs as MCP tools

The MCP server gives Claude, ChatGPT and Grok Bot 20 tools for the same jobs. It shares the API rate limit.

Import and clip videos

Make music videos

Schedule to TikTok and YouTube

Read the AI Agent guide See all integrations

Frequently asked questions

Which plan do I need for the SendShort API?

Professional ($29/month) or Business. Starter does not include the API. See pricing.

How do I get an API key?

In SendShort, open Settings → Preferences → API keys. You can have up to 10 active keys. Each key expires after 30 days, 90 days or 1 year, or never.

What are the API rate limits?

120 requests a minute per key. Clip starts: 5 a minute. Import starts: 3 a minute. Music-video starts: 3 a minute. Over the limit, the API returns 429 with a Retry-After header.

Can the API post to TikTok and YouTube?

Yes. POST /api/v1/schedule/short schedules a short to TikTok and/or YouTube. POST /api/v1/schedule/slideshow schedules a slideshow to TikTok as a photo post. The API does not post to other platforms.

Do I have to poll for results?

No. Subscribe to webhooks, for example short.ready or music_video.completed, and SendShort sends a signed request to your URL.

Where is the full API reference?

The full reference with all request fields is in the sendshort-mcp README (HTTP API).

Give your product an editing team

The API and the AI Agent are included on Professional ($29/month) and Business.

See pricing