DiscGolfAPI · API Governance Rules
DiscGolfAPI API Rules
Spectral linting rules defining API design standards and conventions for DiscGolfAPI.
15 Rules
error 4
warn 8
info 3
Rule Categories
discgolfapi
Rules
warn
discgolfapi-operations-have-tags
All DiscGolfAPI operations must have at least one tag
$.paths[*][get,put,post,delete,patch]
error
discgolfapi-operations-have-summaries
All DiscGolfAPI operations must have a summary
$.paths[*][get,put,post,delete,patch]
error
discgolfapi-operations-have-operation-ids
All DiscGolfAPI operations must have an operationId
$.paths[*][get,put,post,delete,patch]
warn
discgolfapi-summaries-title-case
DiscGolfAPI operation summaries must use Title Case
$.paths[*][get,put,post,delete,patch].summary
warn
discgolfapi-operations-have-descriptions
All DiscGolfAPI operations must have a description
$.paths[*][get,put,post,delete,patch]
warn
discgolfapi-operations-define-429
Public read endpoints should document a 429 Too Many Requests response so clients can implement backoff
$.paths[*][get]
warn
discgolfapi-operations-define-500
Public read endpoints should document a 500 server error response
$.paths[*][get]
warn
discgolfapi-responses-have-descriptions
All response objects must have a description
$.paths[*][*].responses[*]
error
discgolfapi-path-parameters-required
All path parameters must be marked as required
$.paths[*][*].parameters[?(@.in == 'path')]
info
discgolfapi-components-schemas-described
All component schemas should have either a description or a clear structural shape
$.components.schemas[*]
info
discgolfapi-list-endpoints-use-pagination
List endpoints (limit/offset) must define both Limit and Offset parameters
$.paths['/courses'].get.parameters
info
discgolfapi-response-envelope-attribution
List and detail responses should advertise the attribution and licence fields in the common envelope schema
$.components.schemas.CommonEnvelope.required
warn
discgolfapi-stable-id-pattern
Course path parameter must declare the stable crs_ ID pattern
$.components.parameters.CourseId.schema
error
discgolfapi-info-license-required
The info object must declare a licence so consumers know reuse terms
$.info
warn
discgolfapi-info-contact-required
The info object must declare a contact so consumers can reach the provider
$.info