The Overlay Specification is an auxiliary standard that complements the OpenAPI Specification. An OpenAPI description defines API operations, data structures, and metadata—the overall shape of an API. An Overlay lists a series of repeatable changes to apply to a given OpenAPI description, enabling transformations as part of your API workflows.
OpenAPI Overlays
OpenAPI Overlays are an auxiliary standard that complements the OpenAPI Specification, defined by the same OpenAPI Initiative. Where an OpenAPI description captures the shape of an API — its operations, data structures, and metadata — an Overlay is a separate document that lists a repeatable series of changes to apply to that description. It lets you transform, enrich, and specialize a spec as part of your API workflows without ever touching the original file.
- A companion to OpenAPI - Overlays never stand alone; they always target and transform an existing OpenAPI description.
- Repeatable, ordered changes - Each Overlay is a list of actions applied in sequence, so the same transformation runs deterministically every time.
- Workflow-friendly - Because Overlays are just files, they slot into build pipelines and version control alongside the specs they modify.
- Many views from one source - Documentation, localization, redaction, and vendor-specific variants all derive from a single authoritative description.
In practice Overlays are how teams keep one canonical OpenAPI description while still serving many audiences and stages of the lifecycle. A pipeline applies overlays to add examples for docs, generate test fixtures and mocks, produce compliance and redaction profiles, or correct a brownfield spec without upstream access — each concern isolated in its own file. As the tooling ecosystem matures across open-source and commercial services, and as agents consume these descriptions directly, Overlays are becoming the standard seam for tailoring an API contract to exactly what a given consumer needs to see.
Open source tools that implement this standard
Harvested from this standard's own governing organisation, with the license read from each repository rather than assumed. The role is what the tool does to the specification, from the shared vocabulary — so an agent holding one of these documents can resolve straight from a goal to a tool.
| Tool | Role | License | What it does |
|---|---|---|---|
| vacuum | validates |
MIT | An extremely fast OpenAPI linter written in Go, Spectral-ruleset compatible, built to lint very large specifications and whole ... |
| Speakeasy OpenAPI | transforms |
MIT | A Go library and CLI for parsing, validating and transforming OpenAPI, Arazzo and Overlay documents — one of the few toolchains... |
| openapi-format | transforms |
MIT | Formats, filters, sorts and applies Overlays to OpenAPI documents — the most complete Overlay implementation in the JavaScript ... |
| openapi-overlays-js | transforms |
Apache-2.0 | A small, focused JavaScript implementation of the OpenAPI Overlay specification — applies an overlay to a base document and not... |
| oas-patch | transforms |
MIT | A Python CLI and library for applying OpenAPI Overlays and JSON Patch documents to OpenAPI descriptions. |
| openapi-overlays-dotnet | transforms |
MIT | A .NET implementation of the OpenAPI Overlay specification, shipped with the Clio CLI. |
| oas-overlay-java | transforms |
Apache-2.0 | A Java implementation of the OpenAPI Overlay specification. |
Referenced on the API Evangelist blog
Where this standard shows up across sixteen years of my writing at apievangelist.com — how it fits into API design, governance, and the agentic turn.
The Many Use Cases for OpenAPI Overlays
2026-06-26