Skip to main content

openapi cli tool

Project description


Build Status


OpenAPI (Swagger 3.x) CLI Tool.

  • Supports multi file extension (json|yaml|yml).
  • List up defined APIs.
  • Display an API specification which is resolved $ref.
  • Bundle multi-file into one.
  • OAS interactive scaffold.


Execute Python installation command on your machine.
Supports Python 2.7, 3.4 <=.

$ python install

Then openapi-cli-tool command is installed.


$ openapi-cli-tool --help
Usage: openapi-cli-tool [OPTIONS] COMMAND [ARGS]...

  --help  Show this message and exit.

  bundle    Bundle multi-file into one.
  list      List up APIs in a specific file or directory.
  resolve   Display `$ref` resolved API specification.
  scaffold  Interactively create a simple OpenAPI Specification.


Bundle multi-file specifications into one, regardless of file extension (json|yaml|yml).

$ openapi-cli-tool bundle --help
Usage: openapi-cli-tool bundle [OPTIONS] FILE_PATH

  Bundle multi-file into one.

  -f, --file TEXT  Load common objects such as info and servers from a
                   specific file. Default is a file which is the top of list
                   command result.
  -t, --type TEXT  Export data type. {json|yaml}  [default: json]
  --help           Show this message and exit.


$ openapi-cli-tool bundle FILE_PAH > ./specification.json


List up APIs from specification file/directory regardless of file extension (json|yaml|yml).

$ openapi-cli-tool list [spec-path]

Method    Path       File
--------  ---------  ------------------------------------------
PUT       /avatar    ./tests/resources/spec/sample.yml
GET       /follwers  ./tests/resources/spec/folder1/sample2.yaml
POST      /follwers  ./tests/resources/spec/folder1/sample2.yaml
PUT       /follwers  ./tests/resources/spec/folder1/sample2.yaml
POST      /pets      ./tests/resources/spec/sample.yml
GET       /posts     ./tests/resources/spec/folder1/sample.json
POST      /posts     ./tests/resources/spec/folder1/sample.json
GET       /users     ./tests/resources/spec/folder1/sample.json
POST      /users     ./tests/resources/spec/folder1/sample.json


Display an API specification which is resolved multi-file API specification via $ref pointers.

Usage: openapi-cli-tool resolve [OPTIONS] METHOD PATH FILE_PATH

  Display `$ref` resolved API specification.

  -t, --type TEXT  Export data type. {json|yaml}  [default: json]
  --help           Show this message and exit.


$ openapi-cli-tool resolve post /cats ./tests/resources/spec


Interactively input information of your API.
A simple OpenAPI Specification is generated on your prompt.

$ openapi-cli-tool scaffold

Please enter title [""]: sample
Please enter version [v1.0]:
Please enter license [Apache 2.0]:
Please enter server url []:
Please enter path [/]: /example
Please enter method for /example [get|post|put|delete|head|option|trace]: get
Please enter description for get /example [""]: sample get endpoint
Please enter response code for get /example [200]:

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

openapi-cli-tool-0.1a0.tar.gz (5.8 kB view hashes)

Uploaded source

Built Distributions

openapi_cli_tool-0.1a0-py3-none-any.whl (9.4 kB view hashes)

Uploaded py3

openapi_cli_tool-0.1a0-py2-none-any.whl (9.4 kB view hashes)

Uploaded py2

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page