infery
Workflows

The chain you do by hand, becomes one run

Twenty times you did it yourself: write the brief, generate the scene, animate it, add the voiceover, crop it for a different platform. A workflow is that same chain, saved once as a graph — run it again with a new brief, and every step happens the way you did it the first time.

  • Seven kinds of step
  • 31 named transforms
  • Branching and fan-out
  • Runs on your own inputs
A workflow on the canvas: a brief feeds a model step, which branches into an image step and a voice step, and both rejoin at the output.

What a step can be

Not a prompt describing what should happen — an actual step, of a specific type, with its own input and output.

A model call

Chat, structured output, tool use — the same call you would make on its own, wired in as one node that hands its answer to whatever comes next.

A generation call, any modality

An image, a video, a voiceover, a track, or a 3D model built from a mesh — the same generation call you make in the Studio, as a node with the last step’s output wired into its input.

One of 31 named transforms

Crop a clip, extract a frame, add a watermark, convert a document, unpack an archive, search the web — each a real step type of its own, not a prompt asking a model to do it.

Your own code, when you need it

A Node or Python snippet, run as one step against whatever the step before it produced — for the one transform that isn’t already named.

A call to something of yours

An HTTP request to your own endpoint, with the run’s data going out and its response coming back into the next step — the graph reaching outside the product when it needs to.

One step becomes many

A fan-out over a list — reruns a whole sequence of up to 20 steps per item, not just one; several branches at once; or a whole saved workflow, called by id and version, as a single step inside a bigger one.

The graph

A port can feed more than one step

Every step has an input port and an output port. clip's output goes to final, the next step in the chain — and, separately, into a foreach step that reruns a crop once per output format. That second edge is a branch: one output, two consumers, in the same graph.

  • final takes two inputs on two ports: the video from clip, and a voiceover you attach as a declared input
  • A foreach step does not run anything itself — it wraps a sequence of up to 20 steps and reruns that whole sequence once per item in a list
  • Here the wrapped sequence is one step, video.crop, one of the 31 named transforms — run once per format
A pipeline as a graph: two media steps, scene and clip, feed a video.add_audio step named final; clip also branches into a foreach step that runs video.crop once per output formatinput: briefinput: voicescenemediaclipmediafinalvideo.add_audiovideoaudiooutput: videoforeachover 3 output formats9:16video.crop1:1video.crop16:9video.crop
Reading a run

Change one step, not the whole run

A run's real output is not only the final file — it's every piece along the way, each with its own cost. Open scene, clip and final and see exactly what each one made and what it spent. If clip is the one you don't like, change that step and rerun it, and everything after it — the parts of the run that already worked stay exactly as they were.

  • Each step's own output previewed inline — an image, a video, a document — not a link you click to find out what it made
  • Credits and duration sit next to each step, not only as one total for the whole run
  • Run this step and everything that depends on it: one step changed, not the graph rerun from the top
A finished run: each step shows its own output — the written script, the generated frame, the voiceover player — with credits and duration per step along the bottom.

Prefer to start from something already built? Browse the template catalogue.

Frequently asked questions

What actually counts as a step?

Seven base kinds: a model call, a media or 3D generation call, an HTTP call, several branches at once, a fan-out over a list, and a whole saved workflow called as one step inside another. Alongside those, 31 named transforms — crop, transcode, extract text, search the web, run your own code, and more — each its own step type.

Can I run the same workflow with different inputs?

Yes — that is the point of saving one. The graph stays fixed; what you declared as inputs (a brief, a reference image, a voice file) takes a new value each time you run it.

What happens when one step fails?

Every step before the failure keeps its own output, inspectable on its own — the image or video it actually produced, not a stack trace you have to interpret.

Do I need to write code to build one?

No. Add a node, wire its input port to the step before it, run it — on the canvas. Code is one of the 31 named transforms, there for the one time you already have a snippet.

Can a workflow call another workflow?

Yes. A sub_pipeline step invokes a saved, published workflow by its id and a specific version, as a single step inside a bigger one.

What does a run cost?

The sum of what each step costs on its own — a model call, a generation call, a transform. The run view shows credits per step next to its duration, so a slow or expensive step is the one you see, not a guess.

Save the chain you keep repeating

Free trial credits, no card. Build the graph once on the canvas and run it again on the next brief.