APITube Help Center

How to fact-check a claim or article

Verify a statement, raw article text, or a stored article against APITube's live news corpus and get per-claim verdicts with evidence

Beatrice Riddick

Written by Beatrice Riddick

July 3, 2026

Open this example in the API Playground ↗

How to fact-check a claim or article

To fact-check a claim or article, send it to the /v1/fact-check endpoint with one of three inputs — a single claim, raw article text, or an article id already in the corpus. The endpoint pulls real, recent articles that match each claim, grounds its answer in them (retrieval-augmented fact-checking), and returns a verdict on an 8-level scale with a confidence score, a short explanation, and the evidence articles behind it. It never answers from a model’s memory alone.

curl "https://api.apitube.io/v1/fact-check?claim=OpenAI released GPT-5 in 2024" \
  -H "X-API-Key: YOUR_API_KEY"

Both GET and POST work and take the same parameters (query string for GET, JSON body for POST). Authenticate with an X-API-Key header, the api_key query parameter, or an Authorization: Bearer YOUR_API_KEY header. If you don’t have a key yet, see where to find and create your API key.

What does /v1/fact-check return?

The endpoint returns a summary plus a claims array. Each claim gets a verdict on this 8-level scale, a confidence value from 0 to 1, an as_of date (YYYY-MM-DD), a plain-language explanation, and its evidence:

true · mostly_true · mixed · misleading · mostly_false · false · unverified · outdated

unverified means the corpus held too little evidence to confirm or refute the claim; outdated means the claim was once true but newer evidence contradicts it. The summary rolls this up into an overall_verdict, an overall_confidence, and a verdict_breakdown (a count per verdict). Every item in evidence carries the source article_id, title, url, source domain, source_authority, published_at, a snippet, a stance (supports, refutes, or neutral), and a relevance score from 0 to 1.

How do you check a single statement?

Pass one factual statement in claim (5–500 characters). In this mode your statement is used directly (no automatic claim extraction):

curl "https://api.apitube.io/v1/fact-check?claim=The Eiffel Tower is in Paris" \
  -H "X-API-Key: YOUR_API_KEY"

A claim shorter than 5 or longer than 500 characters returns HTTP 400. The claim parameter expects a single, self-contained assertion — to check a whole paragraph or article, use text or id instead so the claims are extracted for you.

How do you fact-check a full article or a stored one?

For longer input use POST and send either text or id. With text (100–10000 characters, title plus body), APITube extracts the individual claims for you and checks each one. With id it loads that article straight from the corpus and does the same — handy when you already retrieved the article and have its numeric id from getting a single article by ID.

# Fact-check an article already in the corpus by its id
curl -X POST "https://api.apitube.io/v1/fact-check" \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "id": 123456789, "max_claims": 5 }'

If you send more than one input, priority is id > text > claim. Two optional caps tune the work: max_claims (how many claims to extract and verify, up to 5) and evidence_per_claim (how many evidence articles to pull per claim, default 5). Both are clamped server-side, so a larger value is silently reduced rather than rejected.

How does APITube decide each verdict?

For every claim, APITube searches the live news corpus for articles whose titles match the claim, ranks the candidates by source authority — the same OPR (Open Page Rank) score exposed as source_authority — and then by recency, and judges the claim strictly against that evidence. Because the verdict is tied to what’s actually published, more authoritative and more recent coverage carries more weight. When no matching articles exist in the corpus, the claim comes back as unverified rather than a guess — a signal to widen the wording or wait for coverage to appear.

What does fact-checking cost and who can use it?

Fact Check is a paid feature and is not available on the Free plan — a Free-plan key returns HTTP 403 with code ER0706. Each request costs 5 points, and that charge only applies when the request returns at least one claim (see how requests and credits work). The endpoint also has its own rate limit of 10 requests per minute, separate from and stricter than the global API limit, because every request runs language-model inference. If you’re weighing which plan unlocks it, see which plan is right for me. The full parameter and response reference lives in the Fact Check documentation.

Common Questions

Which input should I use: claim, text or id?

Use claim to verify one short statement directly, text to check a full article you have in hand (100–10000 characters), and id to check an article already in APITube’s corpus. If more than one is present, the endpoint uses id first, then text, then claim. All three cost the same 5 points per request.

Why did I get an unverified verdict?

unverified means APITube found no supporting or refuting articles in the news corpus for that claim. Evidence is matched against article titles, so very general, misspelled, or brand-new claims often return nothing. Rephrase the claim with the specific names, places, or dates that a headline would use, then try again.

Why is my fact-check request returning 403?

A 403 with code ER0706 means the key is on the Free plan, where Fact Check is disabled — upgrade to a paid plan to enable it. A 403 can also mean the key is scoped to specific endpoints and lacks the fact_check permission; see how to limit a key to specific endpoints to add it.

How many claims does one request check?

Up to 5. For text and id inputs, APITube extracts claims automatically and verifies each, bounded by max_claims (maximum 5). A single claim input is always one claim. Each verified claim gets its own verdict, confidence, explanation, and evidence list in the claims array.


Related Articles