Skip to main content

vericlient

A Python client for the Veridas APIs — voice and face biometrics, without writing the plumbing.

CI Coverage PyPI Python versions Documentation License: MIT

Documentation · Supported endpoints · Error handling · Changelog


Veridas exposes its biometrics products as HTTP APIs, and every integration starts by writing the same client: multipart uploads, per-service error codes, environment and region routing. vericlient is that client, so you can get to the part that is actually yours.

  • Typed in and out. Every request and response is a pydantic model, so a malformed call fails where you made it, not three layers down.
  • Errors you can catch. API failures arrive as specific exceptions — NetSpeechDurationIsNotEnoughError, not a 400 and a string to parse.
  • Cloud or self-hosted. Sandbox and production, EU and US, or your own deployment.
  • Three runtime dependencies, all of them ones you probably already have.

API support

API Status Coverage
das-Peak — voice biometrics 🟢 11 / 11 endpoints
VCSP — managed credential storage 🟠 10 / 31 endpoints
das-Face — face biometrics 🔴 not started

Endpoint by endpoint in Supported endpoints.

Install

pip install vericlient

Python 3.11 or newer.

Quickstart

from vericlient import DaspeakClient
from vericlient.daspeak.models import CompareCredential2AudioInput, GenerateCredentialInput

client = DaspeakClient(apikey="your_api_key")

# A credential is the biometric representation of a voice.
model = client.get_models().models[-1]
credential = client.generate_credential(
    GenerateCredentialInput(audio="/path/to/enrolment.wav", hash=model),
).credential

# Compare a new recording against it.
result = client.compare(
    CompareCredential2AudioInput(
        credential_reference=credential,
        audio_to_evaluate="/path/to/verification.wav",
    ),
)
print(f"Similarity: {result.score}")

Audio can be a path or a bytes object, so nothing has to touch the filesystem.

Point the client somewhere else with environment, location, or a url for a self-hosted deployment:

DaspeakClient(apikey="your_api_key", environment="production", location="us")
DaspeakClient(url="https://veridas.internal.example.com")

Configuration

Every setting can be passed to the constructor or read from an environment variable. The constructor argument wins, the environment fills in what you left out, and the library falls back to its own default.

Variable Sets Default
VERICLIENT_APIKEY The API key used against the Veridas cloud none
VERICLIENT_ENVIRONMENT sandbox or production sandbox
VERICLIENT_LOCATION eu or us eu
VERICLIENT_URL A self-hosted URL, which replaces the cloud entirely none
VERICLIENT_TIMEOUT The request timeout in seconds 10

Contributing

Issues and pull requests are welcome. The project uses PDM:

pdm install --dev
pdm run lint && pdm run format-check && pdm run test

Tests run against mocks by default. To exercise a real environment, set VERICLIENT_APIKEY and run SERVICE=daspeak pdm run test-eu-sandbox.

Licence

MIT.

Release files for vericlient 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for vericlient 0.2.0
File Size Uploaded
vericlient-0.2.0.tar.gz 34.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for vericlient 0.2.0
File Interpreter ABI Platform
vericlient-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 58.2 kB

Release files / vericlient-0.2.0.tar.gz

Download URL vericlient-0.2.0.tar.gz
Size 34.1 kB
Tags Source
SHA-256 checksum
How to use checksums
8195723c61f57a3143ffc0076983226fd9421b47960d75bd89acf454e024ab8e
BLAKE2b-256 checksum
How to use checksums
4bdfb843fd70a201340bbc17a4b1413b60afbe658002cd895150defeb716021f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release files / vericlient-0.2.0-py3-none-any.whl

Download URL vericlient-0.2.0-py3-none-any.whl
Size 24.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
1d08134fd4f2e1a42fe47550dc56708ca5702d448a121ece647c6114d3fc67da
BLAKE2b-256 checksum
How to use checksums
12d4b988bc4369fe01911ec4cc69f7263fe86ae46daf0a807d09711e281a75c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 21, 2026.

Transparency log

Release history Release notifications | RSS feed

0.5.0

2 release files

0.4.0

2 release files

0.3.0

2 release files

This release

0.2.0 This release

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page