123FormBuilder · API Governance Rules
123FormBuilder API Rules
Spectral linting rules defining API design standards and conventions for 123FormBuilder.
27 Rules
error 13
warn 14
Rule Categories
global
info
jwt
openapi
operation
path
response
schema
servers
tag
tags
Rules
error
info-title-required
Info object must have a title
$.info
warn
info-title-prefix
Info title should start with 123FormBuilder
$.info.title
error
info-description-required
Info object must have a non-empty description
$.info
error
info-version-required
Info object must include a semantic version
$.info
warn
info-contact-required
Info should include contact information
$.info
error
openapi-version
OpenAPI version must be 3.0.x
$
error
servers-defined
Servers array must be defined and non-empty
$
warn
servers-include-us-region
Servers should include the US regional endpoint
$.servers[*].url
error
servers-use-v2-base-path
Server URLs must include the /v2 base path
$.servers[*].url
warn
tags-defined
Top-level tags array must be defined
$
warn
tag-name-title-case
Tag names must use Title Case
$.tags[*].name
warn
tag-allowed-values
Tags should be drawn from the canonical 123FormBuilder set
$.tags[*].name
error
operation-summary-required
Every operation must have a non-empty summary
$.paths[*][get,post,put,delete,patch]
warn
operation-summary-title-case
Operation summaries should use Title Case
$.paths[*][get,post,put,delete,patch].summary
warn
operation-description-required
Every operation must have a description
$.paths[*][get,post,put,delete,patch]
error
operation-operationId-required
Every operation must have an operationId
$.paths[*][get,post,put,delete,patch]
warn
operation-operationId-kebab-case
operationId values should be kebab-case
$.paths[*][get,post,put,delete,patch].operationId
error
operation-tags-required
Every operation must have at least one tag
$.paths[*][get,post,put,delete,patch]
warn
operation-single-tag
Operations should use exactly one tag
$.paths[*][get,post,put,delete,patch].tags
error
jwt-security-scheme-defined
Components must define the JWTQuery security scheme
$.components.securitySchemes
warn
jwt-query-parameter-required
Non-login operations should require the JWT parameter
$.paths[?([email protected](/token/))][get,post,put,delete,patch].parameters[?(@.name=='JWT')]
error
global-security-defined
Spec must declare a top-level security requirement
$
error
response-2xx-required
Every operation must define at least one 2xx response
$.paths[*][get,post,put,delete,patch].responses
warn
response-error-codes-documented
Operations should document 400 and 401 error responses
$.paths[*][get,post,put,delete,patch].responses
warn
path-lowercase
Path segments should be lowercase or snake_case
$.paths.*~
warn
schema-types-defined
All component schemas must declare a type
$.components.schemas[*]
error
schema-error-defined
The Error schema must be defined in components
$.components.schemas