Skip to main content
The Download component renders as a button that downloads a file when the end user clicks it — for example, a generated contract, an uploaded document, or a static form. You configure which file it serves through the component’s Download action.
Download component in the UI Designer: palette entry, canvas, and settings with the Download action

Configuring a Download component

The component sits in the Basic category of the component palette. Drop it inside a container or card — it is available in both process user tasks and UI Flows, on web and mobile layouts, including collection prototypes and headers/footers. It cannot be placed directly inside forms or table cells.

Properties

  • Label: The button text. Default: Download
  • Save-as File Name: Optional file name used when saving the downloaded file (e.g., MyFile.pdf); supports ${} expressions. When left empty, files stored in the Documents plugin keep their original file name.
  • Toast notification on success: Toggle ON to show a confirmation toast after the download completes, with a configurable Success Message (default: File downloaded).
  • Toast notification on error: Toggle ON to show a toast when the download fails, with a configurable Error Message (default: There was an error downloading the file).
  • Loading behavior: None or Overlay. With Overlay, a loading indicator with a configurable Loading message (default: Downloading...) is shown while the file is being fetched.
The notification and loading options apply to the web renderer. On Android they are not available — the component downloads the file without toasts or a loading overlay.

Selecting the file to download

The Download component offers a single Download action on click, added in the component’s Event Handlers section. The Source select determines where the file comes from, with the same options as File Preview:
  • Media Library: a PDF from the project’s Media Library. Pick one with Select from Media Library or add one with Upload to Media Library.
  • Document Plugin path (process user tasks): a Documents plugin downloadPath, such as the one in an upload or document-generation reply. The renderer adds the Documents plugin base URL, so you don’t need a business rule to build the URL.
  • Document Plugin (UI Flows): the object that contains downloadPath, for example an upload reply. When Save-as File Name is empty, the file keeps its original file name.
  • URL: a complete, absolute URL.
For Document Plugin path and URL, Value type sets where the value comes from: Static for a fixed value, or Variable to read it from a data key. Document Plugin always reads a data key. Inside a collection prototype, the key resolves against the row the component is rendered in, so every row of a list serves its own file. With Document Plugin path, the file is saved as document unless you set Save-as File Name.
Download event handler on a File Download component, with Source set to Document Plugin Path and Data key set to downloadPath
Files stored in the Documents plugin (and FlowX download URLs) are fetched and saved directly with the resolved file name. A plain external URL opens in a new browser tab instead of downloading, and the success/error notifications do not apply to it.
Serve stored files through this component rather than through a link of your own. A file held by the Documents plugin is served over the app’s authenticated session, and the Download component fetches it that way. A plain browser navigation to the same address sends no credentials, so reusing a stored file’s download path in a URL source with a Static value, or in a link or button wired by hand, returns an authorization error instead of the file.

Styling

The Download component renders as a button and reuses button styling: a Type (default ghost), an optional Icon with configurable position, and valid CSS properties per platform. For more information, see the styling documentation.

Platform support

Configured in the FlowX Designer, with runtime support on the web and Android renderers.

File preview

Preview file contents inside a UI without opening the file

Multiple file upload

Let users upload one or more files from a rendered app
Last modified on October 30, 2026