FME Flow Connector
Run FME Flow workspaces directly from QGIS — export layers, transform data, and load results back into your map or simply process and forget in FME Flow.
Quick start cheat sheet
-
FME Flow access — FME Flow must be installed locally or reachable
on your network. Use the server root URL (e.g.
http://your-fme-server); the plugin detects REST API v3 or v4 on connect. - QGIS 4.0+ and plugin — Install QGIS 4.0 or later and the FME Flow Connector plugin.
- API token — Create a token in FME Flow (User Settings → Manage Tokens) or get one from your administrator. Tokens expire — renew them in time. Permissions needed: list/submit jobs and shared resources; for publishing also Resources: Create and Repository create + publish.
- Template workspace (external) — Download QGISFMEFlowConnectorTemplate.fmw from GitHub. It is not bundled in the plugin zip. Adjust published parameters as needed.
-
Publish the workspace — Publish to a repository on FME Flow
(default:
qgisfmeflow, prefilled in the publish dialog), e.g. via Publish workspace / create folder… after connecting. Job Submitter is automatic — no separate registration step. -
Transit folder — Folder
qgis_fme_connectorunder Resources → Data (FME_SHAREDRESOURCE_DATA). Path:$(FME_SHAREDRESOURCE_DATA)/qgis_fme_connector/. The publish dialog can create it if missing. - Vector layer in QGIS — Select a vector layer in the connector before you run. On Run Workspace, the plugin converts it to GeoJSON (EPSG:4326) and uploads it to the transit folder — you do not export or upload the layer yourself.
-
Output parameter (return mode) — For
Process and Return data to QGIS, the workspace must write to
DestDataset_GEOJSON(not a hard-coded path elsewhere). - Run mode (optional) — Process and Return data to QGIS (load result into the map) or Process Layer in FME Flow Only (no download/layer in QGIS).
- Connect and run — Server URL + token → Connect → select workspace → Run Workspace.
Requirements
- QGIS 4.0 or later with the FME Flow Connector plugin installed.
- FME Flow server reachable from your machine (local network or hosted). Supports REST API v3 (FME Flow 2025 and earlier) and REST API v4 (FME Flow 2025.1+, including 2026).
- An API token with permission to list repositories, submit jobs, and access shared resources is required.
- An FME workspace published to FME Flow with Job Submitter enabled.
- Input and output published parameters configured for GeoJSON datasets (see FME Workspace Setup).
http://your-fme-server).
On connect, the plugin automatically detects which REST API your server exposes —
/fmeapiv4 (v4) or /fmerest/v3 (v3). You do not need to
add the API path to the URL yourself.
How It Works
The main dialog communicates with FME Flow using this pipeline:
Run modes
On the Parameters tab, choose how the plugin handles the job result after FME Flow finishes:
| Mode | Behaviour |
|---|---|
| Process and Return data to QGIS (default) | Submit via Job Submitter, wait for completion, download the output GeoJSON from shared resources, and load it into your QGIS project. |
| Process Layer in FME Flow Only | Submit via Job Submitter, wait for completion, and notify you when the job finishes. No result is downloaded and no layer is added to QGIS — output stays wherever your workspace writes it (database, file share, email, etc.). |
Your run mode choice is saved in QSettings (FMEFlowV2/run_mode)
and restored each time you open the dialog.
REST API compatibility
The Plugin supports both FME Flow REST API v4 and v3. On connect it will detect which version is available and the information will be saved per server in QSettings so the next connection reuses it. Use the Re-detect button next to Connect to clear the saved version and probe the server again.
| API | FME Flow versions | Base path |
|---|---|---|
| v4 | 2025.1, 2026+ (current) | /fmeapiv4 |
| v3 | 2025 and earlier | /fmerest/v3 |
| Step | What happens |
|---|---|
| Export | The selected QGIS layer is written to GeoJSON and reprojected to WGS 84 (EPSG:4326). |
| Upload | The GeoJSON file is uploaded to $(FME_SHAREDRESOURCE_DATA)/qgis_fme_connector/ on FME Flow. |
| Submit | A job is submitted via the Job Submitter service using the detected REST API (v4: POST /jobs; v3: POST /transformations/submit/{repository}/{workspace}). |
| Output | In Process and Return mode, the workspace writes its result to a known output path; the plugin downloads it and adds it to the QGIS project. In Process Layer in FME Flow Only mode, this download step is skipped. |
Main Dialog
Open the dialog from the FMETools toolbar or FME Platform Connectors → FME Flow Connector. The window title shows FME Flow Connector V0.0.1.
Dark / Light mode
Use the theme toggle in the top bar to switch between dark and light UI. Your preference is saved automatically.
Layer picker
Select the active vector layer in the top-right combo box. It is exported and sent to FME Flow when you run a workspace.
Step-by-step
- Connect — Enter your FME Flow server URL and API token, then click Connect. Repositories and workspaces load in the left sidebar. Use Re-detect (next to Connect) to clear the saved REST API version for this server and connect again.
- Select a workspace — Click a workspace in the tree. Registered services, run mode, parameters, and workspace details appear in the main panel.
- Choose run mode — On the Parameters tab, select Process and Return data to QGIS (default) or Process Layer in FME Flow Only. Your choice is remembered between sessions.
- Configure parameters — Fill in any published parameters your workspace requires. The registered services list above is informational only — runs always use Job Submitter.
- Choose output (optional) — In return mode, leave the output path blank to load the result as a scratch layer, or set a file path to save the GeoJSON locally. The output field is disabled in Process Layer in FME Flow Only mode.
- Run — Click ▶ Run Workspace (return mode) or ▶ Submit to FME Flow (process only). Progress and log messages appear on the Output Log tab. In return mode, the result layer is added to your QGIS project when complete.
Tabs
- Parameters — Registered services (informational), run mode, published parameters, and optional output file path.
- Details — Workspace metadata from FME Flow (author, build, datasets).
- History — Recent run times, workspace names, and status.
- Output Log — Step-by-step execution log including job ID and status updates.
- Documentation — This user guide, embedded in the dialog (includes developer information).
Publish Workspace
Once connected, the Publish workspace / create folder… button in the left sidebar (below Refresh) lets you set up FME Flow for the connector without leaving QGIS. It can, in a single step:
- Create the shared transit folder
(
qgis_fme_connector) underFME_SHAREDRESOURCE_DATAif it does not already exist. - Create the target repository if it does not exist.
- Publish a template workspace (
.fmw) that you select from your machine to that repository.
.fmw: The template workspace is
not bundled with the plugin. Download
QGISFMEFlowConnectorTemplate.fmw
from GitHub to your machine, then pick it with the Browse… button in the
publish dialog. Only download over HTTPS and verify its integrity before publishing.
Publish dialog fields
| Field | Purpose |
|---|---|
| Connected server | Read-only — shows the server root and detected REST API version. |
| Repository | Target repository, prefilled from the ones already loaded. Type a new name to create one. |
| Create repository if missing | When on (default), creates the repository if it does not exist. |
| Workspace (.fmw) | The template workspace to upload — choose it with Browse…. |
| Transit folder name | Folder created under FME_SHAREDRESOURCE_DATA
(defaults to qgis_fme_connector). |
| Create transit folder if missing | When on (default), creates the transit folder if it does not exist. |
| Overwrite workspace if it exists | When on (default), re-publishing replaces an existing workspace of the same name. |
Click Publish to run the work on a background thread (the UI never freezes). When it finishes, a summary of what was created/published is shown and the workspace tree refreshes so the new workspace appears.
Idempotent by design
Existence is checked first, so re-running the publish is safe: an existing
folder or repository is treated as success (HTTP 409 Already exists
is not an error), and the workspace is only overwritten when you opt in.
FME Workspace Setup
Your FME workspace must be configured to work with the connector's upload/download pipeline. A template workspace is available as QGISFMEFlowConnectorTemplate.fmw on GitHub.
Published parameters
-
Input — A GeoJSON source parameter (commonly
SourceDataset_GEOJSON) receives the uploaded file path from shared resources. -
Output — A GeoJSON destination parameter
(
DestDataset_GEOJSON) must write to the path provided by the plugin:$(FME_SHAREDRESOURCE_DATA)/qgis_fme_connector/output_*.geojson
FME Flow registration
- Publish the workspace to a repository on FME Flow — either from FME Workbench, or directly from the plugin using Publish workspace / create folder….
- No manual service registration is required: workspaces are runnable via the Job Submitter service automatically.
- Ensure the API token has access to shared resources
(
FME_SHAREDRESOURCE_DATA).
DestDataset_GEOJSON published parameter. If the output path is
hard-coded elsewhere, the plugin will not be able to download the result.
Troubleshooting
Connection failed
- Verify the server URL is reachable in a browser.
- Check the API token is valid and not expired.
- Confirm firewall rules allow HTTPS/HTTP to FME Flow.
- On FME Flow 2026+, ensure v4 is available at
/fmeapiv4/docs/index.html. A 404 on/fmerest/v3is expected — the plugin falls back to v4 automatically. - Repositories such as Dashboards or Automations Exercises contain no runnable workspaces — the plugin skips them silently instead of failing the whole connection.
Job submitted but no output layer
- If you selected Process Layer in FME Flow Only, no layer is expected — check the Output Log for the completion message.
- In Process and Return mode, check the Output Log for download errors.
- Ensure the FME workspace writes to
DestDataset_GEOJSON. - Verify the output file exists on FME Flow shared resources under
qgis_fme_connector/.
Upload or submit errors
- Confirm the token can write to
FME_SHAREDRESOURCE_DATA. - Job Submitter is automatic for every published workspace — no manual registration is required. If a run fails, check the Output Log for the actual FME Flow error rather than the services list.
- Review published parameter names — the plugin auto-detects the GeoJSON input parameter.
Current Version
The plugin current version V0.0.1 (experimental)