Free SDK
Kanoniv's Python SDK and embedded Rust reconciliation engine are free to use locally. No account, no API keys, no data leaves your machine. You can validate specs, plan execution, diff changes, and reconcile identity data entirely offline.
What's Free (Local SDK)
| Component | Description |
|---|---|
Python SDK (pip install kanoniv) | Validate, plan, diff, and reconcile locally |
| Rust reconciliation engine | Native-speed matching, blocking, scoring, and survivorship |
| All matching capabilities | Exact, similarity, range, composite rules with no restrictions |
| All blocking strategies | Plan-based and LSH blocking |
| All survivorship policies | most_recent, most_complete, source_priority, aggregate |
| CLI offline commands | kanoniv validate, kanoniv plan, kanoniv diff |
What's Cloud (Paid)
| Component | Description |
|---|---|
| Kanoniv Cloud | Managed platform with persistent identity graph |
| Auto-discovery + bootstrap | kanoniv autodetect --bootstrap via Cloud API |
| AutoTune | Automated threshold optimization via Cloud API |
| Real-time resolution | Sub-millisecond resolve API |
| Warehouse connectors | Snowflake, Databricks, BigQuery |
| Enterprise features | SSO, SCIM, HIPAA compliance, BYOK encryption, SIEM, audit logs |
Architecture
The SDK has zero external dependencies at runtime - no API calls, no telemetry, no data leaves your machine.
Your Python code
|
kanoniv Python SDK (pip install kanoniv)
|
PyO3 bridge (Python -> Rust FFI)
|
Rust reconciliation engine (compiled native code)
|
Results (golden records, match pairs, diagnostics)The Rust engine is compiled into a native Python extension via PyO3 and maturin. When you pip install kanoniv, you get a pre-built wheel for your platform - no Rust toolchain needed.
Supported Platforms
| Platform | Architecture | Wheel |
|---|---|---|
| Linux | x86_64 | kanoniv-*-manylinux_2_17_x86_64.whl |
| macOS | Intel (x86_64) | kanoniv-*-macosx_10_12_x86_64.whl |
| macOS | Apple Silicon (aarch64) | kanoniv-*-macosx_11_0_arm64.whl |
Installation
bash
pip install kanonivOr with Cloud support:
bash
pip install kanoniv[cloud]Quick Example
yaml
# customer-spec.yaml
entity:
name: customer
sources:
- name: crm
adapter: csv
location: contacts.csv
primary_key: id
- name: billing
adapter: csv
location: invoices.csv
primary_key: id
rules:
- name: email_exact
type: exact
field: email
weight: 1.0
- name: name_fuzzy
type: jaro_winkler
field: name
threshold: 0.9
weight: 0.8
survivorship:
strategy: source_priority
priority: [crm, billing]
decision:
thresholds:
match: 0.85python
from kanoniv import Spec, Source, reconcile, validate
# Validate the spec (catches errors before processing)
spec = Spec.from_file("customer-spec.yaml")
validation = validate(spec)
validation.raise_on_error()
# Load sources
sources = [
Source.from_csv("crm", "contacts.csv"),
Source.from_csv("billing", "invoices.csv"),
]
# Run reconciliation (entirely local - no network calls)
result = reconcile(sources, spec)
print(f"Input records: {result.total_input_records}")
print(f"Golden records: {len(result.golden_records)}")
print(f"Merge rate: {result.merge_rate:.1%}")Source Adapters
The SDK includes adapters for common data sources:
| Adapter | Method | Description |
|---|---|---|
| CSV | Source.from_csv(name, path) | Read from CSV files |
| Pandas | Source.from_pandas(name, df) | Read from DataFrames |
| Warehouse | Source.from_warehouse(name, conn, query) | Read from SQL databases |
| dbt | Source.from_dbt(name, project, model) | Read from dbt models |
Why Free?
For users
- No vendor lock-in: Your matching logic lives in a YAML file you own. If you stop using Kanoniv, your spec is still valid documentation.
- Transparency: The matching engine produces explainable decisions with confidence scores and rule traces.
- Offline-first: Develop and test locally with real data before deploying to production. No account, no API key, no internet required.
- Free for any scale: Process millions of records locally at zero cost. The Cloud is optional.
For the ecosystem
- Interoperability: The YAML spec format is a portable standard for defining matching rules. Other tools can read and write it.
- Trust: Every merge decision has a reason code, confidence score, and field provenance - critical for compliance and regulated industries.
