oas-reducer

Reduce an OpenAPI definition into a smaller subset.

Usage no npm install needed!

<script type="module">
  import oasReducer from 'https://cdn.skypack.dev/oas-reducer';
</script>

README

oas-reducer

Reduce an OpenAPI definition into a smaller subset. Build

Installation

npm install -g oas-reducer

Usage

Library

const oasReducer = require('oas-reducer');

console.log(
  oasReducer(<OpenAPI definition>, options)
);

⚠️ Note that the API definition supplied here must be: an OpenAPI 3.x definition and a JSON object.

Available options

  • tags: An array of tags to reduce by. Example: ['pet']
  • paths: A key-value object of path+method combinations to reduce by. Example: {'/pet': ['get', 'post']}
    • If you wish to retain all methods of a given path, supply * as the method array instead. Example: {'/pet': '*'}

CLI

$ oas-reducer <OpenAPI definition to reduce>

The CLI will walk you through a couple of questions about how and what you want to reduce the file by and then it'll prompt you to save the newly reduced API definition to a new file! 🏅

⚠️ Note that the API definition supplied here must be an OpenAPI 3.x definition and can be either a JSON or YAML file path.