Skip to content
Documentation/Sources & citations

Get a citation

Retrieve a saved verification record by its ID.

Markdown
GET/api/v1/citations/{id}https://api.webcite.co

When to use it

Use a saved citation record ID returned by the API. A citation record ID and a source URL identify different things.

Stored identity and conclusions

Production rollout verified on 24 September 2026: the hosted API includes evidence policy 13 and the hosted MCP connector runs 1.9.0. This does not publish or upgrade the npm package installed by local clients. Inspect response metadata and the installed client version; saved responses retain their original policy and evidence time.

The saved data record exposes id, thread_id, created_at, and metadata when available. Read metadata.final_response for a retained conclusion. An absent legacy conclusion remains unavailable; do not regenerate one while displaying history. See response structure for historical array/object compatibility and MCP parsing.

Request

1 credit.

Examples run on your server. Set WEBCITE_API_KEY first. Python examples use the requests package.

curl
curl --fail-with-body -X GET 'https://api.webcite.co/api/v1/citations/YOUR_ID' \
  -H "x-api-key: $WEBCITE_API_KEY"

Path and query parameters

id (path)stringrequired

Citation ID

No request body is required.

Response

Returns the saved record and its available view data. A missing record returns 404.

200 response

application/json

dataobjectrequired

Citation data

Show data fields
citationobjectrequired

Citation data (JSON string or array of CitationObject)

Show citation fields
Variant 1
Variant 2

Array of results:

authorstringrequired

Author or domain name

credibility_basisstring

Whether credibility_score rests on an actual measurement ('measured') or is a placeholder because no check has run yet ('unknown', e.g. no grounding signal or the citation has not been analysed). Absent means the same as "measured" for citations produced before this field existed.

Values: "measured""heuristic""unknown"

credibility_scorenumberrequired

Credibility/relevance score from 1-100 (higher = more credible/relevant/authoritative)

evidenceobject

Publisher evidence receipt v1: state, originalUrl, finalUrl, contentHash, retrievedAt, quoteMatch, typed publisher dates, retention, replayable and failureReason. Missing on legacy records means unknown provenance.

group_idstring

Group ID for citations from the same domain

highlight_rangesstring[]

Character ranges [start, end] in snippet that are most relevant to the claim

idstringrequired

Unique citation identifier

is_group_primaryboolean

Whether this is the primary (highest-ranked) citation from its domain group

publication_yearnumber

Publication year of the cited source

ranknumberrequired

Sequential rank (1, 2, 3...) where rank 1 is the highest/best citation, based on credibility_score and verified status

ranking_factorsobject

Breakdown of how the ranking score was calculated

Show ranking_factors fields
content_relevancenumberrequired

How well the content matches the claim being verified (0-100).

recencynumberrequired

Publication freshness score (0-100). Current year = 100, decreases with age.

source_authoritynumberrequired

Domain reputation score (0-100). Higher scores for government, academic, major news sources.

snippetstringrequired

Relevant excerpt from the source

source_metadataobject

Additional metadata about the source

Show source_metadata fields
domainstringrequired

Extracted domain from URL

domain_categorystringrequired

Category of the source domain

Values: "government""academic""news""organization""encyclopedia""social""other"

is_fact_check_sitebooleanrequired

Whether this is a fact-checking website (snopes, politifact, etc.)

is_primary_sourcebooleanrequired

Whether this is a primary source (government, official, press release)

source_typestring

Source type: Government Document, Dataset, Journal, Report, Trusted Media, Article, Reddit, Social Media

Values: "Government Document""Dataset""Journal""Report""Trusted Media""Article""Reddit""Social Media"

stancestring

Whether this citation supports or contradicts the claim (only with useEnhancedAnalysis)

Values: "supports""contradicts""partially_supports""neutral""inconclusive"

stance_confidencenumber

Confidence in the stance assessment (0-100)

stance_explanationstring

Brief explanation of the stance determination

statusstringrequired

Verification status of the citation

titlestringrequired

Title of the cited source

urlstringrequired

URL of the cited source

created_atstring

Original record time

generated_promptsstring[]

Array of generated sub-prompts when useMultiplePrompt was enabled

idstring

Stored citation identifier

metadataobject

Historical metadata. final_response preserves the final result under evidence_policy_version 9; absent for legacy records.

promptstringrequired

The original prompt that generated this citation

thread_idstring

Stored thread identifier, when present

messagestringrequired

Response message

statusCodenumberrequired

HTTP status code

Errors

For 400, check the request fields and source identifiers. For 401, check your API key. For 429, wait for the retry interval. See the errors guide before retrying a billable request.

401
Unauthorized - API key required
404
Citation not found
Error handling and retry guidance