I built this because I kept running into APIs with no documentation — or docs that were months out of date. I'd been working on an Envoy control plane (Flowplane) and needed accurate schemas for the APIs I was integrating with. Writing OpenAPI specs by hand wasn't going to happen.
Specwatch sits as a local reverse proxy. You point it at an API, use it normally, and it infers the schema from the traffic. It figures out types, required fields, enums, path parameters, auth schemes — then exports an OpenAPI 3.1 spec.
No raw request data is stored — only the inferred schemas go into a local SQLite database. The proxy is non-blocking (your response comes back first, inference runs after).
It's a single npx command, no cloud, no account. Happy to answer questions about the inference approach or anything else.
rajeevramani•1h ago
Specwatch sits as a local reverse proxy. You point it at an API, use it normally, and it infers the schema from the traffic. It figures out types, required fields, enums, path parameters, auth schemes — then exports an OpenAPI 3.1 spec.
No raw request data is stored — only the inferred schemas go into a local SQLite database. The proxy is non-blocking (your response comes back first, inference runs after).
It's a single npx command, no cloud, no account. Happy to answer questions about the inference approach or anything else.