Analitiq connector/connection/stream/pipeline/endpoint contract models (Pydantic) — the authored write-contract subset the published JSON Schemas and the validator both derive from. Import as `analitiq.contracts`.
Project description
analitiq-contract-models
The Analitiq authored contract models (Pydantic) — the write/input shapes for
connectors, connections, endpoints, type-maps, streams, and pipelines. These are
the single source of truth the published JSON Schemas (schemas.analitiq.ai) are
generated from, packaged so the validator and the pipeline engine can
validate documents against the contract directly (model_validate) instead
of re-implementing its cross-field rules.
Install & use
pip install analitiq-contract-models
from analitiq.contracts.endpoints import ApiEndpointDoc
from pydantic import ValidationError
try:
ApiEndpointDoc.model_validate(doc) # structural + cross-field, offline
except ValidationError as exc:
... # every contract rule, enforced from the one source
Importing needs no environment: the package defaults DOMAIN to the public
contract host (analitiq.ai) before the models load.
What it ships
The authored write/input contract only — nothing internal:
analitiq.contracts.connector—ConnectorConfiganalitiq.contracts.connection—ConnectionInputanalitiq.contracts.endpoints—ApiEndpointDoc,DatabaseEndpointDoc,DatabaseObjectanalitiq.contracts.type_map—TypeMapReadDoc,TypeMapWriteDocanalitiq.contracts.stream—StreamInput(+ the endpoint refs)analitiq.contracts.pipelines.config—PipelineInputanalitiq.contracts.endpoint_identity—derive_db_endpoint_idanalitiq.contracts.shared— the shared building blocks those embed
Internal persistence/catalog variants (*Document/*Config/*Patch/*Read,
resolved-connector/catalog shapes, auth-state) are not included — the package
is the public contract surface, no more.
analitiq is a PEP 420 namespace shared with
analitiq-validator.
Source of truth
The models are rendered on release from the canonical Analitiq contract models — there is no second, re-authored copy. The published JSON Schemas and this package are two renderings of the same models, so they cannot drift. The build guards that no internal identifier or private path can leak into the public package.
Versioning
analitiq-contract-models is a strict validator (extra=forbid, closed enums), so
version bumps are coordinated: a consumer on an older minor rejects a newly-added
field a producer emits. See the publishing/versioning notes in the source repo for
the major/minor/patch semantics and the consumer rollout rule.
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 analitiq_contract_models-1.0.0rc1.tar.gz.
File metadata
- Download URL: analitiq_contract_models-1.0.0rc1.tar.gz
- Upload date:
- Size: 78.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
a390d2a82211196ab9a10ba431882a70a99522166f98499fd419aa863706bd47
|
|
| MD5 |
6ff5434a54d8af9e9589295500692e2c
|
|
| BLAKE2b-256 |
21806b563525a152da595f879590604398248bcdeac4d56b1f9fd84626d4acff
|
Provenance
The following attestation bundles were made for analitiq_contract_models-1.0.0rc1.tar.gz:
Publisher:
contract-models-release.yml on analitiq-ai/infrastructure
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
analitiq_contract_models-1.0.0rc1.tar.gz -
Subject digest:
a390d2a82211196ab9a10ba431882a70a99522166f98499fd419aa863706bd47 - Sigstore transparency entry: 2123759708
- Sigstore integration time:
-
Permalink:
analitiq-ai/infrastructure@2c780df55785ce989a5aad4eafc038e19ecc0f25 -
Branch / Tag:
refs/tags/contract-models-v1.0.0rc1 - Owner: https://github.com/analitiq-ai
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
contract-models-release.yml@2c780df55785ce989a5aad4eafc038e19ecc0f25 -
Trigger Event:
push
-
Statement type:
File details
Details for the file analitiq_contract_models-1.0.0rc1-py3-none-any.whl.
File metadata
- Download URL: analitiq_contract_models-1.0.0rc1-py3-none-any.whl
- Upload date:
- Size: 84.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
552cc5387181971752a799b0299bf1c41c50423dd3feae7c19b1023612dee875
|
|
| MD5 |
64fedf39e106533677c8b19cad590091
|
|
| BLAKE2b-256 |
1ec165d07ab1f888afafc63f8a0e2d9f3c14bf2e664361ad5f2d1faff375afa2
|
Provenance
The following attestation bundles were made for analitiq_contract_models-1.0.0rc1-py3-none-any.whl:
Publisher:
contract-models-release.yml on analitiq-ai/infrastructure
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
analitiq_contract_models-1.0.0rc1-py3-none-any.whl -
Subject digest:
552cc5387181971752a799b0299bf1c41c50423dd3feae7c19b1023612dee875 - Sigstore transparency entry: 2123759732
- Sigstore integration time:
-
Permalink:
analitiq-ai/infrastructure@2c780df55785ce989a5aad4eafc038e19ecc0f25 -
Branch / Tag:
refs/tags/contract-models-v1.0.0rc1 - Owner: https://github.com/analitiq-ai
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
contract-models-release.yml@2c780df55785ce989a5aad4eafc038e19ecc0f25 -
Trigger Event:
push
-
Statement type: