JsonCut
Media & VideoJsonCut renders images and videos from a JSON configuration of layers, clips, transitions, text, and HTML. Agents validate a job config, submit and poll render jobs, upload source files, and publish public links to the output.
What This Integration Enables
JsonCut renders images and videos from a JSON configuration of layers, clips, transitions, text, and HTML, and the thing to understand about it before designing a workflow is that it is a render farm rather than a library. Storage is temporary by design: uploaded sources and rendered outputs are both deleted when their lifetime elapses, the default lifetime is short, the ceiling is not much longer, and nothing is recoverable afterward. A public link cannot outlive the file it points at, whatever expiry the link itself was given.
That is not a flaw to work around, it is the shape of the product, and it makes the copy out step a first class part of any flow rather than an afterthought. FlowRunner agents validate a configuration before spending anything on it, submit and poll render jobs, read the authoritative schema for whichever output type they are building, probe source media for duration before choosing clip lengths, upload the few things JsonCut cannot fetch itself, and publish or collect the output before its clock runs out.
Without FlowRunner
With FlowRunner
Use Case Scenarios
One brief, every placement
A campaign brief in Airtable names the copy, the product shot, and eleven placement sizes. The agent reads the image schema with Get Schema, builds a config per size, and runs each through Validate Job Config first, which costs nothing and catches a malformed layer before a render does. It renders the first variant with Create Job And Wait, posts it for review, and on approval renders the rest, calling Create Public Link on each and writing the links back to the brief row. Because the concurrency limit is small, the flow submits in batches rather than firing all eleven at once and collecting rate limit errors.
A video whose clip lengths are measured, not guessed
A social cut is assembled from three source clips. Clip durations in a video config have to be chosen up front, so the agent calls Get Video Duration on each source, which accepts a public URL directly, and sizes the clips from the real numbers. Fonts are the one asset a public URL will not work for, so those go through Upload File From URL. The finished cut is collected and handed to Cloudinary for permanent hosting, because JsonCut's own storage will be gone within the day.
The batch that is billed and gone before anyone looks
A launch calls for four hundred personalized images. The agent has a validated config and enough tokens. It renders one.
Human-in-Loop Highlight
A batch render on JsonCut fails in a way that is specific to how the platform is built. Every output starts its own short lifetime the moment it finishes, so four hundred renders submitted together are four hundred files expiring together, and a batch that turns out to be wrong was both paid for and deleted before anyone opened the third one. There is no reprieve available either: canceling a job only works while it is still queued, so once processing starts the spend is committed. So the agent renders exactly one variant, and stops: "Sample rendered from the approved config. The remaining 399 will cost the same per render and each output expires within its lifetime unless the flow publishes a link or copies it out. Approve the sample and I will render the batch and collect every output, or send changes and I will re-validate first." A designer looks at one image and answers. FlowRunner's human-in-the-loop step here is not an approval on a creative decision, it is the cheapest possible place to catch a mistake that gets four hundred times more expensive one step later.
Agent Capabilities
16 actionsJobs
6- Create Job Submits a render configuration and returns the job immediately. Image and video are different schemas rather than variants of one, so the config shape follows the output type.
- Get Job Retrieves a job's state and result, adding explicit done and failed booleans next to the vendor's status. The terminal set includes cancellation, not only completion and failure.
- Create Job And Wait Submits a job and polls it to completion. It returns a failed job rather than raising, because the reason is in the body, and on timeout the job keeps running so a later read can pick it up.
- List Jobs Lists jobs, filtered by status. The audit surface, and what stands in for a webhook on a platform that publishes none.
- Cancel Job Cancels a job while it is still queued. Once processing starts it is refused, so it cannot abort a render already underway.
- Validate Job Config Checks a configuration without spending tokens. It reports success at the protocol level even for an invalid configuration, with the actual verdict in the body, so a flow reading only the status treats every config as good. The cheapest guard available before a render.
Files
5- Upload File From URL Uploads a source file and sets its lifetime, within the platform's ceiling. Needed for fonts, which cannot be referenced by public URL, and for any source JsonCut cannot reach itself.
- List Files Lists the files currently held, which on a platform with short lifetimes is a much smaller set than the history of everything rendered.
- Get File Metadata Retrieves a file's details, including how long it has left. It reports an expired file distinctly from one that never existed, which is what lets a flow tell "we were too slow" apart from "we had the wrong id".
- Create Public Link Publishes a URL to a file that needs no API key. The usual way an output is handed downstream, and it cannot outlive the file it points at whatever expiry the link is given.
- Delete File Removes a file immediately rather than waiting for its lifetime to elapse.
Media Tools
3- Get Supported File Types Returns the source formats the platform accepts, which is what a flow checks before ingesting from an uncontrolled source.
- Validate Media File Checks that a media file is usable before it is referenced by a job.
- Get Video Duration Returns a video's duration from a public URL or an internal path. The practical way to size clips, since clip lengths in a video config have to be chosen before the render.
Schemas
2- List Schemas Lists the configuration schemas the platform publishes.
- Get Schema Returns the authoritative schema for an image or a video configuration. Worth reading into a flow that builds configs rather than hard coding a shape that will drift.
Frequently Asked Questions
What can FlowRunner do with JsonCut?
FlowRunner agents can run Create Job, Get Job, and Create Job And Wait in JsonCut, plus 13 more actions.
Does connecting JsonCut to FlowRunner require OAuth?
No. JsonCut connects to FlowRunner with an API key, no OAuth flow required.
Can JsonCut trigger a FlowRunner workflow automatically?
JsonCut doesn't currently expose triggers in FlowRunner. It connects as an action step inside workflows started by another trigger.
Start building with JsonCut
$100 in credits. No card required. Connect in minutes.