Linter rulesOpenAPIoperation-id-defined
operation-id-defined
Since 0.0.1 · fixed by --fix
This rule checks each operation defined in an OpenAPI schema and warns if operation IDs are missing or empty.
Rule Details
Assigning operation a unique identifier helps with managing them. Identifiers can also be used by code generators to produce implementation of API calls.
The operation-id-defined rule is designed to ensure that each operation
in an OpenAPI schema has non-empty operation ID.
Configuration
The optional nonPathNaming value controls generated webhook and component
path-item names: scope-prefix (default), path-like, or scope-suffix.
Examples
Good. The following operation has a descriptive name that makes it easy to use the operation properly.
paths:
/users:
get:
operationId: readUserList
responses:
"200":
description: Returns a list of users.
Bad. The following operation does not have a name. It is not entirely clear
what it does. Using e.g. cancelReservation would help with it.
paths:
/reservations:
delete:
responses: ...
When Not to Use It
We recommend to always enable this rule.
Automatic fixes
When invoked with --fix, this rule generates deterministic IDs from the HTTP
method and location, rendering path placeholders as ByName. Existing IDs are
reserved and collisions receive numeric suffixes.
Compatibility
This rule is compatible with all OpenAPI 3.x versions.