|
| 1 | +--- |
| 2 | +layout: default |
| 3 | +nav_order: 8 |
| 4 | +title: Overlays |
| 5 | +has_children: true |
| 6 | +has_toc: false |
| 7 | +--- |
| 8 | + |
| 9 | +# Introduction to OpenAPI Overlay Specification |
| 10 | + |
| 11 | +The [Overlay Specification](https://spec.openapis.org/overlay/latest.html) defines a document format for information that transforms an existing OpenAPI description yet remains separate from the OpenAPI description's source document(s). |
| 12 | +The Overlay Specification defines a mechanism for providing consistent, deterministic updates to a given OpenAPI description, as an aid to automation throughout the API lifecycle. |
| 13 | + |
| 14 | +An Overlay can be applied to an OpenAPI description, resulting in an updated OpenAPI description. |
| 15 | + |
| 16 | +> **OpenAPI + Overlays = (better) OpenAPI** |
| 17 | +
|
| 18 | +One Overlay might be specific to one OpenAPI description, or general enough to be used with multiple OpenAPI descriptions. |
| 19 | +Equally, one OpenAPI description pipeline might apply different Overlays during the workflow. |
| 20 | + |
| 21 | +## Use cases for Overlays |
| 22 | + |
| 23 | +Overlays support a range of scenarios, including: |
| 24 | + |
| 25 | +- Translating documentation into another language |
| 26 | +- Providing configuration information for different deployment environments |
| 27 | +- Allowing separation of concerns for metadata such as gateway configuration or SLA information |
| 28 | +- Supporting a traits-like capability for applying a set of configuration data, such as multiple parameters or multiple headers, for targeted objects |
| 29 | +- Providing default responses or parameters where they were not explicitly provided |
| 30 | +- Applying configuration data globally or based on filter conditions |
| 31 | + |
| 32 | +## Resources for working with Overlays |
| 33 | + |
| 34 | +The [GitHub repository for Overlays](https://github.com/oai/Overlay-Specification) is the main hub of activity on the Overlays project. |
| 35 | +Check the issues and pull requests for what is currently in progress, and the discussions for details of future ideas and our regular meetings. |
| 36 | + |
| 37 | +The project maintains a [list of tools for working with Overlays](https://github.com/OAI/Overlay-Specification/?tab=readme-ov-file#tools-that-support-overlays). |
| 38 | + |
0 commit comments