RescueGroups.org · API Governance Rules
RescueGroups.org API Rules
Spectral linting rules defining API design standards and conventions for RescueGroups.org.
11 Rules
error 2
warn 7
info 2
Rule Categories
rescuegroups
Rules
warn
rescuegroups-path-prefix
All public endpoints must be prefixed with /public/.
$.paths[?([email protected](/^\/public\//) && [email protected](/^\/tokens/))]
warn
rescuegroups-content-type
All RescueGroups.org API operations must use application/vnd.api+json.
$.paths[*][*].responses[*].content
error
rescuegroups-operation-id
All operations must have an operationId.
$.paths[*][get,post,put,patch,delete]
error
rescuegroups-operation-summary
All operations must have a summary.
$.paths[*][get,post,put,patch,delete]
warn
rescuegroups-operation-tags
All operations must have at least one tag.
$.paths[*][get,post,put,patch,delete]
warn
rescuegroups-path-kebab-case
Path segments should use kebab-case.
$.paths[*]~
warn
rescuegroups-response-400
POST and PATCH operations should document 400 responses.
$.paths[*][post,patch]
warn
rescuegroups-response-401
All operations should document 401 Unauthorized responses.
$.paths[*][get,post,put,patch,delete]
info
rescuegroups-jsonapi-response-schema
Responses should reference component schemas following JSON API structure.
$.paths[*][*].responses['200','201'].content['application/vnd.api+json'].schema
info
rescuegroups-pagination-params
GET collection endpoints should support page and limit query parameters.
$.paths[?([email protected](/{.*}/) && [email protected](/search/) && [email protected](/tokens/))].get
warn
rescuegroups-tags-title-case
All tags must use Title Case.
$.tags[*].name