case study·legal · contracts

Pulling clauses from messy PDFs without a paralegal in the loop.

A mid-market legal-tech company was using AI to extract indemnity, termination, and payment clauses from incoming contracts. The AI was 92% right. The 8% it got wrong cost their customers an average of $40k per missed clause.

98.7%
clause extraction accuracy
Industry: Legal Tech · Contract Review
Volume: 800 contracts / mo · ~22 pages avg
Tier: Volume · Standard tier
Integration: Python SDK · 2 days
the problem

AI confidence isn't legal confidence.

A misextracted indemnity clause can leave a customer liable for damages their counterparty thought were excluded. The AI's confidence score didn't catch all the edge cases — clauses split across pages, footnoted modifications, "notwithstanding the foregoing" rewrites. They needed a human verification layer that didn't bottleneck their throughput.

why awaitverify

A typed clause object, verified before it ships downstream.

On every clause the AI extracted, they call verify_document() with the source page and the AI's draft. A reviewer confirms the bounding box, the exact text, and the clause classification before the typed object flows into the customer's report.

from awaithumans import AwaitHumans

client = AwaitHumans(api_key="ah_sk_live_...")

verified = await client.verify_document(
    task_description="Verify clause type, bounds, and exact text.",
    response_schema=Clause,
    document_path=contract.path,
    prior_extraction=ai_extraction, # reviewer sees AI guess + source
    priority="standard",
)
We could've built a paralegal review tool. We would've spent six months on it. We integrated AwaitVerify in two days and the typed clause objects dropped right into our existing pipeline.
VP Product, mid-market legal tech
outcome

In numbers.

98.7%
clause extraction accuracy (up from 92%)
$0
missed-clause incidents since rollout
+340%
contracts processed per week
2 days
from signup to production