Logius · API Governance Rules
Logius API Rules
Spectral linting rules defining API design standards and conventions for Logius.
24 Rules
error 24
Published by Logius
Served by the provider at https://github.com/Logius-standaarden/API-Design-Rules/blob/27297e8e45282aeeddb31c011965b5e377b02d6f/media/linter.yaml; the copy below was fetched from there.
Rule Categories
info
nlgov:always
nlgov:correct
nlgov:date
nlgov:http
nlgov:include
nlgov:info
nlgov:missing
nlgov:openapi
nlgov:paths
nlgov:problem
nlgov:query
nlgov:servers
nlgov:specify
nlgov:time
nlgov:use
Rules
error
nlgov:openapi3
$.['openapi']
error
nlgov:openapi-root-exists
$
error
nlgov:missing-version-header
$..[responses][?(@property && @property.match(/(2|3)\d\d/))][headers]
error
nlgov:missing-header
$..[responses][?(@property && @property.match(/(2|3)\d\d/))]
error
nlgov:include-major-version-in-uri
$.servers[*]
error
nlgov:paths-no-trailing-slash
$.paths
error
info-contact
$
error
nlgov:info-contact-fields-exist
$.info.contact
error
nlgov:http-methods
$.paths[?(@property && @property.match(/(description|summary)/i))]
error
nlgov:paths-kebab-case
$.paths[?(@property && !@property.match(/\/openapi\.(json)|(yaml)/))]~
error
nlgov:query-keys-camel-case
$.paths.*.*.parameters[?(@.in=='query')]$.components.securitySchemes[?(@.in=='query')]
error
nlgov:servers-use-https
$.servers[*]$.paths..servers[*]
error
nlgov:use-problem-schema
$..[responses][?(@property && @property.match(/(4|5)\d\d/))].content
error
nlgov:problem-schema-members
$..[responses][?(@property && @property.match(/(4|5)\d\d/))].content[?(@property=="application/problem+json" || @property=="application/problem+xml")]..schema
error
nlgov:problem-invalid-input
$.paths..[?( @property.match(/(get)|(delete)/) && @.parameters && @.parameters.length > 0 )]$.paths..[?( @property.match(/(put)|(post)|(patch)/))]
error
nlgov:date-time-ensure-timezone
$..properties[*].format
error
nlgov:time-without-timezone
$..properties[*].format
error
nlgov:specify-format-for-date-and-time
$..properties[date,datum]$..properties[?(@property && @property.match(/((\w+D)|(_[dD]))((ate)|(atum))/))]
error
nlgov:use-date-instead-of-datetime
$..properties[date,datum]..format$..properties[?(@property && @property.match(/((\w+D)|(_[dD]))((ate)|(atum))/))]..format
error
nlgov:specify-format-for-language-code
$..properties[taal,lang,language]$..properties[?(@property && @property.match(/((\w+T)|(_[tT]))aal/))]$..properties[?(@property && @property.match(/((\w+L)|(_[lL]))ang(uage)?/))]
error
nlgov:use-language-code
$..properties[taal,lang,language]..format$..properties[?(@property && @property.match(/((\w+T)|(_[tT]))aal/))]..format$..properties[?(@property && @property.match(/((\w+L)|(_[lL]))ang(uage)?/))]..format
error
nlgov:correct-language-enum
$..properties[taal,lang,language]..enum[*]$..properties[?(@property && @property.match(/((\w+T)|(_[tT]))aal/))]..enum[*]$..properties[?(@property && @property.match(/((\w+L)|(_[lL]))ang(uage)?/))]..enum[*]
error
nlgov:semver
$.info.version
error
nlgov:always-return-objects
$..[responses][*][content][?(@property.toString().match(/(json)|(xml)/))][schema]
Spectral Ruleset
Work with this as data
Every ruleset here is available over the APIs.io API and to AI agents over MCP.