SDK

Stamp and verify in a few lines of code.

Add proof of origin to your pipeline with one import. Python and TypeScript SDKs — no ML dependencies, no models to host.

What the SDK does

Three calls. Stamp, verify, detect.

A thin client over one API — stamp at the source, verify anywhere, and fall back to detection when nothing's on record.

01

Stamp at generation

Call stamp() the moment you generate. It fingerprints the content and writes a signed proof to the public registry — under 50ms, in the background.

02

Verify anywhere

Call verify() on any content to match it against the registry and get the full provenance chain back — even after screenshots, cropping, and re-encoding.

03

Detect as the fallback

No registry match? analyze() returns a calibrated AI-detection score — clearly an estimate, not proof. No models to download, no ML deps.

< 1MBinstalled — no models to download
< 50msto stamp, in the background
2 SDKsPython on PyPI · TypeScript on npm
60 / minfree tier — verifying is always free
Quickstart

From install to first proof.

Generate a key in the dashboard, install the SDK, and you're three calls from a verifiable proof of origin.

00

Install

1pip install 0byte
01

Stamp at generation

If you build an AI platform, call stamp() right after you generate. It signs a proof of origin and writes it to the registry.

1from zerobyte import Client 2 3client = Client(api_key="0b_key_...") 4 5# Stamp content the moment it's generated 6proof = client.stamp( 7 content=image_bytes, 8 content_type="image/png", 9 provider="acme", 10 model="imagen-3", 11) 12 13print(proof.id) # "0b_proof_abc123" 14print(proof.verify_url) # https://0byte.tech/proof/0b_proof_abc123
02

Verify anywhere

Check whether any content is on record and recover its origin — resilient to screenshots, compression, and re-encoding.

1# Verify any content against the public registry 2result = client.verify(content=some_image_bytes) 3 4print(result.matched) # True / False 5print(result.confidence) # fingerprint similarity score 6print(result.proof) # full provenance chain if matched
03

Detect as the fallback

When nothing matches the registry, analyze() returns a calibrated AI-detection score — an estimate, never proof.

1# No registry match? Fall back to AI detection 2result = client.analyze(content=image_bytes) 3 4print(result.verdict) # "ai_generated" | "likely_real" | "uncertain" 5print(result.ai_probability) # 0.97 — a calibrated estimate, not proof

Full API reference and cURL examples live in the documentation.

Get started

Stamp your first proof in five minutes.

Free to verify, no account needed. Python and TypeScript SDKs on PyPI and npm.