Shippo · API Governance Rules
Shippo API Rules
Spectral linting rules defining API design standards and conventions for Shippo.
14 Rules
error 3
warn 7
info 4
Rule Categories
shippo
Rules
warn
shippo-operation-id-camel-case
Operation IDs must use camelCase
$.paths[*][get,post,put,patch,delete].operationId
warn
shippo-path-kebab-case
Path segments must use kebab-case or curly-brace parameters
$.paths
info
shippo-object-id-suffix
Resource identifiers in paths should use Id suffix (e.g., AddressId, ParcelId)
$.paths
error
shippo-must-have-summary
All operations must have a summary
$.paths[*][get,post,put,patch,delete]
warn
shippo-must-have-tags
All operations must have at least one tag
$.paths[*][get,post,put,patch,delete]
error
shippo-must-have-operation-id
All operations must have an operationId
$.paths[*][get,post,put,patch,delete]
warn
shippo-response-200-must-have-schema
200 responses must have a content schema
$.paths[*][get,post,put,patch,delete].responses[200]
warn
shippo-post-must-have-request-body
POST operations should have a request body
$.paths[*].post
warn
shippo-security-defined
All operations should have security defined at root or operation level
$.paths[*][get,post,put,patch,delete]
info
shippo-bearer-token-auth
Shippo uses bearer token authentication (ShippoToken prefix)
$.components.securitySchemes[*]
info
shippo-paginated-response-fields
Paginated list responses should include count, next, previous, and results fields
$.components.schemas[*PaginatedList]
error
shippo-no-trailing-slash
Paths must not have trailing slashes
$.paths
info
shippo-parameters-have-description
All parameters should have a description
$.paths[*][get,post,put,patch,delete].parameters[*]
warn
shippo-components-schemas-exist
OpenAPI spec should define component schemas
$.components