ScanSource · API Governance Rules
ScanSource API Rules
Spectral linting rules defining API design standards and conventions for ScanSource.
10 Rules
error 4
warn 6
Rule Categories
scansource
Rules
error
scansource-customer-number-required
Customer number must be provided for all customer-scoped operations
$.paths[*][get,post,delete]
error
scansource-api-key-security
All ScanSource API operations must require the subscription key
$.paths[*][get,post,put,patch,delete]
warn
scansource-pagination-parameters
List operations should support pagination via page and pageSize parameters
$.paths[*list*,*summary*][get]
warn
scansource-batch-size-limit
Batch requests must not exceed 40 items
$.paths['/product/availability','product/pricing'].post.requestBody.content.application/json.schema.properties.items
warn
scansource-customer-number-path
Customer-scoped paths should include customerNumber as a path parameter
$.paths[*/{customerNumber}*]
warn
scansource-response-envelope
List responses should include totalCount for pagination support
$.components.schemas[*Response]
error
scansource-date-filter-format
Date filter parameters must use ISO 8601 date format
$.paths[*][get].parameters[?(@.name == 'fromDate' || @.name == 'toDate')]
error
scansource-operation-ids
All operations must have operationId in camelCase
$.paths[*][get,post,put,patch,delete]
warn
scansource-tags-required
All operations must have at least one tag
$.paths[*][get,post,put,patch,delete]
warn
scansource-summaries-title-case
Operation summaries must use Title Case
$.paths[*][get,post,put,patch,delete].summary