Rutter · API Governance Rules
Rutter API Rules
Spectral linting rules defining API design standards and conventions for Rutter.
15 Rules
error 3
warn 10
info 2
Rule Categories
no
path
query
rutter
schema
servers
Rules
warn
rutter-version-header-required
All Rutter API requests must include the X-Rutter-Version header
$.paths[*][get,post,put,patch,delete]
warn
rutter-access-token-required
Most Rutter API operations require an access_token query parameter
$.paths[*][get]
warn
rutter-operation-id-camel-case
All Rutter operationIds should use camelCase
$.paths[*][*].operationId
warn
rutter-tags-title-case
All tags must use Title Case
$.paths[*][*].tags[*]
error
rutter-response-200-required
All operations must have a 200 success response
$.paths[*][get,post,put,patch,delete].responses
info
rutter-pagination-cursor
List operations should support cursor-based pagination
$.paths[*].get
info
rutter-idempotency-key-on-writes
POST operations that create resources should document Idempotency-Key header
$.paths[*].post
error
rutter-basic-auth-documented
The API must document Basic auth security scheme
$.components.securitySchemes
error
servers-https-only
Server URLs must use HTTPS.
$.servers[*].url
warn
servers-expected-domain
Server URLs should be on the rutterapi.com domain.
$.servers[*].url
warn
path-params-casing
Path parameters should be camelCase (the dominant convention in this API).
$.paths[*].parameters[?(@.in=='path')].name
warn
query-params-casing
Query parameters should be snake_case (the dominant convention in this API).
$.paths[*][get,post,put,patch,delete].parameters[?(@.in=='query')]
warn
schema-names-casing
Component schema names should be PascalCase (the dominant convention in this API).
$.components.schemas
warn
schema-properties-casing
Schema properties should be snake_case (the dominant convention in this API).
$.components.schemas[*].properties
warn
no-empty-descriptions
Descriptions must not be empty strings.
$..description