WordPress · API Governance Rules
WordPress API Rules
Spectral linting rules defining API design standards and conventions for WordPress.
46 Rules
error 10
warn 23
info 13
Rule Categories
delete
error
get
info
no
openapi
operation
pagination
parameter
path
paths
post
query
request
response
schema
security
servers
tag
tags
Rules
warn
info-title-wordpress-prefix
$.info.title
error
info-description-required
$.info
error
info-version-required
$.info
warn
info-contact-required
$.info
warn
info-license-required
$.info
error
openapi-version-3
$.openapi
error
servers-defined
$
warn
servers-https-only
$.servers[*].url
warn
paths-kebab-case
$.paths[*]~
warn
paths-no-trailing-slash
$.paths[*]~
info
paths-version-prefix
$.paths[*]~
error
operation-summary-required
$.paths[*][get,post,put,patch,delete]
warn
operation-description-required
$.paths[*][get,post,put,patch,delete]
error
operation-id-required
$.paths[*][get,post,put,patch,delete]
warn
operation-id-camel-case
$.paths[*][get,post,put,patch,delete].operationId
warn
operation-tags-required
$.paths[*][get,post,put,patch,delete]
warn
operation-summary-wordpress-prefix
$.paths[*][get,post,put,patch,delete].summary
info
tags-defined
$
info
tag-description-required
$.tags[*]
warn
parameter-description-required
$.paths[*][get,post,put,patch,delete].parameters[*]
info
parameter-snake-case
$.paths[*][get,post,put,patch,delete].parameters[*].name
error
parameter-schema-required
$.paths[*][get,post,put,patch,delete].parameters[*]
info
request-body-description
$.paths[*][post,put,patch].requestBody
warn
request-body-json-content
$.paths[*][post,put,patch].requestBody.content
error
response-success-required
$.paths[*][get,post,put,patch,delete].responses
error
response-description-required
$.paths[*][get,post,put,patch,delete].responses[*]
info
response-401-for-auth
$.paths[*][post,put,delete].responses
info
response-404-for-get-by-id
$.paths[*~'\\{id\\}'][get].responses
warn
schema-description-required
$.components.schemas[*]
warn
schema-type-defined
$.components.schemas[*]
info
schema-property-snake-case
$.components.schemas[*].properties[*]~
info
schema-property-description
$.components.schemas[*].properties[*]
info
schema-property-example
$.components.schemas[*].properties[*]
warn
security-schemes-defined
$.components
warn
security-scheme-description
$.components.securitySchemes[*]
error
get-no-request-body
$.paths[*].get
warn
delete-no-request-body
$.paths[*].delete
info
post-should-have-request-body
$.paths[*].post
info
operation-microcks-extension
$.paths[*][get,post,put,patch,delete]
warn
no-empty-descriptions
$..description
info
pagination-parameters-standard
$.paths[*][get].parameters[?(@.name == 'limit')]
warn
path-params-casing
Path parameters should be snake_case (the dominant convention in this API).
$.paths[*].parameters[?(@.in=='path')].name
warn
query-params-casing
Query parameters should be snake_case (the dominant convention in this API).
$.paths[*][get,post,put,patch,delete].parameters[?(@.in=='query')]
warn
schema-names-casing
Component schema names should be PascalCase (the dominant convention in this API).
$.components.schemas
warn
schema-properties-casing
Schema properties should be snake_case (the dominant convention in this API).
$.components.schemas[*].properties
warn
error-schema-defined
A shared error schema (ErrorResponse) should be defined for error payloads.
$.components.schemas