Show exactly where every
AI answer came from.

One API call takes your document, the question, and the answer your AI gave — and highlights exactly the tokens behind each part of it.

Your documentnorthwind_msa.txt

Northwind Cloud — Master Service Agreement

§8.1 Cure period

A party in breach of any material term has thirty (30) days from written notice to cure the breach.

§11.3 Termination for convenience

Either party may terminate this Agreement on thirty (30) days written notice to the other party.

Your AI's answer

How long do we get to fix a breach, and how much notice to walk away?

You have thirty (30) days to cure a breach, and terminating also takes thirty (30) days notice.

Both claims read “thirty (30) days”. Each one came from a different clause.
any model
OpenAI, Anthropic, or your own
one API call
after the answer — nothing else changes
$1 / 1M tokens
pay as you go, 10M free to start

What people build with it

Every highlight below is real output from the API, with the confidence it returned. Hover any highlighted phrase to see what it resolved to.

Most common

Chat with your documents

Ask a question about a contract, a filing, or a policy. Every fact in the answer links to the exact tokens it came from, so a person can check it in a second instead of reading forty pages.

Try it on a real contract

What uptime does the enterprise tier get?

Enterprise is held to 99.99% monthly uptime.

Is that support available at weekends?

Yes — enterprise cover runs seven days a week.

Northwind Cloud — Service Level Schedule

§4.1 Availability and support

TierMonthly uptimeSupport hours
Standard99.5%Business hours
Pro99.9%24 x 5
Enterprise99.99%24 x 7

§4.2 Service credits. If monthly uptime falls below the committed target, the Customer accrues credits equal to 10% of the monthly fee.

page 12 of 41

“seven days a week” lands on the 7, in a cell that reads 24 x 7.

Support and internal help bots

Your bot answers from your own help center or wiki. Show the exact tokens it used, so your team can trust the answer and your customers can see where it came from.

See a grounded chat

Can I get a refund 40 days in?

Not on a one-off purchase — that only covers the first month. On an annual plan you get back the unused part, returned to the card you originally paid with.

help-center/billing.md

One-off purchases can be refunded within 30 days of purchase. Annual plans are prorated to the day on cancellation. Refunds are issued to the original payment method.

“the first month” lands on “30 days”. Not a word in common.

Search and research tools

Right now your citation points at a whole page and the reader has to go hunting. Point it at the exact tokens instead.

See web search with citations

What happens if I go over the rate limit on the free tier?

Short spikes to double the per-minute rate are tolerated for ten seconds; past that the limiter starts refusing calls.

docs.example.com

Rate limits and quotas

Free tier. Each API key may issue 1,000 requests per minute. Bursts of up to 2,000 requests are permitted for 10 seconds before the limiter rejects further calls with HTTP 429.

status.example.com

API availability history

forum.example.com

Hitting 429s on the free tier

Words on one side, a numeral on the other.
Integration

One endpoint. No SDK to install.

Send the document, the question, the answer, and which parts of the answer you want sourced. You get back the exact tokens behind each one and how confident the match is — enough to highlight it, cite it, or log it in a few lines. Want the raw token-by-token map instead? That's /v1/attributions/heatmap. Rate limits, usage metering, and key management come with the platform.

# one call — the source behind each part of the answer
curl https://api.tokenpath.ai/v1/attributions \
  -H "Authorization: Bearer $TOKENPATH_API_KEY" \
  -d '{
    "document": "In Q3, Northwind's revenue grew 18%…",
    "question": "How fast did revenue grow?",
    "answer": "Revenue grew 18% year over year.",
    "spans": [[13, 16]]   # the part you want sourced: "18%"
  }'
# where in the document it came from
{ "spans": [{
  "answer": { "start": 13, "end": 16, "text": "18%" },
  "source": {
    "start": 32, "end": 35, "text": "18%",
    "confidence": 0.82   # how sure we are of the match
  }
}] }

Under the hood, TokenPath measures attention over your document and rolls it up into spans — no prompting, no second answer to generate. The method, with real attention maps, is in How TokenPath works.

Why not just ask the model to cite itself?
You can. Here's where it breaks.

model.cite()

Ask the model

Have the LLM footnote itself. Straightforward, no extra infrastructure.

Too coarse. Points at a few numbered sources at best — never the exact tokens inside a long document, so the reader still has to go hunting.

retrieve + rerank

Retrieve and re-rank

Pull the relevant chunks and re-rank them with an embedding model — the standard RAG path, and it scales.

Confuses duplicates. When the same fact, number, or date appears in two places, it can't tell which one the answer used — common in tables and financial docs.

tokenpath

Measure the attention

Run the document and the answer through an attribution model and read which tokens the answer leaned on. Nothing to prompt, nothing to trust.

Exact. Lands on the exact tokens — the right cell, the right clause — down to the character.

Never confused. Points at the specific occurrence the answer used, even when the same value appears a dozen times.

Fast. One extra read of the document — no second answer to generate, no reranker round-trips. A 20,000-token document (roughly 30 pages) comes back in under two seconds, and it scales to 128k tokens.

Benchmark · LongBench-Cite

Frontier-grade citations, without the frontier bill.

On LongBench-Cite — one shared answer, one judge — reading attention post-hoc scores 0.815 F1: it matches Anthropic's Citations API (0.812) and lands within 0.04 of a prompted frontier LLM (0.851), while doing it ~7× cheaper and ~5–6× faster— on any model's answer, without regenerating it.

Read the full benchmark
Citation F1 · reported avg, 480 test examples
gpt-5.5 prompted0.851
TokenPath0.815
Anthropic Citations0.812
emb + rerank0.622
~7× cheaper
cost / query · $0.013 vs ~$0.09
~5–6× faster
p50 latency · 1.6 s vs ~8–10 s

Start with 10 million free tokens.

No card required, no monthly minimum. One endpoint, any model, a dollar per million tokens after that. Why we're building this.

Book a call

Talk to us

15–30 min — bring your stack, we'll show you attribution on your own docs.

Meet with