--- slug: /docs/cli/rules/spec --- # spec Ensures that your API document conforms to the [OpenAPI specification](https://spec.openapis.org/oas/v3.1.0.html). |OAS|Compatibility| |---|---| |2.0|✅| |3.0|✅| |3.1|✅| The default setting for this rule (in the `recommended` and `minimal` configuration) is `error`. This is an essential rule that should not be turned off except in rare and special cases. ## API design principles It's important to conform to the specification so that tools work with your API document. Doing so makes writing and maintenance of API descriptions easier. ## Configuration |Option|Type|Description| |---|---|---| |severity|string|Possible values: `off`, `warn`, `error`. Default `error` (in `recommended` configuration). | An example configuration: ```yaml rules: spec: error ``` ## Examples Given this configuration: ```yaml rules: spec: error ``` Example of an **incorrect** spec: ```yaml openapi: 3.0.0 info: version: 1.0.0 paths: {} ``` Example of a **correct** spec: ```yaml openapi: 3.0.0 info: title: Ultra API version: 1.0.0 paths: {} ``` ## Related rules - [configurable rules](./configurable-rules.md) ## Resources - [Rule source](https://github.com/Redocly/redocly-cli/blob/main/packages/core/src/rules/common/spec.ts) - [OpenAPI docs](https://redocly.com/docs/openapi-visual-reference/)