Sift · API Governance Rules

Sift API Rules

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

5 Rules error 3 warn 2
View Rules File View on GitHub

Rule Categories

sift

Rules

error
sift-info-title-required
All Sift OpenAPI specs must have an info.title.
$.info
error
sift-info-version-required
All Sift OpenAPI specs must have an info.version.
$.info
warn
sift-server-base
Sift servers should target api.sift.com.
$.servers[*].url
warn
sift-operation-summary-title-case
Operation summaries should use Title Case starting with Sift.
$.paths[*][get,post,put,patch,delete].summary
error
sift-tags-required
Every Sift operation must include at least one tag.
$.paths[*][get,post,put,patch,delete]

Spectral Ruleset

Raw ↑
extends:
  - [spectral:oas, recommended]
rules:
  sift-info-title-required:
    description: All Sift OpenAPI specs must have an info.title.
    given: $.info
    severity: error
    then:
      field: title
      function: truthy
  sift-info-version-required:
    description: All Sift OpenAPI specs must have an info.version.
    given: $.info
    severity: error
    then:
      field: version
      function: truthy
  sift-server-base:
    description: Sift servers should target api.sift.com.
    given: $.servers[*].url
    severity: warn
    then:
      function: pattern
      functionOptions:
        match: '^https://api\.sift\.com'
  sift-operation-summary-title-case:
    description: Operation summaries should use Title Case starting with Sift.
    given: $.paths[*][get,post,put,patch,delete].summary
    severity: warn
    then:
      function: pattern
      functionOptions:
        match: '^Sift [A-Z]'
  sift-tags-required:
    description: Every Sift operation must include at least one tag.
    given: $.paths[*][get,post,put,patch,delete]
    severity: error
    then:
      field: tags
      function: truthy