Identity resolution as code
Project description
kanoniv
Python client for the Kanoniv identity resolution API.
Installation
pip install kanoniv
Quick Start
import kanoniv
client = kanoniv.Client(
api_key="kn_abc123",
base_url="https://api.kanoniv.com",
)
# Resolve an identity
result = client.resolve(system="salesforce", external_id="003xxx")
print(result["canonical_data"])
# Search entities
results = client.entities.search(q="john@acme.com")
# Ingest records
client.ingest("source-uuid", records=[
{"id": "ext_1", "type": "contact", "name": "John", "email": "john@acme.com"},
])
# Dashboard stats
stats = client.stats()
print(f"{stats['total_canonical_entities']} canonical entities")
Async Usage
async with kanoniv.AsyncClient(api_key="kn_...") as client:
result = await client.resolve(system="crm", external_id="sf_123")
entities = await client.entities.search(q="jane")
Authentication
# API key (recommended for programmatic use)
client = kanoniv.Client(api_key="kn_abc123")
# JWT bearer token
client = kanoniv.Client(access_token="eyJ...")
Resources
| Resource | Methods |
|---|---|
client.entities |
search(), get(), get_linked(), history() |
client.sources |
list(), get(), create(), update(), delete(), sync(), preview() |
client.rules |
list(), create(), history() |
client.jobs |
list(), get(), run(), cancel() |
client.reviews |
list(), decide() |
client.overrides |
list(), create(), delete() |
client.audit |
list(), entity_trail() |
client.specs |
list(), get(), ingest() |
Error Handling
from kanoniv import NotFoundError, RateLimitError
try:
entity = client.entities.get("nonexistent")
except NotFoundError:
print("Entity not found")
except RateLimitError as e:
print(f"Rate limited, retry after {e.retry_after}s")
License
Apache-2.0
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
kanoniv-0.2.9.tar.gz
(239.5 kB
view details)
Built Distributions
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 kanoniv-0.2.9.tar.gz.
File metadata
- Download URL: kanoniv-0.2.9.tar.gz
- Upload date:
- Size: 239.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ff5e2d72ee7f728e9b2d61803bef411983a9d69032b64f5016a797cb0e0bb4d1
|
|
| MD5 |
d00fd96e9e314449d78ac0871b650262
|
|
| BLAKE2b-256 |
1c8f3a1d4aded49f201fcae5a07512361fb679ff36e431126c23a2ed3e898466
|
File details
Details for the file kanoniv-0.2.9-cp311-cp311-macosx_11_0_arm64.whl.
File metadata
- Download URL: kanoniv-0.2.9-cp311-cp311-macosx_11_0_arm64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.11, macOS 11.0+ ARM64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c6b88497e8f1cf19d37be907ce806190aaa6d843a068691cfc72993cd4c28765
|
|
| MD5 |
a0e79f841ffd1812e817064a06eb31fd
|
|
| BLAKE2b-256 |
678080c6ec322c810ef7e1a3dbeca19540ee44ebbbf85983870cbbf8a3f8fce3
|
File details
Details for the file kanoniv-0.2.9-cp311-cp311-macosx_10_12_x86_64.whl.
File metadata
- Download URL: kanoniv-0.2.9-cp311-cp311-macosx_10_12_x86_64.whl
- Upload date:
- Size: 1.1 MB
- Tags: CPython 3.11, macOS 10.12+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
faf670992202ecac1481e21e2520650dcbfe59c02a5ab9013b81fda7883b422b
|
|
| MD5 |
a96861440c4752e48e0a0c03d32948fc
|
|
| BLAKE2b-256 |
52c671eac981abe50f595fea8cb7bd5e5f1f6853e0f311ac98674a2bbb92ce8b
|
File details
Details for the file kanoniv-0.2.9-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: kanoniv-0.2.9-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 1.3 MB
- Tags: CPython 3.8, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: maturin/1.11.5
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
930a36e5e2d0bf2d3846c44ec693fc5a15f7f9ae08d9775e64e33e9952bb647f
|
|
| MD5 |
83d97a042d0028c1a7ee5e97d5b05264
|
|
| BLAKE2b-256 |
44f3e0a236acb39bfb65e39f15288b29dcbe7df23d1fac94bf2405500fac70c3
|