Sendcloud · API Governance Rules
Sendcloud API Rules
Spectral linting rules defining API design standards and conventions for Sendcloud.
15 Rules
error 3
warn 8
info 4
Rule Categories
sendcloud
Rules
warn
sendcloud-operation-id-camel-case
Operation IDs must use camelCase
$.paths[*][get,post,put,patch,delete].operationId
warn
sendcloud-path-kebab-case
Path segments must use kebab-case or curly-brace parameters
$.paths
error
sendcloud-must-have-summary
All operations must have a summary
$.paths[*][get,post,put,patch,delete]
warn
sendcloud-must-have-tags
All operations must have at least one tag
$.paths[*][get,post,put,patch,delete]
error
sendcloud-must-have-operation-id
All operations must have an operationId
$.paths[*][get,post,put,patch,delete]
warn
sendcloud-response-200-must-have-schema
200 responses must have a content schema
$.paths[*][get,post,put,patch,delete].responses[200]
warn
sendcloud-post-must-have-request-body
POST operations should have a request body
$.paths[*].post
warn
sendcloud-security-defined
All operations should have security defined at root or operation level
$.paths[*][get,post,put,patch,delete]
info
sendcloud-basic-auth-or-oauth2
Sendcloud supports HTTP Basic (public/private key) and OAuth 2.0 client_credentials authentication
$.components.securitySchemes[*]
info
sendcloud-cursor-pagination
List operations should support cursor-based pagination
$.paths[*].get.parameters[?(@.name=='cursor')]
warn
sendcloud-base-url-versioned
Servers should use the /api/v2 or /api/v3 versioned base path on panel.sendcloud.sc
$.servers[*].url
error
sendcloud-no-trailing-slash
Paths must not have trailing slashes
$.paths
info
sendcloud-parameters-have-description
All parameters should have a description
$.paths[*][get,post,put,patch,delete].parameters[*]
warn
sendcloud-components-schemas-exist
OpenAPI spec should define component schemas
$.components
info
sendcloud-error-object-standard
Error responses should use the shared ErrorObject component schema
$.paths[*][get,post,put,patch,delete].responses[400,401,403,404,409,422,429,500]