swagroutes is a command-line tool that extracts and lists API routes from Swagger files in YAML or JSON format. It simplifies the process of fetching the routes provided by an API and supports processing multiple files or directories at once.
pip install swagroutes
pip install -U swagroutes
usage: swagroutes [-h] [-o OUTPUT] [-p] input [input ...]
Extract routes from Swagger files.
positional arguments:
input Input file(s) or directory containing Swagger files.
options:
-h, --help show this help message and exit
-o OUTPUT, --output OUTPUT
Output file to store the results.
-p, --include-params Include query parameters in the extracted routes.
To use swagroutes, simply provide input files or directories containing Swagger files as arguments. The tool will process the files and print the extracted routes.
swagroutes file.yaml
swagroutes file.json
swagroutes file1.yaml file2.json
swagroutes directory/
swagroutes file1.yaml directory1/ file2.json directory2/
swagroutes file1.yaml --include-params
Save the extracted routes to an output file using the -o
or --output
option:
swagroutes file.yaml -o output.txt
Input:
basePath: /api
paths:
/users:
get: {}
post: {}
/profile/{profile_id}:
put: {}
Output:
GET /api/users
POST /api/users
PUT /api/profile/{profile_id}
Input:
basePath: /api/v1
paths:
/users:
get:
parameters:
- name: limit
in: query
- name: offset
in: query
/users/{userId}:
get:
parameters:
- name: userId
in: path
required: true
type: string
Output:
GET /api/v1/users/{userId}
GET /api/v1/users?limit&offset