Shovels · API Governance Rules
Shovels API Rules
Spectral linting rules defining API design standards and conventions for Shovels.
10 Rules
error 5
warn 5
Rule Categories
shovels
Rules
error
shovels-operation-tags
All operations must have at least one tag
$.paths[*][*]
error
shovels-operation-summary
All operations must have a summary in Title Case
$.paths[*][*]
error
shovels-api-key-auth
API must use X-API-Key header authentication
$.components.securitySchemes[*]
warn
shovels-geo-id-parameter
Geographic search endpoints must include geo_id parameter
$.paths[*].get.parameters[?(@.name == 'geo_id')]
warn
shovels-cursor-pagination
List endpoints should support cursor-based pagination
$.paths[*].get.parameters[?(@.name == 'cursor')]
warn
shovels-date-format
Date parameters must use YYYY-MM-DD format
$.paths[*].get.parameters[?(@.schema.format == 'date')]
error
shovels-response-200
All GET operations must have a 200 response
$.paths[*].get.responses
warn
shovels-response-422
Operations with required parameters should document 422 validation errors
$.paths[*].get.responses
error
shovels-items-schema
List response schemas should have items array property
$.components.schemas[*Response]
warn
shovels-geo-id-field
Geographic schemas should include geo_id field
$.components.schemas[*]