Restaurant Brands International · API Governance Rules
Restaurant Brands International API Rules
Spectral linting rules defining API design standards and conventions for Restaurant Brands International.
25 Rules
error 6
warn 12
info 7
Rule Categories
info
no
openapi
operation
parameter
paths
request
response
schema
security
servers
tag
Rules
error
info-title-required
API must declare a title.
$.info
warn
info-description-required
API must have a description of at least 40 characters.
$.info
error
info-version-required
API must declare a version.
$.info
warn
info-version-semver
API version should be semantic (e.g. 1.0.0).
$.info.version
warn
openapi-version-31
RBI Partners specs are authored against OpenAPI 3.1.0.
$
error
servers-defined
At least one server must be defined.
$
error
servers-https
Server URLs must use HTTPS.
$.servers[*].url
info
servers-rbictg-host
Production/sandbox servers should resolve to an rbictg.com host.
$.servers[*].url
warn
paths-no-trailing-slash
Paths must not end with a trailing slash.
$.paths[*]~
info
paths-version-prefix
RBI Partners resources are served under an /api/v{n} server prefix; path keys stay version-relative.
$.paths[*]~
error
operation-operationId-required
Every operation must declare an operationId.
$.paths[*][get,post,put,patch,delete]
warn
operation-operationId-camel
operationId must be camelCase (e.g. priceOrder, getStores).
$.paths[*][get,post,put,patch,delete].operationId
warn
operation-summary-required
Every operation must have a summary.
$.paths[*][get,post,put,patch,delete]
warn
operation-summary-title-case
Operation summaries should be Title Case (first letter uppercase).
$.paths[*][get,post,put,patch,delete].summary
warn
operation-tags-required
Every operation must be tagged for grouping.
$.paths[*][get,post,put,patch,delete]
info
tag-name-defined
Tags used on operations should be declared in the global tags array.
$.tags[*]
warn
parameter-description-required
Parameters should be described.
$.paths[*][*].parameters[*]
info
parameter-region-header
Region context is conveyed via the x-region header on the loyalty middleware surface.
$..parameters[?(@.in=='header')].name
warn
request-body-json
Request bodies should offer application/json content.
$.paths[*][post,put,patch].requestBody.content
warn
response-2xx-required
Every operation must define at least one success (2xx) response.
$.paths[*][get,post,put,patch,delete].responses
info
response-error-coverage
Operations should document error responses (400/401/404).
$.paths[*][get,post,put,patch,delete].responses
error
security-scheme-defined
A security scheme must be defined; RBI Partners uses bearer JWT.
$.components.securitySchemes
info
security-bearer-jwt
HTTP bearer schemes should declare the JWT bearerFormat.
$.components.securitySchemes[?(@.scheme=='bearer')]
info
schema-type-defined
Component schemas should declare a type.
$.components.schemas[*]
warn
no-empty-descriptions
Descriptions, when present, must not be empty.
$..description