---
title: "Run up to 20 FFmpeg commands sequentially (per-plan limit)"
method: POST
path: "/run-chained-ffmpeg-commands"
tags: ["Commands"]
---

# Run up to 20 FFmpeg commands sequentially (per-plan limit)

`POST /run-chained-ffmpeg-commands`

## Request

- Base URL: `https://renderio.dev/api/v1`
- URL: `https://renderio.dev/api/v1/run-chained-ffmpeg-commands`
- Auth: API key in header `X-API-KEY`

Commands run in order in a single workspace, so an output written by one command can be consumed by the next.

## Request body

- RunChainedCommandsRequest
  - `input_files` InputFiles, required: Input aliases mapped to publicly reachable URLs. Keys must start with `in_`.
  - `output_files` OutputFiles, required: Output aliases mapped to filenames. Keys must start with `out_`.
  - `ffmpeg_commands` string[], required: Commands executed in order in a shared workspace.
  - `metadata` Metadata: Up to 10 arbitrary key/value pairs echoed back on the command.
  - `webhook_url` string, uri
  - `storage_destination_id` string: Business-plan S3-compatible destination that receives this command's outputs.

## Response `200`

Command accepted

- RunCommandResponse
  - `command_id` string, uuid, required

## Other responses

- `401`: Missing or invalid API key
- `403`: Plan does not include this capability
- `404`: Resource not found
- `409`: Resource state conflict
- `422`: Request failed validation
- `429`: Rate limit exceeded — retry after the `Retry-After` interval

---

[API](https://skmtc.dev/renderio/apis/renderio-api.md) · [All operations](https://skmtc.dev/renderio/apis/renderio-api/llms.txt) · [OpenAPI document](https://skmtc.dev/renderio/apis/renderio-api/revisions/062c8f1c062b?raw)
