This directory contains the Dataverse vacuum ruleset used to check the generated OpenAPI document while preserving known legacy API shapes.
vacuum is a command-line linter and quality checker for OpenAPI, AsyncAPI, and
JSON Schema documents. It is compatible with Spectral rulesets, so the Dataverse
ruleset can extend the built-in vacuum:oas recommended profile and disable
rules that are noisy for the current API surface.
Project and documentation:
Install with Homebrew:
brew install --cask daveshanley/vacuum/vacuumInstall with npm:
npm i -g @quobix/vacuumInstall with curl:
curl -fsSL https://quobix.com/scripts/install_vacuum.sh | shGenerate the OpenAPI document from the repository root:
mvn -q -DskipTests process-classesThe generated JSON is written to:
target/classes/META-INF/openapi.json
Run the vacuum checks from the repository root:
vacuum lint -r scripts/openapi/vacuum-recommended.yaml target/classes/META-INF/openapi.jsonFor a fuller report:
vacuum report -r scripts/openapi/vacuum-recommended.yaml target/classes/META-INF/openapi.jsonFor the interactive dashboard:
vacuum dashboard -r scripts/openapi/vacuum-recommended.yaml target/classes/META-INF/openapi.jsonThe ruleset extends vacuum:oas recommended rules, with legacy/noisy checks
disabled where Dataverse intentionally keeps historical endpoint names or lacks
examples. Request-body findings remain enabled so unused body parameters on GET
endpoints are reported and can be removed from source.