Python API
Build data pipelines programmatically with Flowfile's Polars-compatible API. Pipelines built this way are version-controllable, reproducible, and open unchanged in the visual editor.
Backend required — not in Flowfile Lite
The Python API runs the full Flowfile engine in-process. It is not part of the browser-only Flowfile Lite edition, which is visual-only. Install the Python package to use this API.
If you know Polars, most of this API will look familiar: the FlowFrame mirrors a Polars LazyFrame, and expressions (ff.col, ff.when, the .str/.dt namespaces) work the same way. The additions are the parts that connect your code to the rest of Flowfile — cloud and database connectors, the catalog, and opening a pipeline in the visual editor.
Quick example
This snippet is a repository file executed by CI — it cannot drift from the real API:
import flowfile as ff
SALES = "https://raw.githubusercontent.com/edwardvaneechoud/flowfile/main/data/templates/supermarket_sales.csv"
result = (
ff.read_csv(SALES)
.unique()
.filter(ff.col("quantity") > 7)
.group_by("city")
.agg(
ff.col("gross_income").sum().alias("total_income"),
ff.col("gross_income").median().alias("median_income"),
)
)
Build the same chain without the final .collect() and the pipeline object opens on the canvas via ff.open_graph_in_editor(pipeline.flow_graph) — see Visual UI Integration.
Documentation
Quick Start
Install the package and build your first pipeline.
Core Concepts
- FlowFrame and FlowGraph — the lazy, graph-connected data model
- Expressions — Polars-style column operations
- Formulas in Python — methods that accept the Excel-like formula language
API Reference
- Reading Data
- Writing Data
- Data Types
- DataFrame Operations
- Aggregations
- Joins
- Cloud Storage
- Visual UI Integration
- Catalog References
Tutorials
For contributors
To understand how Flowfile works internally or contribute to the project, see the Developer Documentation.