Couchbase · API Governance Rules

Couchbase API Rules

Spectral linting rules defining API design standards and conventions for Couchbase.

5 Rules error 4 warn 1
View Rules File View on GitHub

Rule Categories

couchbase

Rules

error
couchbase-server-info-title
API title must mention Couchbase Server.
$.info.title
error
couchbase-server-info-version
API info must define a version.
$.info
warn
couchbase-server-default-server
Servers must reference port 8091 by default.
$.servers[*].url
error
couchbase-server-operation-id
Every operation must define an operationId.
$.paths.*.*
error
couchbase-server-operation-tags
Every operation must define at least one tag.
$.paths.*.*

Spectral Ruleset

Raw ↑
extends: ["spectral:oas"]
documentationUrl: https://docs.couchbase.com/server/current/rest-api/rest-intro.html
rules:
  couchbase-server-info-title:
    description: API title must mention Couchbase Server.
    given: "$.info.title"
    severity: error
    then:
      function: pattern
      functionOptions:
        match: "Couchbase Server"
  couchbase-server-info-version:
    description: API info must define a version.
    given: "$.info"
    severity: error
    then:
      field: version
      function: truthy
  couchbase-server-default-server:
    description: Servers must reference port 8091 by default.
    given: "$.servers[*].url"
    severity: warn
    then:
      function: pattern
      functionOptions:
        match: "8091"
  couchbase-server-operation-id:
    description: Every operation must define an operationId.
    given: "$.paths.*.*"
    severity: error
    then:
      field: operationId
      function: truthy
  couchbase-server-operation-tags:
    description: Every operation must define at least one tag.
    given: "$.paths.*.*"
    severity: error
    then:
      field: tags
      function: truthy