What is an Assembly Variable?

A Transloadit Assembly Variable is a placeholder such as ${file.original_basename} that resolves during processing. Robots use these values to adapt behavior from the current file, from submitted fields, or from Assembly-level context such as ${assembly.id} and ${unique_prefix}.

Request + files
Results + status
A processing platform accepts an authenticated request, executes a workflow, and returns observable results. This diagram shows platform workflows broadly, not specifically Assembly Variables.

How Assembly Variables work

Variables are expressions evaluated against runtime context when a Robot needs values that are unknown at Template authoring time. Their namespaces expose file attributes, submitted fields, and Assembly-level values such as identifiers and unique prefixes, allowing one graph to adapt names and options per input. They differ from literal parameters because expansion occurs during execution and may vary across files. The resolved value crosses into paths or Robot settings, so its type, allowed characters, and absence behavior matter.

Key facts

  1. File-scoped variables can resolve differently for every item in one Assembly, which enables per-source naming but can also create collisions when basenames repeat.
  2. Fields provide request-specific data to Instructions without changing the Template: they can arrive as form fields submitted with the upload or be set programmatically in the fields parameter, with form-submitted values taking precedence on conflict. They remain untrusted input and require validation before sensitive use.
  3. A missing or malformed value can propagate into a Robot parameter or output path; integrations should test fallback behavior rather than assume every file exposes every field.

When Assembly Variables matter

Use variables when output names or Robot options must depend on per-file or per-request data without separate Instructions. Sanitize values used in paths or names, because unexpected input can create invalid or conflicting outputs.

Common use cases for platform workflows

These examples cover platform workflows broadly, not specifically Assembly Variables.

  • Running repeatable upload, import, processing, AI, storage, and notification pipelines.
  • Tracking long-running media work independently from an application request.
  • Referencing centrally stored credentials by name instead of sending storage secrets with each request.

Working with platform workflows

This guidance covers platform workflows broadly, not just Assembly Variables.

A client authenticates and submits files or references together with workflow instructions. The platform validates the request, schedules dependent operations, records state transitions, and exposes results through a response, polling endpoint, or notification.

Platform concepts become reliable only when their lifecycle is explicit. Authentication, idempotency, retries, timeouts, observability, quotas, and terminal states should be designed together rather than added after failures occur.

What you gain

  • Reusable workflows separate application intent from processing infrastructure.
  • Stable job identifiers and lifecycle events improve observability and recovery.
  • Managed queues and workers let products scale without embedding every media tool.

What it costs

  • Synchronous responses are simple but keep connections open while long work executes.
  • Aggressive retries improve recovery from transient faults but can duplicate work or overload a dependency.
  • Higher concurrency reduces queue time until resource contention or a downstream limit becomes the bottleneck.

Before production

  1. Define authentication, authorization, idempotency, retries, and terminal error behavior.
  2. Observe queue time, execution time, callbacks, and partial results with stable identifiers.
  3. Exercise malformed, duplicate, interrupted, and unauthorized requests before launch.

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