Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

Jentic OpenAPI Tools

A comprehensive Python toolkit for parsing, validating, and transforming OpenAPI documents with pluggable backend architecture.

Discord Contributor Covenant License: Apache 2.0 PyPI version Python

Features

  • Pluggable Backend Architecture - Support for multiple parsing, validation, and transformation strategies via entry points
  • Type Safety - Full type hints with comprehensive type checking throughout
  • Multiple Input Formats - Accept OpenAPI documents from file URIs, JSON/YAML strings, or Python dictionaries
  • Flexible Output Types - Return results as dictionaries, strings, or custom types
  • Extensible Design - Easy integration of third-party backends through standard Python entry points
  • Path Security - Built-in defense against path traversal attacks
  • Production Ready - Comprehensive test coverage and error handling

Installation

The recommended way to install is via the meta-package, which includes all packages and backends (parser, validator, transformer, plus the Spectral, Redocly, and SpecLynx backends):

pip install jentic-openapi-tools

This also installs the jentic-openapi-tools CLI. If you only need specific functionality, you can install individual packages instead:

pip install jentic-openapi-validator                  # Core validator with default + openapi-spec backends
pip install jentic-openapi-validator-spectral          # Add Spectral backend
pip install jentic-openapi-validator-redocly           # Add Redocly backend
pip install jentic-openapi-parser                      # Parser only
pip install jentic-openapi-transformer[redocly]        # Transformer with Redocly bundler

Note that the CLI and Python API only have access to backends whose packages are installed. Installing the meta-package is the easiest way to get everything working, especially for CI pipelines and AI agents.

Prerequisites:

  • Python 3.11 or higher
  • Node.js >=20.19.0 and npm (required for Redocly and Spectral backends)

Quick Start

Parsing OpenAPI Documents

from jentic.apitools.openapi.parser.core import OpenAPIParser

# Create parser with default backend
parser = OpenAPIParser()

# Parse from file
doc = parser.parse("file:///path/to/openapi.yaml")
print(doc["info"]["title"])

# Parse from YAML/JSON string
yaml_doc = """
openapi: 3.1.0
info:
  title: My API
  version: 1.0.0
paths: {}
"""
doc = parser.parse(yaml_doc)

Validating OpenAPI Documents

from jentic.apitools.openapi.validator.core import OpenAPIValidator

# Create validator
validator = OpenAPIValidator()

# Validate from file
result = validator.validate("file:///path/to/openapi.yaml")

if result.valid:
    print("Document is valid!")
else:
    for diagnostic in result.diagnostics:
        print(f"Error: {diagnostic.message}")

Command-Line Interface

The jentic-openapi-validator package includes the jentic-openapi-tools CLI for validating OpenAPI documents directly from the terminal:

# Validate a local file
jentic-openapi-tools validate openapi.yaml

# Use a specific backend and get JSON output
jentic-openapi-tools validate -b spectral -f json openapi.yaml

# Validate a remote URL
jentic-openapi-tools validate https://petstore3.swagger.io/api/v3/openapi.json

The CLI supports text, JSON, and GitHub Actions annotation output formats, stdin input, parallel multi-backend execution, and standard exit codes for CI integration. See the jentic-openapi-validator README for the full CLI reference.

Transforming OpenAPI Documents

from jentic.apitools.openapi.transformer.bundler.core import OpenAPIBundler

# Bundle OpenAPI document with external reference resolution
bundler = OpenAPIBundler("redocly")
result = bundler.bundle("file:///path/to/openapi.yaml", return_type=dict)
print(result["info"]["title"])

Packages

This monorepo contains the following packages:

Package Description
jentic-openapi-tools Meta-package that installs all workspace packages
jentic-openapi-common Common utilities and shared functionality
jentic-openapi-datamodels OpenAPI data models and structures
jentic-openapi-parser OpenAPI document parsing with pluggable backends
jentic-openapi-traverse OpenAPI document traversal utilities
jentic-openapi-transformer OpenAPI document transformation and bundling
jentic-openapi-transformer-redocly Redocly-based transformation backend
jentic-openapi-validator OpenAPI document validation with pluggable backends
jentic-openapi-validator-redocly Redocly-based validation backend
jentic-openapi-validator-spectral Spectral-based validation backend
jentic-openapi-validator-speclynx SpecLynx ApiDOM-based validation backend

Each package has its own detailed README with comprehensive API documentation and examples.

Documentation

  • Development Guide - Setup instructions, testing, and development workflows
  • Contributing Guidelines - How to contribute to the project
  • Package READMEs - See individual package directories for detailed API documentation

Architecture

The Jentic OpenAPI Tools follow a modular architecture with a plugin-based backend system:

  • Core Packages - Provide base functionality and abstractions
  • Backend Packages - Implement specific parsing, validation, or transformation strategies
  • Entry Points - Backends register themselves via Python entry points for automatic discovery

This design allows you to:

  • Start with default backends and add advanced ones as needed
  • Implement custom backends for specific requirements
  • Use multiple backends simultaneously for comprehensive validation

Built and maintained by Jentic

Metadata

Release files for jentic-openapi-tools 1.0.0a57

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for jentic-openapi-tools 1.0.0a57
File Size Uploaded
jentic_openapi_tools-1.0.0a57.tar.gz 4.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for jentic-openapi-tools 1.0.0a57
File Interpreter ABI Platform
jentic_openapi_tools-1.0.0a57-py3-none-any.whl Python 3 none any Details

Total release size: 9.1 kB

Release files / jentic_openapi_tools-1.0.0a57.tar.gz

Download URL jentic_openapi_tools-1.0.0a57.tar.gz
Size 4.7 kB
Tags Source
SHA-256 checksum
How to use checksums
d4732d5abe904fb7f9ee6c4fb993b6a98fa5cf129a849b901a6ea8bbe758779d
BLAKE2b-256 checksum
How to use checksums
b813117622deb13c5f3adbb25d23fd801b9ad0be4d5d023ad5e57d832de08074
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 10, 2026.

Transparency log

Release files / jentic_openapi_tools-1.0.0a57-py3-none-any.whl

Download URL jentic_openapi_tools-1.0.0a57-py3-none-any.whl
Size 4.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
23a4e0930d746edd0071a64e6f5fdf39d9ced9f52abb8074bffcc32777c83e2c
BLAKE2b-256 checksum
How to use checksums
da0c6c96e63b39ae7f5355ad5f8b556e700aaa4dd493b395a35583747505bd8b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Jun 10, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.0.0a57 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page