# Chronatum — API reference

> Verify one-file C2PA audio or a legacy audio + `.poh` pair and manage API keys — a report-only, model-first API documented from the live OpenAPI contract.

The API checks a Chronatum-signed evidence account and its binding to the exact export. It accepts a credentialed audio file by itself or the legacy audio + `.poh` pair. The structured `evidenceReport` is report-only; legacy `classification` and `grade` fields remain compatibility-only behavioral calibration data and must not be rendered as authorship percentages. Your screening policy stays yours. Auth is an API key in the `x-api-key` header.

## The reference

The page renders a full three-pane API reference — endpoint sidebar, operation docs, request/response models with SDK and curl code samples — read live from the deployed OpenAPI spec. Everything is generated from the Chronatum TypeSpec model, so the docs can't drift from the API. API keys stay server-side (keyed routes serve no CORS), so integrate via the SDK or curl rather than in-browser calls.

- [OpenAPI JSON](https://chronatum.com/openapi.json) — the partner-only machine-readable contract
- [API changelog](/developers/changelog) — dated API changes and the change policy

## Use with AI

For your coding agent:

- **Copy full API context** — [llms-full.txt](https://chronatum.com/llms-full.txt): every endpoint + parameters, paste into any agent
- **Copy concise endpoint map** — [llms.txt](https://chronatum.com/llms.txt): a compact routing map
- Or open in Claude / ChatGPT with the prompt: “Read https://chronatum.com/llms-full.txt — the full Chronatum API reference — and help me integrate proof verification into my app.”

## TypeScript SDK

```
npm install @proof-of-human/ts-sdk
```

> **The package is being renamed.** Install @proof-of-human/ts-sdk — that is the published package, currently 2.7.0, and its client export is PoHClient. It is being renamed @chronatum/ts-sdk (client export ChronatumClient), but that scope is not on npm yet, so installing it fails. The wire contract is identical either way: same base URLs, same x-api-key header, same request, response, verdict, and evidence values, so an existing integration needs no change and switching later is one import line.

The reference's version chip mirrors the spec's version, which is stamped from the SDK source in the API model — so the badge and the docs can never disagree. The installable npm release is `@proof-of-human/ts-sdk` 2.7.0.

### The SDK package is moving

The npm package is being renamed `@proof-of-human/ts-sdk` → `@chronatum/ts-sdk` now that Proof of Human is Chronatum. **The wire contract does not change**: the same base URLs, the same `x-api-key` header, the same request and response shapes, the same verdict and evidence-code values. Existing integrations keep working untouched — stay on `@proof-of-human/ts-sdk` until the new scope is published, then switch the package name whenever it suits you.

---

More: [llms.txt](https://chronatum.com/llms.txt) · [sitemap](https://chronatum.com/sitemap.md)
