Windmill
Windmill is an open-source developer platform that turns scripts (Python, TypeScript, Go, Bash, SQL, and more) into internal tools, UIs, workflows, and cron jobs. It runs as Windmill Cloud (app.windmill.dev) or self-hosted, with a distributed worker fleet executing jobs. Everything in a workspace - scripts, flows, apps, schedules, variables, resources, triggers - is addressable over a single REST API (base https://app.windmill.dev/api on Cloud, or /api self-hosted), authenticated with a Bearer token, and is the same surface the Windmill CLI and web UI use.
APIs
Windmill Scripts API
Create, list, get, update, archive, and version scripts - the core runnables written in Python, TypeScript (Bun/Deno), Go, Bash, SQL, and other supported languages. Scripts are ...
Windmill Flows API
Compose scripts into directed-acyclic-graph flows with branches, loops, approvals, retries, and error handlers. Create, list, get, and update flows, and inspect their versions.
Windmill Apps API
Manage low-code apps - drag-and-drop UIs backed by scripts and flows. Create, list, get, and update apps, and expose public app views for sharing.
Windmill Jobs API
Trigger and manage job executions - run a script or flow by path or hash (fire-and-forget or run-and-wait-result), list queued and completed jobs, get job status and results, an...
Windmill Schedules API
Schedule scripts and flows on cron expressions. Create, list, get, update, and enable/disable schedules attached to a runnable path.
Windmill Variables API
Manage workspace variables and secrets - encrypted, path-scoped values injected into scripts and flows at runtime. Create, list, get, update, and delete variables.
Windmill Resources API
Manage resources and resource types - structured, typed connection objects (database credentials, API keys, cloud accounts) referenced by scripts and flows. Create, list, get, u...
Windmill Workspaces API
List, create, archive, and delete workspaces (isolated tenants), and read or update workspace settings, invites, and membership. Windmill resources are all scoped under a worksp...
Windmill Users API
Manage users globally and per workspace, log in and out, resolve the current identity (whoami), create and revoke API tokens, and manage service accounts used for automation.
Windmill Groups API
Manage user groups used for role-based access control. Create, list, get, update, and delete groups, and add or remove members.
Windmill Folders API
Manage folders - the ownership and permission boundaries that group scripts, flows, apps, variables, and resources. Create, list, get, update, and delete folders and manage thei...
Windmill Audit Logs API
List and retrieve audit log entries recording who did what in a workspace. Audit logs are an admin-only capability and a Windmill Enterprise Edition feature.
Windmill Workers API
Observe the distributed worker fleet that executes jobs - list active workers, their worker groups and tags, and read queue metrics. Compute capacity is billed in Compute Units ...
Windmill Triggers API
Configure event triggers that run scripts and flows - HTTP routes, WebSocket, Kafka, NATS, Postgres, SQS, and MQTT triggers. Note that WebSocket triggers have Windmill connect O...
Windmill OIDC API
Mint short-lived OIDC (JWT) tokens from within a job so scripts and flows can authenticate to external cloud providers (AWS, GCP, Azure, Vault) without long-lived secrets. OIDC ...