← Developers

Evidence Verification

Verifying a signature and exporting evidence today, both live; offline verification independent of PayReality's systems, planned.

Signature verification (live)

Every Decision produces a signed Evidence record. Verifying its signature today is an API call, and also a one-click action in the Evidence Portal's UI:

cURL
curl -X POST https://api.aisecurewatch.com/v1/evidence/{evidence_id}/verify \
  -H "Authorization: Bearer <token>"
response
{ "valid": true }

A tampered or corrupted record returns { "valid": false } rather than an error -- verification is a check, not an operation that can fail for unrelated reasons.

Evidence export (live)

Search and export evidence from the Evidence Portal scoped to exactly what a specific review needs -- by agent, outcome, policy, or time range -- rather than granting an auditor broad access to the underlying platform.

Audit workflows (live)

Every field an audit typically needs -- the agent, the Principal it acted for, the policy version evaluated, the outcome, and the timestamp -- is present on the record itself and searchable in the portal, so an audit doesn't require reconstructing context from application logs elsewhere.

Evidence bundles and offline verification ROADMAP

Today, verifying a record means calling PayReality's own /verify endpoint -- accurate, but it means the verifier is trusting PayReality's systems to be reachable and honest at the moment they check. The planned evolution is an exportable bundle -- a receipt plus its Merkle inclusion proof plus enough of the key-transparency record to verify entirely offline, without a network call back to PayReality at all. See Authorization Receipts for the receipt format this depends on, and a verification SDK is the natural companion to that -- also planned, not started.