Absentify · API Governance Rules

Absentify API Rules

Spectral linting rules defining API design standards and conventions for Absentify.

15 Rules error 4 warn 9 info 2
View Rules File View on GitHub

Rule Categories

absentify

Rules

error
absentify-operation-must-have-summary
Every operation must have a summary
$.paths[*][get,post,put,patch,delete]
warn
absentify-operation-must-have-description
Every operation must have a description
$.paths[*][get,post,put,patch,delete]
error
absentify-operation-must-have-operation-id
Every operation must have an operationId
$.paths[*][get,post,put,patch,delete]
warn
absentify-operation-must-have-tags
Every operation must have at least one tag
$.paths[*][get,post,put,patch,delete]
warn
absentify-summary-title-case
Operation summaries should be in Title Case
$.paths[*][get,post,put,patch,delete].summary
warn
absentify-parameters-must-have-description
All parameters must have a description
$.paths[*][get,post,put,patch,delete].parameters[*]
error
absentify-request-body-must-have-schema
Request body content must define a schema
$.paths[*][post,put,patch].requestBody.content[*]
warn
absentify-response-must-have-schema
Successful responses should define a schema
$.paths[*][get,post,put,patch,delete].responses[200,201]
warn
absentify-security-must-use-api-key
Operations should use ApiKeyAuth security
$.paths[*][get,post,put,patch,delete]
warn
absentify-schema-properties-must-have-type
Schema properties must define a type
$.components.schemas[*].properties[*]
warn
absentify-info-must-have-contact
API info must have contact information
$.info
info
absentify-info-must-have-license
API info must have license information
$.info
error
absentify-server-must-be-defined
At least one server must be defined
$
warn
absentify-components-schemas-must-exist
Components section should define reusable schemas
$.components
info
absentify-paths-must-use-kebab-case
Path segments should use kebab-case
$.paths