This release is a pre-release and may not be stable for production use.
Jentic API Tools - Pipelines
High-level workflows that orchestrate analyze, score, repair, and storage operations for OpenAPI specifications.
Key Features
The pipelines package provides three main workflow functions: import_openapi runs the full import pipeline (fetch, parse, validate, convert, bundle, repair, score, store), score_openapi runs a lighter scoring pipeline (fetch, parse, bundle, validate, score), and improve_openapi orchestrates the apply-overlays-and/or-replace-spec, score, and lay-out-per-run-snapshot flow used behind /public-apis/improve and the jentic-apitools improve CLI command. The first two accept an OASJsonRequest with processing configuration and an optional progress callback for real-time updates. By default, import_openapi rejects specs with invalid server URLs and invalid security definitions; these are controlled by reject_invalid_server_urls and reject_invalid_security in OASProcessConfiguration. The improve orchestrator depends on the repair.overlay backend to apply overlays and to verify the cumulative-overlays invariant, raising CumulativeInvariantError (with a structured diff) when applying cumulative + per_run overlays to the immutable bundled input does not reproduce the produced spec. The package handles format conversion from Swagger 2.0 and Google Discovery to OpenAPI 3.x, reference bundling via Redocly, and artifact management through configurable storage contexts. The repo_tools module provides rebuild_scores_json and rebuild_apis_json for rebuilding the root scores.json and apis.json catalog files from all API specs in a local repository clone.
Dependencies
Internal: common, llm, analyze, score, repair, storage. External: jentic-openapi-transformer (with redocly), datadog. Note: repair is a hard dependency (used by both the import flow and the new improve orchestrator).
Installation
pip install jentic-apitools-pipelines
Quick Start
from jentic.apitools.common.models import OASJsonRequest, OASRequestMeta, OASProcessConfiguration
from jentic.apitools.pipelines import score_openapi
request = OASJsonRequest(meta=OASRequestMeta(oas_process_configuration=OASProcessConfiguration()))
result = score_openapi(request, spec_url="https://petstore3.swagger.io/api/v3/openapi.json")
print(f"Success: {result.success}")
Testing
pytest tests -v
Metadata
Release files for jentic-apitools-pipelines 1.0.0a25
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| jentic_apitools_pipelines-1.0.0a25.tar.gz | 45.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| jentic_apitools_pipelines-1.0.0a25-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 101.6 kB
Release files / jentic_apitools_pipelines-1.0.0a25.tar.gz
| Download URL | jentic_apitools_pipelines-1.0.0a25.tar.gz |
|---|---|
| Size | 45.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
472514e10edb1c6f190cc00d4a7c089c0f40335f0d343c0d560ff5e07b14a546
|
|
BLAKE2b-256 checksum How to use checksums |
95d8a4113ca696708fbdb7add398c89f3ee50ff1dbfeef3f8ee831dd19a1ae1c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|
Release files / jentic_apitools_pipelines-1.0.0a25-py3-none-any.whl
| Download URL | jentic_apitools_pipelines-1.0.0a25-py3-none-any.whl |
|---|---|
| Size | 55.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
38a98e5b713214b672bac505d1ef5e09e4ad7e072d8d123b85c1e142eda09a28
|
|
BLAKE2b-256 checksum How to use checksums |
4aa425f6740a05cb47ad460e0e5665417616c45e3ea5ead1b6b95c8afd4fea8a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.12
|