Skip to content

Configuration Schema

Properties

Name Type Description Required
autoload boolean Enables automatic plugin loading from plugins.
Default: true
no
logLevel string Controls CLI log verbosity.
Default: "warn"
Enum: "trace", "debug", "info", "warn", "error", "silent"
no
specifications object[] API descriptions to load (usually OpenAPI files).
Default:
no
traffic object[] Recorded traffic inputs used by thymian analyze.
Default:
no
reports object[] External report inputs used by thymian report convert.
Default:
no
ruleSets array Rule set packages to load. Each entry is either the package name (which resolves to the recommended profile) or an object { name, profile } selecting recommended | strict | minimal.
Default: "@thymian/rules-rfc-9110", "@thymian/rules-api-description-validation"
no
ruleSeverity string Minimum rule severity threshold.
Default: "error"
Enum: "off", "error", "warn", "hint"
no
targetUrl string Base URL used for live API testing workflows. When set, all requests are sent to this origin instead of the servers defined in the specification.
no
rules object Per-rule configuration/overrides. Each key is a rule ID. The value can be a severity string (off | error | warn | hint) or a rule config object.
Default: {}
no
plugins object Plugin registrations and plugin options. This is the only required top-level key.
yes

Additional Properties: not allowed 
Example

{
"autoload": true,
"logLevel": "warn",
"specifications": [],
"traffic": [],
"reports": [],
"ruleSets": [
"@thymian/rules-rfc-9110",
"@thymian/rules-api-description-validation"
],
"ruleSeverity": "error",
"rules": {},
"plugins": {}
}

plugins: object

Additional Properties

Name Type Description Required
Additional Properties object

plugins.additionalProperties: object

Properties

Name Type Description Required
path string Explicit module/file path.
verbose boolean Enable verbose logging for this plugin.
autoload boolean When set to false, this plugin is skipped even though it is listed under plugins.
Default: true
options object Plugin-specific options.

Additional Properties: not allowed 
Example

{
"autoload": true,
"options": {}
}

plugins.additionalProperties.options: object

Additional Properties: allowed 

reports[]: array

Items

Item Properties

Name Type Description Required
type string Report format, for example spectral.
Minimal Length: 1
yes
location File path or supported path source.
yes
options object Report-specific options.
no

Item Additional Properties: not allowed 

reports[].options: object

Additional Properties: allowed 

ruleSets[]: array

Items


Option 1 (alternative): Rule set package name. Resolves to the recommended profile.

Type: string


Option 2 (alternative): Rule set package with an explicit profile selection.

Properties

Name Type Description Required
name string Rule set package name.
yes
profile string Recommended rule-configuration profile to apply. Defaults to recommended.
Enum: "recommended", "strict", "minimal"
no

Additional Properties: not allowed 

Example

[
"@thymian/rules-rfc-9110",
"@thymian/rules-api-description-validation"
]

rules: object

Additional Properties

Name Type Description Required
Additional Properties

specifications[]: array

Items

Item Properties

Name Type Description Required
type string Specification format, for example openapi.
yes
location File path or supported path source.
yes
options object Specification-specific options.
no

Item Additional Properties: not allowed 

specifications[].options: object

Additional Properties: allowed 

traffic[]: array

Items

Item Properties

Name Type Description Required
type string Traffic source format, for example fixture.
yes
location File path or supported path source.
yes
options object Traffic-specific options.
no

Item Additional Properties: not allowed 

traffic[].options: object

Additional Properties: allowed