Live · v0.3 · 100% open spec · 5 reference verifiers

Proof that a human approved the AI output.

HumanAccepted creates a signed receipt for every piece of AI-generated work a human reviews. The receipt captures who approved what, which model produced it, and when — and anyone can verify it offline. Built for the audit trails you already need to produce.

What the receipt proves

Every approval, fully documented.

Six things an auditor, regulator, or future-you can read from a single receipt. No spreadsheets, no screenshots, no Slack threads.

01

What the AI drafted

The original AI output, captured at the moment of approval. Untouched.

02

What the human approved

The final version that went out. Hashed, so you can prove the receipt matches the text.

03

Who approved it

Reviewer identity, SSO session, and how they authenticated.

04

What changed

The diff is recoverable from the two hashes — every word, verified.

05

Model, tools, policy

Which AI system produced the draft, which tools ran, which policy was active at the time.

06

Signed and verifiable

Two cryptographic signatures. Verify offline, with no API call and no trust in us.

An example Human Acceptance Receipt — that's the receipt type, produced by HumanAccepted. The text on the receipt is part of the format spec, not a marketing tagline.

Human Acceptance Receipt
2026-06-09 · 16:30 UTC
Verified · 2 of 2 signatures valid

Customer reactivation email

Hi Ola — three reasons to renew

AI draft untouched

This is the AI-generated draft of a marketing email. It opens with a hook and proposes three product benefits. The human reviewer should edit, approve, or reject before this goes to the customer.

Final · human-edited approved

Hi Ola, I noticed you haven't renewed your plan — here are the three reasons other customers like you renewed this month: 1. You saved 14 hours/week on invoicing 2. The new analytics dashboard shipped 2 days ago 3. Annual plans now include 5 seats free Let me know if you want to talk it through. — The Acme team

Receipt ID
rcp_01HXY3K8M2Q9F4W7TA5V6BPE0N
Issued
2026-06-09T16:30:00.000Z
Human
Ola Turmo · olav@my.co
Auth
Cloudflare Access SSO · session sess_…a3f
Model
openai / gpt-5.5
Tools
gpt-5.5, spam-check-v2
Policy
p_2026.06 (limited_risk)
AI draft
sha256:6caa03…6778ef78
Final output
sha256:5d0775…cc63f06b

Three adoption surfaces

Add signed human-approval receipts to your AI workflows in one afternoon.

Try it

Fire a real receipt in 10 seconds.

No API key. No signup. The receipt is signed and stored on the live preview. You'll get back a real signed receipt you can verify on this page.

Heads up — this is a public demo. Anything you submit below (purpose, draft, final text) is stored in a public, signed, verifiable receipt on the live preview tenant. Don't put customer names, secrets, PII, or anything you wouldn't want the world to read. The receipt never goes away, even after this page is closed.
No signup. Receipts are public and signed.

    

Curl

One call. One signed receipt.

bash
curl -X POST https://humanaccepted.ola-turmo.workers.dev/v1/accept \
  -H "Authorization: Bearer $HUMANACCEPTED_KEY" \
  -H "Idempotency-Key: 1d4e6f8c-... (your uuid, optional)" \
  -H "Content-Type: application/json" \
  -d '{
    "human":  { "id": "u_olav", "email": "olav@my.co" },
    "ai":     { "provider": "openai", "model": "gpt-5.5",
                "draft": "This is the AI draft..." },
    "output": { "final": "This is the final, edited version." },
    "context": {
      "purpose": "marketing-email-draft",
      "ai_act_class": "limited_risk",
      "tools_used": ["gpt-5.5"],
      "policy_version": "p_2026.06"
    }
  }'

# 201 Created
# { "id": "rcp_…", "version": 1, "issued_at": "...",
#   "tenant": {...}, "human": {...}, "ai": {...}, "output": {...},
#   "context": {...},
#   "signatures": { "tenant_ed25519": "ed25519:…",
#                   "cf_attestation": null } }

Idempotency: POST /v1/accept accepts the Idempotency-Key header (Stripe-style, 24h TTL). Same key + same body = return the original receipt. Same key + different body = 422 idempotency_key_mismatch. Same key + in-flight = 409. All other 4xx/5xx responses are not cached — the client can retry with the same key.

Built for AI oversight evidence

Built for AI oversight evidence.

HumanAccepted is not a full compliance platform. It is the evidence layer your AI workflows plug into to prove review, approval, logging, and traceability. Pair it with your own policy, risk, and consent systems — the receipt is the cryptographic anchor that ties the human's approval to the exact AI output, at a verifiable time.

Why this matters: regulators are starting to require evidence that a human reviewed AI output (EU AI Act Art. 14 on human oversight, Art. 12 on logging; ISO/IEC 42001 on AI management; SOC 2 on change control). A signed receipt is the smallest unit of evidence that satisfies all three — and it travels with the AI output, not with your vendor.