Back to blog
2026-03-24 5 min read

You Don't Have an OpenAPI Spec? That's Fine.

Zero-Spec extraction reads your FastAPI, Express, or NestJS source code and generates an OpenAPI spec automatically.

The number one reason teams don't check for breaking API changes: they don't have an OpenAPI spec. The API exists in code but nobody wrote the spec file.

Zero-Spec extraction solves this. Point it at your source code and it generates an OpenAPI spec by reading your route definitions, decorators, and type annotations.

Supported frameworks

FastAPI

Reads @app.get, @app.post decorators, Pydantic models, and type hints. Generates OpenAPI 3.1.

Express

Reads app.get(), router.post() calls and extracts paths, methods, and parameters. Generates OpenAPI 3.0.

NestJS

Reads @Controller, @Get, @ApiProperty decorators and DTO classes. Generates OpenAPI 3.0.

How to use it

# Generate a spec from your source code
npx delimit-cli zero-spec ./src

# Then use it with the GitHub Action
# or diff it against a previous version
npx delimit-cli diff old-api.yaml generated-api.yaml

The generated spec won't be perfect -- it's a starting point. But it's enough to start tracking changes. Once you have a spec checked into git, Delimit can diff it on every PR and catch breaking changes before they merge.

You don't need a complete spec to get value. Even a skeleton with paths and methods is enough to detect removals and additions.

Install the MCP server

Persistent memory, ledger, and governance for your AI coding agent.

npx delimit-cli setup
Read the quickstart
#zero-spec#fastapi#express#nestjs