Sada Files
  1. Developers
  2. Tool endpoints

Compress Video API

Compress to a target size (e.g. WhatsApp 16 MB) or a quality level.

Environment

EnvironmentBase URL
Productionhttps://api.sadafiles.com/v1

There is one environment and no sandbox, so every request here is real and counts toward your limits.

Request

POSThttps://api.sadafiles.com/v1/tools/compress-video
Content type
multipart/form-data
Auth
X-API-Key with tools:run
Accepts
mp4, webm, mov, mkv, avi
Files per request
1
Largest file
2 GB
Job timeout
300 s
Rate weight
2 units

Parameters

Send these as a JSON string in the options form field. Anything else is rejected.

NameTypeDefaultAllowed
modestringqualityquality, targetSize
crfinteger28min 18, max 40
targetMbnumber16min 1, MB
maxHeightinteger1080px

Response

StatusBodyWhen
201mp4, webmThe run finished within 60 seconds
202Job summary JSONStill running; poll the job
4xx, 5xxError JSONSee error codes

A file response carries X-Sada-Job and X-Sada-Expires-At. For long work, post to /v1/tools/compress-video/jobs instead. See jobs and webhooks.

Ready settings

These settings power the matching pages on the site, and work the same in the API.

Useoptions
Compress Video for WhatsApp (16 MB){"mode":"targetSize","targetMb":16}

Try it yourself!

Pick a file, set the options and run a real request with your key. The code follows your changes.

Headers

You need a free key to run this request. Sign in and create a key.

Body

curl -X POST "https://api.sadafiles.com/v1/tools/compress-video" \  -H "X-API-Key: $SADAFILES_API_KEY" \  -F "files[]=@input.mp4" \  -o output.mp4

What's next?