Aloha POS · API Governance Rules
Aloha POS — ncr voyix platform rules
Spectral linting rules defining API design standards and conventions for Aloha POS.
29 Rules
error 8
warn 14
info 7
Authorship not recorded
No authorship marker is recorded for this file. It is not presented as the provider's; it was most likely written by an API Evangelist pass before outputs were stamped.
Rule Categories
get
info
openapi
operation
parameter
paths
request
response
schema
security
servers
tag
tags
Rules
error
info-title-required
Info object must have a title.
$.info
warn
info-description-required
Info object should have a description of at least 40 characters.
$.info
error
info-version-required
Info object must declare a version.
$.info
warn
info-contact-required
Info object should provide contact details.
$.info
error
openapi-version-3
Specs must use OpenAPI 3.x.
$
error
servers-defined
At least one server must be defined.
$
warn
servers-https-only
Server URLs must use HTTPS.
$.servers[*].url
info
servers-description
Each server should have a description.
$.servers[*]
warn
paths-no-trailing-slash
Paths should not end with a trailing slash.
$.paths
info
paths-kebab-or-lowercase
Path segments should be lowercase (kebab-case where multi-word).
$.paths
warn
operation-summary-required
Every operation must have a summary.
$.paths[*][get,post,put,patch,delete]
info
operation-summary-title-case
Operation summaries should use Title Case.
$.paths[*][get,post,put,patch,delete].summary
warn
operation-description-required
Every operation should have a description.
$.paths[*][get,post,put,patch,delete]
error
operation-id-required
Every operation must declare an operationId.
$.paths[*][get,post,put,patch,delete]
warn
operation-id-camel-case
operationId should be camelCase with a verb prefix (get/list/create/update/find).
$.paths[*][get,post,put,patch,delete].operationId
warn
operation-tags-required
Every operation must be tagged.
$.paths[*][get,post,put,patch,delete]
info
tags-global-defined
A global tags array should be declared.
$
info
tag-description-required
Each global tag should have a description.
$.tags[*]
warn
tag-title-case
Tag names must use Title Case.
$.tags[*].name
warn
parameter-description-required
Parameters should be described.
$.paths[*][*].parameters[*]
info
parameter-nep-scoping-camel-exception
NCR scoping headers use the nep-* convention.
$..parameters[?(@.in=='header')].name
warn
request-body-json
Request bodies should offer application/json.
$.paths[*][post,put,patch].requestBody.content
error
response-success-defined
Operations must define at least one 2xx response.
$.paths[*][get,post,put,patch,delete].responses
warn
response-description-required
Every response must have a description.
$.paths[*][*].responses[*]
warn
schema-property-camel-case
Schema properties should use camelCase (the NCR Voyix convention).
$.components.schemas[*].properties
info
schema-status-enum
status properties should be constrained to ACTIVE/INACTIVE.
$..properties.status
error
security-global-defined
A global security requirement must be declared (HMAC AccessKey).
$
warn
security-scheme-described
Security schemes must be described.
$.components.securitySchemes[*]
error
get-no-request-body
GET operations must not declare a request body.
$.paths[*].get
Spectral Ruleset
Work with this as data
Every ruleset here is available over the APIs.io API and to AI agents over MCP.