Lint, coverage, waivers, reporting, certification, agent export, pipeline audit, toolsmith, context gate.
Lint an API artifact (FREE)
Lint an API artifact — OpenAPI, AsyncAPI, Arazzo, JSON Schema, APIs.json, MCP, an agent SKILL.md and more (format auto-detected) — with the OpenLint engine against the curated rule catalog. Pass your own ruleset, or a named profile (OWASP, Problem Details, FHIR, API Authorization). Paid callers with an org ruleset get it by default; ruleset in the response says which ran.
Lint an API artifact (FREE) › Request Body
documentThe artifact as YAML or JSON text.
formatAuto-detected when omitted. Synonyms accepted: swagger, oas, json-schema, apis.json, skill.
rulesetA full ruleset to run instead of the catalog — object or YAML/JSON text.
tagsOnly run catalog rules carrying one of these tags.
profileRun one of the curated rulesets by name instead of the catalog.
builtinsAlso run OpenLint's built-in Arazzo ruleset on Arazzo documents.
use_org_rulesetSet false to lint against the catalog even when you have an org ruleset.
Lint an API artifact (FREE) › Responses
Lint result.
formatruleCountpassedrulesetWhich rules ran: request, org, profile:
Governance coverage of a document (FREE)
How much of an API description the ruleset actually inspects — coverage by section, dead rules, and each rule reach.
Governance coverage of a document (FREE) › Request Body
documentThe API description (YAML or JSON text, or an object).
formatRule definitions to measure; defaults to the curated catalog for the format.
aliasesCustom JSONPath alias map.
Governance coverage of a document (FREE) › Responses
Coverage report.
Reconcile waivers against lint output (FREE)
Suppress sanctioned violations and surface expired, stale, and expiring waivers — the effective failing set your build should gate on.
Reconcile waivers against lint output (FREE) › Request Body
waiversA waivers file (YAML/JSON text) or an array of waiver objects.
Spectral lint -f json results.
Reconcile waivers against lint output (FREE) › Responses
Reconciliation result.
Render a governance report (FREE HTML, Pro SARIF)
Turn Spectral findings into a self-contained HTML governance report. Pass ?format=sarif for SARIF 2.1.0 output (Pro).
query Parameters
formatsarif requires a Pro key.
Render a governance report (FREE HTML, Pro SARIF) › Request Body
titletotalsPositive-rule sidecar for the compliance scoreboard.
darkRender a governance report (FREE HTML, Pro SARIF) › Responses
HTML report (text/html) or SARIF log (application/json with ?format=sarif).
Verify a governance certificate (FREE)
Re-verify a tamper-evident API governance certificate against the API it attests to. Consumer-facing trust check.
Verify a governance certificate (FREE) › Request Body
certificateapiThe API description object the certificate was issued over.
Verify a governance certificate (FREE) › Responses
Verdict.
verdictClassify PII and secret fields (FREE)
Inventory the PII, secret, and sensitive fields an OpenAPI exposes — across parameters and request/response schemas. Uses the same classifiers as Context Gate.
Classify PII and secret fields (FREE) › Request Body
documentA single OpenAPI (YAML/JSON text).
Classify PII and secret fields (FREE) › Responses
Sensitive-field inventory.
Detect breaking changes between two versions (FREE)
Compare two OpenAPI versions and classify every change as breaking, non-breaking, or an addition — at path, operation, parameter, request-body, and response granularity.
Detect breaking changes between two versions (FREE) › Request Body
oldThe previous OpenAPI (YAML/JSON text or object).
newThe new OpenAPI (YAML/JSON text or object).
Detect breaking changes between two versions (FREE) › Responses
Diff result with a compatible flag, summary, and changes[].
API maturity scorecard (FREE)
Roll up a 0-100 maturity score with a letter grade across dimensions — design/style (lint), governance coverage, documentation completeness, and (from an apis.json) discoverability, agent-readiness, and operations.
API maturity scorecard (FREE) › Request Body
documentAn OpenAPI (YAML/JSON text) for the lint/coverage/documentation dimensions.
apisJsonAn APIs.json for the discoverability/agent-readiness/operations dimensions.
formatAPI maturity scorecard (FREE) › Responses
Overall score, grade, and per-dimension breakdown.
Deprecation / sunset posture (FREE)
Report every deprecated operation and whether it announces a sunset (x-sunset date or a Sunset/Deprecation response header), plus deprecated schema fields — the honest migration picture.
Deprecation / sunset posture (FREE) › Request Body
documentAn OpenAPI (YAML/JSON text or object).
Deprecation / sunset posture (FREE) › Responses
Deprecated operations, sunset posture, and deprecated fields.
Generate example payloads (PRO)
Generate an example request and success-response payload for every operation from its OpenAPI schema (author example/default/enum first, else synthesized by type/format).
Generate example payloads (PRO) › Request Body
documentAn OpenAPI (YAML/JSON text or object).
operationIdOnly this operation.
pathOnly this path.
Generate example payloads (PRO) › Responses
Per-operation example request/response payloads.
Generate code samples (PRO)
Generate runnable curl / JavaScript (fetch) / Python (requests) samples for every operation, with path params filled in and a realistic request body.
Generate code samples (PRO) › Request Body
documentAn OpenAPI (YAML/JSON text or object).
baseUrlOverride the base URL (defaults to servers[0].url).
authHeaderAuth header to show, e.g. "Authorization: Bearer $TOKEN" or "x-api-key: $KEY".
operationIdOnly this operation.
pathOnly this path.
Generate code samples (PRO) › Responses
Per-operation curl/javascript/python snippets.
The curated rule catalog (FREE)
Browse the curated best-of-breed rule catalog the validator runs — every rule with its id, format, title, severity, tags, given, and reference. Optionally filter by artifact format.
query Parameters
formatOnly rules for this artifact format.
The curated rule catalog (FREE) › Responses
The rule catalog.
formatcountThe Ruleset Commons registry (FREE)
The registry of adoptable, provenanced governance rulesets — national, industry, security, and company rulesets you can extend by reference instead of running the linter defaults. Also lists profiles: the curated rulesets validate runs by name.
The Ruleset Commons registry (FREE) › Responses
The ruleset registry.
Issue a governance certificate (PRO)
Issue a tamper-evident certificate attesting an API description passed a named ruleset at a profile threshold. A SHA-256 fingerprint lets anyone re-verify it.
Issue a governance certificate (PRO) › Request Body
apiThe API description object.
The Spectral findings the certificate attests.
profileOne of the certification profiles (e.g. standard).
issuervalidMonthsIssue a governance certificate (PRO) › Responses
Certificate.
Export agent-native governance artifacts (PRO)
Turn a Spectral ruleset into an AGENTS.md governance block, a system-prompt instruction set, a per-rule remediation prompt pack, and a compact rule digest.
Export agent-native governance artifacts (PRO) › Request Body
rulesetA Spectral ruleset (with a rules object).
formatnameExport agent-native governance artifacts (PRO) › Responses
Agent-native artifacts.
Audit a repo Spectral CI maturity (PRO)
Score a repository Spectral governance pipeline against an 8-point maturity rubric and get a prioritized punch-list. Supply files inline, or a public repo (owner/name) to fetch.
Audit a repo Spectral CI maturity (PRO) › Request Body
repoGitHub repo as owner/name (public).
refBranch or SHA (default HEAD).
Audit a repo Spectral CI maturity (PRO) › Responses
Maturity score and punchlist.
Forge MCP tools and Agent Skills (PRO)
From an OpenAPI, forge an MCP server design, per-operation tools, Agent Skills, an enriched OpenAPI (x-mcp / x-agent-skills), a server.json, and apis.json properties.
Forge MCP tools and Agent Skills (PRO) › Request Body
documentThe OpenAPI as YAML or JSON text.
Forge MCP tools and Agent Skills (PRO) › Responses
Forged MCP and skills artifacts.
Emit a governed agent surface (PRO)
Choose which operations and fields your API exposes to agents; emit a governed Tyk OpenAPI, an MCP tool manifest, and a Spectral ruleset with PII/secret checks. Defaults to the whole surface when no selection is supplied.
Emit a governed agent surface (PRO) › Request Body
documentA single OpenAPI (YAML/JSON text).
selectionPer-operation selection (defaults to all selected).
Emit a governed agent surface (PRO) › Responses
Tyk OAS, MCP manifest, and ruleset.
Apply an OpenAPI Overlay (PRO)
Apply an OpenAPI Overlay (spec 1.0.0) to a document — each action resolves a target JSONPath and deep-merges update or removes the match. Returns the transformed OpenAPI plus a per-action report.
Apply an OpenAPI Overlay (PRO) › Request Body
documentThe OpenAPI to transform (YAML/JSON text or object).
overlayAn OpenAPI Overlay 1.0.0 document (YAML/JSON text or object).
Apply an OpenAPI Overlay (PRO) › Responses
Transformed OpenAPI and action report.
Validate a ruleset (FREE)
Check that a ruleset is valid before it is run or stored: invalid JSONPath in given (parsed with nimma, the engine's own parser), unknown functions the engine would otherwise skip silently, undefined #aliases, a missing then, and anything the OpenLint engine rejects. Catalog metadata OpenLint refuses on a rule (title, prompt, x-* …) is set aside and listed in stripped; the engine-ready ruleset is returned when anything was stripped.
Validate a ruleset (FREE) › Request Body
rulesetAn OpenLint (Spectral-format) ruleset: an object, or YAML/JSON text.
Validate a ruleset (FREE) › Responses
Validation report.
validruleCountstrippedrulesetEvaluate a JSONPath (FREE)
Evaluate a JSONPath — a rule's given — against a document and return what it matches: pointer, path and a value preview per match. Pass field to see whether that field is present on each match, the way then.field reads it. paths evaluates several at once.
Evaluate a JSONPath (FREE) › Request Body
documentThe API description, as YAML/JSON text or a parsed object.
pathpathsfieldlimitEvaluate a JSONPath (FREE) › Responses
Matches per expression.
Test a ruleset against fixtures (FREE)
Run a ruleset against fixture documents with expectations. Each case is { name, document, expect }: expect is a list of rule codes that must fire, a { code: count } map for exact counts, or [] for "must lint clean"; optional forbid lists codes that must not fire. Reports pass/fail per case and rule-logic coverage: rules no case asserts on, and rules no fixture triggers. Up to 50 cases.
Test a ruleset against fixtures (FREE) › Request Body
rulesetAn OpenLint (Spectral-format) ruleset: an object, or YAML/JSON text.
Test a ruleset against fixtures (FREE) › Responses
Per-case results and coverage.
passsummaryExplain a rule result (FREE)
Explain why a rule did or did not fire on a document, step by step: whether the document matches the rule's formats, what each given matched (aliases resolved, including the built-ins' #OperationObject and friends), what then checks, and a one-line verdict. The rule is looked up in the ruleset you pass, then the curated catalog, then OpenLint's built-in rulesets.
Explain a rule result (FREE) › Request Body
documentThe API description, as YAML/JSON text or a parsed object.
rulerulesetAn OpenLint (Spectral-format) ruleset: an object, or YAML/JSON text.
Explain a rule result (FREE) › Responses
Explanation.
ruleoriginverdictstepsfiredDescribe a rule (FREE)
One rule by id — description, severity, given/then, tags, reference — and its remediation prompt: what to change when it fires. An unknown id returns 404 with the closest rule ids in detail.suggestions. Also available as POST { rule } for clients that only POST.
query Parameters
ruleDescribe a rule (FREE) › Responses
The rule.
idoriginformattitledescriptionseveritygiventhentagsreferenceremediationDetect a document format (FREE)
Identify a document — OpenAPI (and Swagger 2.0 vs 3.x), AsyncAPI, Arazzo, JSON Schema, APIs.json, MCP, JSON-LD, plans, rate limits, an agent SKILL.md, an Overlay, or a ruleset — with its version, how many catalog rules apply, the built-in ruleset, and the named profiles that apply.
Detect a document format (FREE) › Request Body
documentThe API description, as YAML/JSON text or a parsed object.
Detect a document format (FREE) › Responses
The detected format.
formatversionopenapiMajorcatalogRulesbuiltinRulesetprofilesLint an agent skill (FREE)
Lint an agent SKILL.md — Markdown with YAML frontmatter — against the API Commons skill rules (name, description, structure, metadata). validate does the same when it detects a skill.
Lint an agent skill (FREE) › Responses
Lint result.
formatruleCountpassedsummaryDocument a ruleset (FREE)
Generate human-readable Markdown documentation for a ruleset: each rule's severity, formats, description, message, what it applies to, the check, how to fix it, and its reference — grouped by topic. Pass ruleset, or profile for one of the curated profiles.
Document a ruleset (FREE) › Request Body
rulesetAn OpenLint (Spectral-format) ruleset: an object, or YAML/JSON text.
profiletitleDocument a ruleset (FREE) › Responses
Markdown documentation.
titleruleCountmarkdownBaseline violations (PRO)
Adopt a ruleset on a legacy API without a wall of red. With no baseline, snapshot today's violations into a baseline file (JSON and YAML). With a baseline, reconcile a new lint against it: only NEW violations fail; fixed ones are counted so the baseline can shrink; budget adds a warning ceiling and per-rule no-increase. Lints document with your ruleset, your org ruleset, or the catalog — or pass violations from your own linter.
Baseline violations (PRO) › Request Body
documentThe API description, as YAML/JSON text or a parsed object.
rulesetAn OpenLint (Spectral-format) ruleset: an object, or YAML/JSON text.
baselineA baseline file from a snapshot (object or YAML/JSON text).
Baseline violations (PRO) › Responses
Snapshot or reconciliation.
modepasscountsbaselineyamlburndownbudgetFederate rulesets (PRO)
A central baseline ruleset plus the domains that adopt it — each rule inherited, overridden (with a reason), waived, deferred, or grown locally — computed into divergence per rule, drift per domain, contested rules, and local rules worth promoting to the center.
Federate rulesets (PRO) › Request Body
federation{ central: { rules: [{ code, severity, … }] }, domains: [{ id, adoptions: [{ code, state, severity?, reason? }] }] } — object or YAML/JSON text.
Federate rulesets (PRO) › Responses
The federation report.
centraltotalsFingerprint the OpenAPI generator (PRO)
For a code-first API: identify the generator that produced the spec (with confidence and evidence), and split findings into the ones to fix with annotations in code — grouped by concern, with the fix for that generator — and the ones to fix in spec authoring. Lints with OpenLint's built-in OAS rules unless you pass a ruleset or violations.
Fingerprint the OpenAPI generator (PRO) › Request Body
documentThe API description, as YAML/JSON text or a parsed object.
rulesetAn OpenLint (Spectral-format) ruleset: an object, or YAML/JSON text.
Fingerprint the OpenAPI generator (PRO) › Responses
Generator and classified findings.
generatorrulesetcountscodegenFix lint findings (PRO)
Propose an OpenAPI Overlay that fixes the lint errors — or the rules you name, plus warnings with include_warnings — using each rule's remediation guidance; then apply it, re-lint, and diff. Returns the overlay to review, the fixed document, what was resolved, what now fires more often (introduced), and any breaking change. OpenAPI only; up to 150 KB. Model-backed.
Fix lint findings (PRO) › Request Body
documentThe API description, as YAML/JSON text or a parsed object.
rulesinclude_warningsrulesetAn OpenLint (Spectral-format) ruleset: an object, or YAML/JSON text.
Fix lint findings (PRO) › Responses
The proposed fix, proven.
modeloverlaybeforeafterdocumentRuleset from a style guide (PRO)
Turn a prose API style guide into an owned, grounded ruleset: one rule per checkable statement, following the API Commons rule-id convention, each validated (drafts that fail are listed in rejected), with the statements no rule can check listed in unchecked. Test the result with /governance/test-ruleset before gating on it. Up to 40 KB. Model-backed.
Ruleset from a style guide (PRO) › Request Body
guidetargetownerdocstitleRuleset from a style guide (PRO) › Responses
The drafted ruleset.
modelvalidruleCountrulesetyamlGet the org ruleset (PRO)
Your org default ruleset. Once set, validate, coverage, scorecard, estate, baseline, codefirst and fix use it for any call that passes no ruleset (pass use_org_ruleset: false to opt out for one call). The ruleset is validated before it is stored. POST { action: "get" | "set" | "delete" } does the same for POST-only clients.
Get the org ruleset (PRO) › Responses
The stored ruleset.
nameupdatedruleCountrulesetSet the org ruleset (PRO)
Your org default ruleset. Once set, validate, coverage, scorecard, estate, baseline, codefirst and fix use it for any call that passes no ruleset (pass use_org_ruleset: false to opt out for one call). The ruleset is validated before it is stored. POST { action: "get" | "set" | "delete" } does the same for POST-only clients.
Set the org ruleset (PRO) › Request Body
rulesetAn OpenLint (Spectral-format) ruleset: an object, or YAML/JSON text.
nameSet the org ruleset (PRO) › Responses
Stored.
nameupdatedruleCountstrippedGet, set or delete the org ruleset (PRO)
Your org default ruleset. Once set, validate, coverage, scorecard, estate, baseline, codefirst and fix use it for any call that passes no ruleset (pass use_org_ruleset: false to opt out for one call). The ruleset is validated before it is stored. POST { action: "get" | "set" | "delete" } does the same for POST-only clients.
Get, set or delete the org ruleset (PRO) › Request Body
actionrulesetAn OpenLint (Spectral-format) ruleset: an object, or YAML/JSON text.
nameGet, set or delete the org ruleset (PRO) › Responses
As for GET, PUT or DELETE.
nameupdatedruleCountrulesetDelete the org ruleset (PRO)
Your org default ruleset. Once set, validate, coverage, scorecard, estate, baseline, codefirst and fix use it for any call that passes no ruleset (pass use_org_ruleset: false to opt out for one call). The ruleset is validated before it is stored. POST { action: "get" | "set" | "delete" } does the same for POST-only clients.
Delete the org ruleset (PRO) › Responses
Deleted.
deletedGovern an API estate (PRO)
Run the core governance checks — lint, coverage, scorecard, PII and secret classification — across a whole set of APIs and roll them up: per-API score, grade, errors and sensitive fields, estate aggregates (average score, grade distribution, APIs with PII or secrets, strongest and weakest), and a worst-first list of what needs attention. Pass your own ruleset (or set an org ruleset): a score against rules you never adopted means little. detail: true adds per-API dimensions.
Govern an API estate (PRO) › Request Body
The estate, one entry per API.
documentA single API, when apis is omitted.
rulesetThe ruleset to score against.
detailGovern an API estate (PRO) › Responses
Estate rollup.
note