Skip to main content

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


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.0.tar.gz (64.8 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

kanoniv-0.2.0-cp314-cp314-manylinux_2_34_x86_64.whl (486.0 kB view details)

Uploaded CPython 3.14manylinux: glibc 2.34+ x86-64

kanoniv-0.2.0-cp313-cp313-manylinux_2_34_x86_64.whl (486.0 kB view details)

Uploaded CPython 3.13manylinux: glibc 2.34+ x86-64

kanoniv-0.2.0-cp312-cp312-win_amd64.whl (327.0 kB view details)

Uploaded CPython 3.12Windows x86-64

kanoniv-0.2.0-cp312-cp312-manylinux_2_34_x86_64.whl (486.1 kB view details)

Uploaded CPython 3.12manylinux: glibc 2.34+ x86-64

kanoniv-0.2.0-cp312-cp312-macosx_11_0_arm64.whl (422.5 kB view details)

Uploaded CPython 3.12macOS 11.0+ ARM64

kanoniv-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl (434.5 kB view details)

Uploaded CPython 3.12macOS 10.12+ x86-64

kanoniv-0.2.0-cp311-cp311-manylinux_2_34_x86_64.whl (486.7 kB view details)

Uploaded CPython 3.11manylinux: glibc 2.34+ x86-64

kanoniv-0.2.0-cp310-cp310-manylinux_2_34_x86_64.whl (486.8 kB view details)

Uploaded CPython 3.10manylinux: glibc 2.34+ x86-64

kanoniv-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (481.7 kB view details)

Uploaded CPython 3.8manylinux: glibc 2.17+ x86-64

File details

Details for the file kanoniv-0.2.0.tar.gz.

File metadata

  • Download URL: kanoniv-0.2.0.tar.gz
  • Upload date:
  • Size: 64.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for kanoniv-0.2.0.tar.gz
Algorithm Hash digest
SHA256 969cabae85329e2cc7bcc7d748ba07baee52ce65d9f22199d9876615062471dd
MD5 e565d4c0600ce7c57826c49d0f7de2e8
BLAKE2b-256 f5e4b691c852c9b4d44bdc5531f4cf830a3aea3769f0c8f372c6cb567f1bb7d2

See more details on using hashes here.

Provenance

The following attestation bundles were made for kanoniv-0.2.0.tar.gz:

Publisher: release.yml on kanoniv/kanoniv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file kanoniv-0.2.0-cp314-cp314-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for kanoniv-0.2.0-cp314-cp314-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 1c8c19d552808feed8740178e4f829b68d6b33cc379e1dcf31c1acaf69f1256c
MD5 3f662293e16587faaa056e61554cc587
BLAKE2b-256 4bf3cd379ba983687b59f6321a6733cf902e4ef83500e6b1a72a9d4f33d2a985

See more details on using hashes here.

File details

Details for the file kanoniv-0.2.0-cp313-cp313-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for kanoniv-0.2.0-cp313-cp313-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 a8febe8952b0525de47939b2dcf9758cb8417f2b60ff23366dcb46d23e1c4fa8
MD5 3866ce9546da65bbbe7fd8fcbf18a9f3
BLAKE2b-256 dc55f45f84435c7862e8fd4c7f66fdc30b9524f95c11e316a42edf031b986a6b

See more details on using hashes here.

File details

Details for the file kanoniv-0.2.0-cp312-cp312-win_amd64.whl.

File metadata

  • Download URL: kanoniv-0.2.0-cp312-cp312-win_amd64.whl
  • Upload date:
  • Size: 327.0 kB
  • Tags: CPython 3.12, Windows x86-64
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for kanoniv-0.2.0-cp312-cp312-win_amd64.whl
Algorithm Hash digest
SHA256 72ef021f428720c2a3a7f122d8ff90a4e5562df4c81ed585f64d7676a8569c7a
MD5 14999d36760155906a4339186e95d625
BLAKE2b-256 508e0808f8a73d284ea0c6926793d543ef793132ddbeb72ee111f176894415e4

See more details on using hashes here.

Provenance

The following attestation bundles were made for kanoniv-0.2.0-cp312-cp312-win_amd64.whl:

Publisher: release.yml on kanoniv/kanoniv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file kanoniv-0.2.0-cp312-cp312-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for kanoniv-0.2.0-cp312-cp312-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 fcab80972a8bf2c8940d45808ced6e7c43af79971bf504c8c723f108c2f00ab8
MD5 fefc4b268f031a249765933f4a914eb2
BLAKE2b-256 fc86b100ece94444aca123da10dc66216dee0e17d31f0ab1fe693c8fcfc68868

See more details on using hashes here.

File details

Details for the file kanoniv-0.2.0-cp312-cp312-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for kanoniv-0.2.0-cp312-cp312-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 f47a392ca175b0f04908c44ed8f4a9eb824fdb4ae7e85105efa44081f935d2a4
MD5 6c4145698299016f64eea4c3548fb115
BLAKE2b-256 269a3e469c24600d167feb623ac6dd6a6716f4cbba8d06c4cc02c287eba140f7

See more details on using hashes here.

Provenance

The following attestation bundles were made for kanoniv-0.2.0-cp312-cp312-macosx_11_0_arm64.whl:

Publisher: release.yml on kanoniv/kanoniv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file kanoniv-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for kanoniv-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a67114c06baf55b37eff68931076394cc4608821743ebd71b8625d390607e052
MD5 a60f53bc2111a5877d2481574ac6f918
BLAKE2b-256 5cae8553e87813064055258637644b629f57a690512ab7beba748f4e97b9bf3a

See more details on using hashes here.

Provenance

The following attestation bundles were made for kanoniv-0.2.0-cp312-cp312-macosx_10_12_x86_64.whl:

Publisher: release.yml on kanoniv/kanoniv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file kanoniv-0.2.0-cp311-cp311-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for kanoniv-0.2.0-cp311-cp311-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 674f36ca36a0798650ccc8104e706ea6f7b290ab726e7ff1114d5116ad88ff93
MD5 6edf1f81c5fd36793ecc4ee6273548d4
BLAKE2b-256 5807285f9ef5f7aa4f459259ad8dbdb5b4bbdf77ca9305ba316de45a0a8ed4f9

See more details on using hashes here.

File details

Details for the file kanoniv-0.2.0-cp310-cp310-manylinux_2_34_x86_64.whl.

File metadata

File hashes

Hashes for kanoniv-0.2.0-cp310-cp310-manylinux_2_34_x86_64.whl
Algorithm Hash digest
SHA256 c7a6dc6973cf521a2abd85cd4643deebcf2fe3c170969db44773d29fd1999bd0
MD5 df3e1983df62ee68251507a0ca245800
BLAKE2b-256 05f558af3c636faa3ca0f4ce1cb10552876e98618cf06ecc2fd9a7cc78d758d4

See more details on using hashes here.

File details

Details for the file kanoniv-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for kanoniv-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 2b4a6e2e27fa3e4245d699e071ba5d29adc9a98a21ef78199d6f7f9745bf9fe2
MD5 99c049c38fca8a6ca8f7b0374d99de48
BLAKE2b-256 0e1751bca9dcbded6841899d9a72ef7c69af51bee1e8e0380b8e8e00efc90a1b

See more details on using hashes here.

Provenance

The following attestation bundles were made for kanoniv-0.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: release.yml on kanoniv/kanoniv

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page