Generates API documentation from an OpenAPI specification file
Project description
OpenAPI Documentation Generator
This is a Python script that generates API documentation from an OpenAPI specification file.
Usage
pip install openapi-markdown
CLI
You can use openapi2markdown command as follows:
% openapi2markdown --help
Usage: openapi2markdown [OPTIONS] INPUT_FILE [OUTPUT_FILE]
Convert OpenAPI spec to Markdown documentation.
INPUT_FILE: Path to OpenAPI specification file (JSON or YAML) OUTPUT_FILE:
Path where markdown file will be generated (optional, defaults to INPUT_FILE
with .md extension)
Options:
-t, --templates-dir DIRECTORY Custom templates directory path
-f, --filter-paths TEXT Only generate apis that start with the given
path, multiple paths are allowed
Library
from openapi_markdown.generator import to_markdown
apiFile = "./tests/openapi.json"
outputFile = "api_doc.md"
templatesDir = "templates"
options = {
'filter_paths': ['/client']
}
to_markdown(apiFile, outputFile, templates_dir, options)
- If you want to use your own template, creates 'templates' directory and put
api_doc_template.md.j2file in it. - You can change templates directory by passing it as the 3rd argument of
to_markdown.
Default templates
There are internal templates you can use. If not set default is used.
- templates - default
- templates/embed - prints objects hierarchially as list in every request/response
Development
Requirements
- Python 3.x
- json
- PyYAML
- openapi-core
- Jinja2
pip install -r requirement.txt
install a project in editble mode
pip install -e ./
run tests
python -m unittest
Deploy
python3 -m pip install --upgrade twine
./pypi.sh
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file openapi_markdown-0.4.3.tar.gz.
File metadata
- Download URL: openapi_markdown-0.4.3.tar.gz
- Upload date:
- Size: 20.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d9950dab5c1396636b7e36d0b2ed510a6a3ef2d06a1c2717b1454f748cf3b4eb
|
|
| MD5 |
3634c3995d3980da2aa293c211b9a984
|
|
| BLAKE2b-256 |
c4c2626872443d3f163c7329db99df99c77e4636243c5af1aeac7b567ab2edc5
|
File details
Details for the file openapi_markdown-0.4.3-py3-none-any.whl.
File metadata
- Download URL: openapi_markdown-0.4.3-py3-none-any.whl
- Upload date:
- Size: 10.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.0.1 CPython/3.12.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
435d35693bf2455768bd5c30075681f154cc37fd6db6ea8829e1fb9862f037b8
|
|
| MD5 |
c929a057c429d5be0a696629d6c8313a
|
|
| BLAKE2b-256 |
7b98da02ade1759ff02eec932bc6a812d67daa9ceb70561f1e6d5e9c81e8e2b8
|