Apache OpenWhisk · API Governance Rules
Apache OpenWhisk API Rules
Spectral linting rules defining API design standards and conventions for Apache OpenWhisk.
17 Rules
error 5
warn 8
info 4
Rule Categories
info
no
operation
operationid
path
paths
query
response
schema
security
servers
Rules
error
info-title-required
API must have a title
$.info
error
operation-summary-required
Operations must have summaries
$.paths[*][*]
error
operation-operationId-required
Operations must have operationIds
$.paths[*][*]
warn
operation-tags-required
Operations must have tags
$.paths[*][*]
info
operation-summary-apache-prefix
Summaries should start with Apache OpenWhisk
$.paths[*][get,post,put,delete,patch].summary
info
paths-api-versioned
Paths should be versioned under /api/v1
$.servers[*].url
warn
security-basic-auth
API should use HTTP Basic authentication
$.components.securitySchemes
error
response-success-required
Operations must have a 200 success response
$.paths[*][get,post,put].responses
info
schema-properties-described
Schema properties should have descriptions
$.components.schemas[*].properties[*]
warn
operation-parameters-described
Parameters should have descriptions
$.paths[*][*].parameters[*]
error
servers-https-only
Server URLs must use HTTPS.
$.servers[*].url
info
path-params-casing
Path parameters should be snake_case (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
operationid-casing
Operation IDs should be camelCase (the dominant convention in this API).
$.paths[*][get,post,put,patch,delete].operationId
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