What is Assembly Replay?

Transloadit Assembly Replay starts a new Assembly from an earlier Assembly’s stored Instructions when its inputs can be recovered, without requiring the original files to be uploaded again or the Instructions to come from a Template. Replay can be triggered manually; an Assembly with ASSEMBLY_CRASHED status is replayed automatically when its Workspace enables that option.

How Assembly Replay works

Replay creates another processing attempt from a previous execution. It reuses the Instructions stored with the original Assembly, so a Template is not required, although Template-backed Assemblies can re-resolve their Template at replay time. Inputs are recovered rather than re-transferred: Transloadit prefers its internal temporary copies of uploads, which are retained for roughly 24 hours, and otherwise imports each upload from its stored URL, while Steps that import or generate files simply recreate their inputs. Automatic replay addresses crashed executions in Workspaces that enable it, and manual replay gives an operator explicit retry control. The new run is a distinct execution whose status links back to the parent.

Key facts

  1. Eligibility depends on recoverable inputs, not on a Template or a fixed deadline. An Assembly with neither recoverable uploaded files nor import Steps is rejected with ASSEMBLY_CANNOT_BE_REPLAYED. The roughly 24-hour retention applies to Transloadit’s internal temporary upload copies; it is not a hard replay cutoff.
  2. The replayed work is a new Assembly with its own identifier; its status references the original through parent_assembly_status, and the replay request may supply a different notify_url or override Steps.
  3. External inputs or destinations can change between attempts, making replay non-deterministic when a Step reads mutable remote state or writes to a non-idempotent target.

When Assembly Replay matters

Replay an eligible Assembly when processing failed but re-uploading the originals would be wasteful. Check that every input is still recoverable and that the Instructions still fit the current external state, and track the replay as a new Assembly correlated with its parent.

Turn media knowledge into a working pipeline

Connect uploads, processing, AI, storage, and delivery through one declarative API — with the encoding stack, scaling, and format churn handled for you.

Try Transloadit for free