Alliance Data Systems (Bread Financial Holdings) API Rules

Spectral linting rules defining API design standards and conventions for Alliance Data Systems (Bread Financial Holdings).

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

Rule Categories

bread

Rules

warn
bread-classic-title-case-summary
Bread Classic operation summaries must be Title Case and prefixed with 'Bread Classic '.
$.paths[*][get,post,put,delete,patch].summary
error
bread-classic-bearer-auth
Bread Classic operations must use bearer token authentication.
$.components.securitySchemes
warn
bread-classic-amounts-minor-units
Legacy Bread Classic monetary fields are integers in minor units.
$.components.schemas.ClassicTransaction.properties

Spectral Ruleset

Raw ↑
extends:
  - spectral:oas
formats:
  - oas3

functions: []

rules:
  bread-classic-title-case-summary:
    description: "Bread Classic operation summaries must be Title Case and prefixed with 'Bread Classic '."
    given: $.paths[*][get,post,put,delete,patch].summary
    severity: warn
    then:
      function: pattern
      functionOptions:
        match: "^Bread Classic [A-Z][A-Za-z]+( [A-Z][A-Za-z]+){0,8}$"

  bread-classic-bearer-auth:
    description: "Bread Classic operations must use bearer token authentication."
    given: $.components.securitySchemes
    severity: error
    then:
      field: bearerAuth.scheme
      function: pattern
      functionOptions:
        match: "^bearer$"

  bread-classic-amounts-minor-units:
    description: "Legacy Bread Classic monetary fields are integers in minor units."
    given: $.components.schemas.ClassicTransaction.properties
    severity: warn
    then:
      field: amount.type
      function: pattern
      functionOptions:
        match: "^integer$"