Windmill
Windmill is an open-source developer platform and workflow engine for turning scripts into webhooks, workflows, and internal apps. It supports TypeScript, Python, Go, PHP, Bash, C#, SQL, and Rust, and serves as an open-source alternative to Retool, Airflow, and Temporal for building comprehensive internal tools including endpoints, workflows, and UIs.
Solid contracts, transparent operations, and an easy start — typically complete on four or five facets with one clear soft spot.
API Evangelist profiles Windmill the way a machine reads it — 100 machine-readable artifacts across 59 APIs, pulled from the provider's own public surface and indexed so a developer, an analyst, or an AI agent can evaluate it against every other provider on the network.
Every provider in the network is reduced to the same set of machine-readable artifacts — OpenAPI contracts, event specifications, GraphQL schemas, runnable collections, pricing and rate-limit signals, security posture, OAuth scopes, and the agent surfaces (MCP servers and skills) that let software drive the API on its own. We profile them because the interface is the part of a company you can actually inspect: it is a truer signal of what a provider does than any marketing page. From those artifacts we compute the Kin Score — Windmill scores 65.1/100 (strong), with a separate agent-readiness read of 48/100 (agent ready). The full breakdown is below, followed by every artifact we hold — each card links through to its machine-readable definition on apis.io.
Kin Score
This is the API Evangelist rating — a single, repeatable read computed from the artifacts on this page. Green fill is points earned; the red track is points possible, so every bar shows earned-versus-possible at a glance.
How we profile Windmill
Each block below is one kind of artifact we hold for Windmill. For each we say what it is and why it earns a place in the profile, then list every one we've indexed — capped at two rows, scroll within the panel for the rest.
APIs 59
Each API is captured as its own OpenAPI definition — every operation, parameter, and response. This is the single most useful machine-readable description of what an API does, and it's what lets us score, lint, mock, and generate against it without asking the provider for anything.
Individual APIs this provider publishes, each with its own machine-readable definition.
Windmill admin API
The admin API from Windmill — 6 operation(s) for admin.
Windmill agent_workers API
The agent_workers API from Windmill — 5 operation(s) for agent_workers.
Windmill app API
The app API from Windmill — 30 operation(s) for app.
Windmill asset API
The asset API from Windmill — 3 operation(s) for asset.
Windmill audit API
The audit API from Windmill — 2 operation(s) for audit.
Windmill azure_trigger API
The azure_trigger API from Windmill — 13 operation(s) for azure_trigger.
Windmill capture API
The capture API from Windmill — 6 operation(s) for capture.
Windmill concurrencyGroups API
The concurrencyGroups API from Windmill — 4 operation(s) for concurrencygroups.
Windmill config API
The config API from Windmill — 9 operation(s) for config.
Windmill documentation API
The documentation API from Windmill — 1 operation(s) for documentation.
Windmill draft API
The draft API from Windmill — 2 operation(s) for draft.
Windmill email_trigger API
The email_trigger API from Windmill — 8 operation(s) for email_trigger.
Windmill favorite API
The favorite API from Windmill — 2 operation(s) for favorite.
Windmill flow API
The flow API from Windmill — 21 operation(s) for flow.
Windmill flow_conversations API
The flow_conversations API from Windmill — 3 operation(s) for flow_conversations.
Windmill folder API
The folder API from Windmill — 11 operation(s) for folder.
Windmill gcp_trigger API
The gcp_trigger API from Windmill — 11 operation(s) for gcp_trigger.
Windmill Git Sync API
The Git Sync API from Windmill — 7 operation(s) for git sync.
Windmill granular_acl API
The granular_acl API from Windmill — 3 operation(s) for granular_acl.
Windmill group API
The group API from Windmill — 19 operation(s) for group.
Windmill health API
The health API from Windmill — 2 operation(s) for health.
Windmill helpers API
The helpers API from Windmill — 22 operation(s) for helpers.
Windmill http_trigger API
The http_trigger API from Windmill — 9 operation(s) for http_trigger.
Windmill indexSearch API
The indexSearch API from Windmill — 7 operation(s) for indexsearch.
Windmill input API
The input API from Windmill — 6 operation(s) for input.
Windmill integration API
The integration API from Windmill — 1 operation(s) for integration.
Windmill job API
The job API from Windmill — 77 operation(s) for job.
Windmill kafka_trigger API
The kafka_trigger API from Windmill — 10 operation(s) for kafka_trigger.
Windmill mcp API
The mcp API from Windmill — 1 operation(s) for mcp.
Windmill mcp_oauth API
The mcp_oauth API from Windmill — 3 operation(s) for mcp_oauth.
Windmill metrics API
The metrics API from Windmill — 3 operation(s) for metrics.
Windmill mqtt_trigger API
The mqtt_trigger API from Windmill — 8 operation(s) for mqtt_trigger.
Windmill native_trigger API
The native_trigger API from Windmill — 13 operation(s) for native_trigger.
Windmill nats_trigger API
The nats_trigger API from Windmill — 8 operation(s) for nats_trigger.
Windmill npm_proxy API
The npm_proxy API from Windmill — 4 operation(s) for npm_proxy.
Windmill oauth API
The oauth API from Windmill — 13 operation(s) for oauth.
Windmill oidc API
The oidc API from Windmill — 1 operation(s) for oidc.
Windmill openapi API
The openapi API from Windmill — 2 operation(s) for openapi.
Windmill path_autocomplete API
The path_autocomplete API from Windmill — 1 operation(s) for path_autocomplete.
Windmill postgres_trigger API
The postgres_trigger API from Windmill — 20 operation(s) for postgres_trigger.
Windmill raw_app API
The raw_app API from Windmill — 1 operation(s) for raw_app.
Windmill resource API
The resource API from Windmill — 23 operation(s) for resource.
Windmill schedule API
The schedule API from Windmill — 10 operation(s) for schedule.
Windmill script API
The script API from Windmill — 34 operation(s) for script.
Windmill service_logs API
The service_logs API from Windmill — 2 operation(s) for service_logs.
Windmill setting API
The setting API from Windmill — 43 operation(s) for setting.
Windmill settings API
The settings API from Windmill — 4 operation(s) for settings.
Windmill sqs_trigger API
The sqs_trigger API from Windmill — 8 operation(s) for sqs_trigger.
Windmill teams API
The teams API from Windmill — 1 operation(s) for teams.
Windmill token API
The token API from Windmill — 1 operation(s) for token.
Windmill trigger API
The trigger API from Windmill — 2 operation(s) for trigger.
Windmill user API
The user API from Windmill — 53 operation(s) for user.
Windmill variable API
The variable API from Windmill — 10 operation(s) for variable.
Windmill volume API
The volume API from Windmill — 4 operation(s) for volume.
Windmill websocket_trigger API
The websocket_trigger API from Windmill — 8 operation(s) for websocket_trigger.
Windmill worker API
The worker API from Windmill — 9 operation(s) for worker.
Windmill workspace API
The workspace API from Windmill — 96 operation(s) for workspace.
Windmill workspace_dependencies API
The workspace_dependencies API from Windmill — 5 operation(s) for workspace_dependencies.
Windmill workspace_integration API
The workspace_integration API from Windmill — 8 operation(s) for workspace_integration.
Scroll within the panel for all 59 ·
Open Collections 1
Open, tool-agnostic collections carry the same runnable value as Postman without locking you to one client — the portable, forkable form of the same exercise.
Open, tool-agnostic API collections (OpenAPI-derived and Bruno).
Windmill API
OPEN COLLECTIONArazzo Workflows 10
Real integrations are rarely a single call. Arazzo describes the multi-step sequences — auth, then create, then confirm — so both a human and an agent can follow the choreography, not just the endpoints.
Multi-step API workflows described with the Arazzo specification.
Windmill Bootstrap a Workspace
Create a workspace, confirm it exists, then read back its display name.
ARAZZOWindmill Create and Run a Script
Deploy a new script from source, confirm it deployed, then run it.
ARAZZOWindmill Provision a Resource and Run a Consuming Script
Create a typed resource, verify its value, then run a script that consumes it.
ARAZZOWindmill Provision a Variable and Run a Consuming Script
Create a variable, verify its value, then run a script that reads it.
ARAZZOWindmill Run a Flow and Await its Result
Trigger a flow by path, poll job updates until completion, then read the result.
ARAZZOWindmill Run a Script and Await its Result
Trigger a script by path, poll the job until it completes, then read the result.
ARAZZOWindmill Run a Script and Clean up its Job
Run a script, await its result, capture it, then delete the completed job record.
ARAZZOWindmill Run a Script with a Cancel Guard
Run a script, inspect the job, and cancel it if it is still queued or running.
ARAZZOWindmill Schedule a Flow
Resolve a flow, create a cron schedule for it, then read the schedule back.
ARAZZOWindmill Schedule a Script
Resolve a script, create a cron schedule for it, then read the schedule back.
ARAZZOScroll within the panel for all 10 ·
Pricing Plans 1
Pricing is part of the interface. Machine-readable plans tell you what a tier costs and includes before you commit — one of the six things the Kin Score reads for commercial clarity.
Published pricing tiers and plan structures.
Rate Limits 1
Rate limits are the difference between a demo that works and a production integration that doesn't fall over. Publishing them is an operational-transparency signal — and a hard requirement for any agent that plans its own throughput.
Documented rate limits and quota policies.
Windmill Rate Limits
RATE LIMITSFinOps 1
Cost, billing, and metering signals let a buyer model the financial operations of an API before it's live. We profile them for the same reason we profile pricing: the money is part of the contract.
Cost, billing, and metering signals for API financial operations.
Windmill Finops
FINOPSSemantic Vocabularies 1
JSON-LD contexts give the data shared meaning across APIs. We profile them because semantics are what let a machine reconcile 'customer' here with 'customer' somewhere else.
JSON-LD contexts and semantic vocabularies used across these APIs.
Windmill Context
JSON-LDSpectral Rules 2
Governance rulesets we run against this provider's specs — the automated checks behind parts of the score. Profiling them makes the quality bar explicit and re-runnable, not a matter of opinion.
Windmill API Rules
SPECTRALWindmill API Rules
SPECTRALJSON Schema 10
Standalone JSON Schema definitions describe the data models behind the API. We profile them so the shapes are validatable on their own — useful long after a single request is forgotten.
Standalone JSON Schema definitions for this provider's data models.
CompletedJob
JSON SCHEMACreateVariable
JSON SCHEMAFlow
JSON SCHEMAJob
JSON SCHEMAQueuedJob
JSON SCHEMAResource
JSON SCHEMASchedule
JSON SCHEMAScript
JSON SCHEMAUser
JSON SCHEMAWorkspace
JSON SCHEMAScroll within the panel for all 10 ·
JSON Structure 7
JSON Structure captures the data shapes in a form built for tooling — a complement to JSON Schema that keeps the model machine-legible.
JSON Structure definitions describing this provider's data shapes.
Windmill Flow Structure
JSON STRUCTUREWindmill Job Structure
JSON STRUCTUREWindmill Resource Structure
JSON STRUCTUREWindmill Schedule Structure
JSON STRUCTUREWindmill Script Structure
JSON STRUCTUREWindmill User Structure
JSON STRUCTUREWindmill Workspace Structure
JSON STRUCTUREScroll within the panel for all 7 ·
Examples 4
Real request and response payloads are what turn a spec from abstract into obvious — and they're one of the twelve things an agent needs to call an API correctly on the first try.
Example request and response payloads for these APIs.
Windmill Run Script Example
EXAMPLESecurity Posture 2
Authentication, domain security, vulnerability disclosure, and trust-center signals — the evidence that a provider takes security seriously enough to document it. We profile it because you can't govern what you can't see.
Authentication, domain security, vulnerability disclosure, and trust-center signals.
Agentic Access 1
An x-agentic-access contract marks which operations are safe for an agent to run on its own and which need a human in the loop. It is the difference between an API an agent can use and one it can use safely.
Recommended x-agentic-access execution contracts for AI agents.
Resources
Every other property we hold for Windmill — documentation, portals, status pages, policies, and corporate surface — grouped by the job it does, following the integrator's arc from getting started to running in production.
Get Started 3
Portal, sign-up, and the first successful call
Documentation 2
Reference material describing how the API behaves
Agent Surfaces 1
MCP servers, agent skills, and machine-readable catalogs
Design & Contract 12
Pagination, idempotency, versioning, errors, and events
Scroll within the panel for all 12 ·
Build 3
SDKs, sample code, and the tooling you integrate with
Access & Security 3
Authentication, authorization, and security posture
Operate 5
Status, limits, changes, and where to get help
Commercial 5
Pricing, plans, and the legal terms of use
Company 4
The organization behind the API
Other 2
Properties that don't map to a standard resource type
← All providers · Data indexed from github.com/api-evangelist/windmill · machine-readable index on apis.io