Files
The Files section of Global Configurator lets you upload, store, and manage reusable files — things like templates, reference data, configuration files, or input documents that your automations need. Instead of embedding files directly into a workflow, you store them once here and reference them by name from anywhere.
Files support full versioning, so you can update a file over time without breaking anything that already uses it — the active version is always what gets picked up.
How It Works
Storage Options
There are two places a file can live. You pick one when uploading.
| Storage Option | What It Is | Best For |
|---|---|---|
| Cloud Storage | AWS S3, bucket qinfinite-service-catalogue (us-east-1) | Production environments, larger files, high availability |
| Local Storage | MinIO (S3-compatible), bucket qinfinite-service-catalogue | On-premises or private environments |
Both options work the same way from your side. The difference is only where the bytes physically live.
Only these two storage options are available: Cloud Storage (AWS S3) and Local Storage (MinIO). The Storage Location field is required — you must choose one when uploading a file.
Uploading a File
- Open Global Configurator and go to the Files section.
- Click the upload zone that says "Click to upload or drag and drop", or drag your file straight onto it. You can also click Browse Files to open a file picker.
- Once the file is selected, the upload zone shows the filename and size. A Replace button appears if you want to swap the file before saving.
- Fill in the details:
- Description — what this file is for (optional but recommended).
- Tags — add labels like
finance,monthly, ortemplateto make the file easy to find. - Store Location — choose Cloud Storage or Local Storage (required).
- Click Run checks if you want to validate connectivity and verify the file checksum before saving.
- Click Create to save.
The system automatically:
- Detects the file's MIME type using Apache Tika.
- Extracts the file extension and sets the Type field (e.g., PDF, JSON, TXT).
- Records the file size in bytes.
- Uploads the file to S3 or MinIO under a
files/path.
Use descriptive tags. When you have dozens of files, tags are what make a specific file findable in seconds.
Upload Validation
Every upload is validated before the file is stored. Validation is defense-in-depth: it checks the file extension against an allow-list and a block-list, then sniffs the file's real content type from its bytes so a dangerous file cannot slip through by being renamed.
| Step | What It Checks | If It Fails |
|---|---|---|
| Extension allow-list | The file extension must belong to an allowed category (see below). | Upload is rejected with HTTP 415 Unsupported Media Type. |
| Extension block-list | The extension must not be an executable/script type — exe, dll, bat, ps1, sh, js, jar, py, and similar. | Upload is rejected with HTTP 415. |
| Real MIME sniffing | Apache Tika inspects the actual bytes to determine the true content type, independent of the file name. | — |
| Content-type block-list | The detected content type must not be a dangerous type. This catches an executable renamed to a safe extension. | Upload is rejected with HTTP 415, even though the extension looked safe. |
The content type detected during sniffing is persisted with the file's metadata, so the stored record reflects what the file actually is — not just what it was named.
Allowed Categories
| Category | Examples |
|---|---|
| Documents | PDF, DOC/DOCX, XLS/XLSX, PPT/PPTX, TXT, RTF, ODT |
| Images | PNG, JPG/JPEG, GIF, BMP, SVG, WEBP |
| Archives | ZIP, TAR, GZ, 7Z |
| Structured / data | JSON, XML, CSV, YAML |
| Certificates / security | PEM, CRT, PFX, JKS, PPK, KEY |
| Audio | MP3, WAV, and other common audio formats |
| Video | MP4, and other common video formats |
Renaming an executable to a permitted extension does not bypass validation. Because content is inspected from the actual bytes, a renamed executable is detected and rejected with HTTP 415.
File Size Limits
| Limit | Value |
|---|---|
| Maximum size per file | 5 GB |
| Maximum size per upload request | 5 GB |
Files larger than 5 GB cannot be uploaded. If you need to store larger datasets, consider splitting them or using a connection to an external storage system instead.
File Versioning
Every file in Global Configurator is versioned. Here is how it works:
- When you upload a new file, it starts at version 1.0 and is marked as the active version.
- When you upload a new version of an existing file, the previous version is deactivated and the new one becomes the active version (e.g., version 2.0).
- Old versions are kept — they are never deleted automatically. The file list shows an expand arrow (chevron) next to versioned files so you can see the full version history.
- The active version is always what workflows and references pick up.
What happens if you delete the active version?
If the currently active version is deleted, the system automatically promotes the next most-recent version to active. Your workflows keep working without interruption.
| Version State | Meaning |
|---|---|
| Active | The version currently used by workflows and references |
| Inactive | A previous version kept for history — not used unless promoted |
Deleting a file is a soft delete — the record is flagged as deleted but not immediately removed. If you need to permanently remove a file, contact your platform administrator.
The Files Table
The main Files list shows one row per file (the active version). Columns include:
| Column | What It Shows |
|---|---|
| Name | The original filename, with a version chip (e.g., v2) if multiple versions exist |
| Type | File format, uppercase (PDF, JSON, TXT, etc.) |
| Size | File size |
| Storage | Cloud Storage or Local Storage |
| Modified | Last modified date |
| Actions | Edit, Preview, Download, Delete |
Click the chevron (expand arrow) on a row to see all versions of that file inline.
Previewing and Downloading a File
Preview opens a modal with two panels:
- Left panel — a content viewer (Monaco editor) showing the file contents. Text-based files like JSON, TXT, and CSV render directly. Binary files like PDFs show their raw representation.
- Right panel — all metadata: name, type, size, storage location, last modified date, description, tags, and version.
Download streams the file directly from S3 or MinIO to your browser with a Content-Disposition: attachment header, so it saves to your downloads folder automatically.
How to Reference Files in Workflows
To use a file inside a workflow step, reference it with this expression pattern:
#[fl.filename]
For example, if your file is named monthly-report-template.xlsx, reference it as:
#[fl.monthly-report-template]
When you select a file from a dropdown inside a workflow builder, the label shows the filename with its version appended — for example, monthly-report-template.xlsx (v2) — so you always know which version you are working with.
The expression always resolves to the active version of the file at the time the workflow runs. Uploading a new version of a file automatically updates what all referencing workflows receive — no need to update the workflows themselves.
What Gets Recorded for Each File
| Field | Description |
|---|---|
| Name | Original filename |
| Type | File extension, uppercase (PDF, TXT, JSON, etc.) |
| Description | Free-text description of the file's purpose |
| Storage Location | CLOUD_STORAGE (AWS S3) or LOCAL_STORAGE (MinIO) |
| Path | The S3 or MinIO key where the file is stored, under the files/ folder |
| Size | File size in bytes |
| Tags | List of text labels for search and filtering |
| Version | Version number (1.0, 2.0, etc.) |
| Active Version | Whether this version is the one currently in use |
| Total Versions | How many versions of this file exist |
| Created By / Created | Who uploaded it and when |
| Last Modified By / Last Modified | Who last changed it and when |
Tips
When naming files, use a consistent naming pattern — for example, report-template-v1.xlsx or onboarding-checklist.pdf. Consistent names make search and referencing much easier.
Use tags to group files by team, project, or purpose. Examples: hr, finance-team, q1-2025, onboarding. Tags are searchable across the entire Files list.
The Run checks button validates that the storage backend is reachable and, if a checksum was provided, confirms the file integrity. Run it before saving if you want to catch upload issues early.