Skip to Content
MediaTofu

Quickstart

Get an API key and run your first job.

MediaTofu is FFmpeg as an API. Send a video file and get the result back as a download link. The base URL for every request is https://api.mediatofu.com.

1. Get an API key

Sign in at app.mediatofu.com with your email address. We send you a one-time sign-in link, and the first link for a new address creates a Free account. No card is needed.

In the dashboard, open API keys and create a key. The key starts with mt_ and is shown once, so copy it now.

export MEDIATOFU_API_KEY="mt_your_key_here"

2. Compress a video

Send a video URL to the compress tool. Swap the example URL for a public video of your own.

curl "https://api.mediatofu.com/v1/tools/compress?wait=25" \
  -H "Authorization: Bearer $MEDIATOFU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "input": "https://example.com/clip.mov" }'

?wait=25 holds the request open for up to 25 seconds so a short job can finish in the same response. See Jobs for longer ones.

3. Read the response

This is an example response. Your ids, sizes and times will differ.

{
  "id": "job_0123456789abcdef01234567",
  "tool": "compress",
  "status": "succeeded",
  "compute_seconds": 6,
  "compute_ms": 5238,
  "outputs": [
    {
      "name": "out.mp4",
      "size": 15204877,
      "url": "https://api.mediatofu.com/o/0123456789abcdef0123456789abcdef/job_0123456789abcdef01234567/out.mp4"
    }
  ],
  "exit_code": 0,
  "created_at": "2026-01-15T10:44:51Z",
  "finished_at": "2026-01-15T10:45:00Z"
}

If status is still queued or running, check again with GET /v1/jobs/:id.

4. Download the output

The URL in outputs is a plain download link. It needs no API key. Set OUTPUT_URL to it, then:

curl -o out.mp4 "$OUTPUT_URL"

Next steps

On this page