no key · no human
HomeAPI documentationResponse fields

Response fields

What every field means, how reliable it is, and where it came from. Coverage percentages are measured against the live corpus, not estimated.

FieldTypeCoverageMeaning
idstring100% Stable identifier, the MD5 of the URL. Same article, same id, forever.
urlstring100% Canonical article URL at the publisher. Always present — attribute back to it.
titlestring100% Headline, taken from the article markup rather than the page title where possible.
descriptionstring98% Standfirst or summary, from JSON-LD, og:description or the meta description, in that order of preference.
textstring100% Full article body, boilerplate stripped. Only returned with full_text=true. Typically 2,000–4,000 characters.
published_atISO 8601 UTC100% Publication time. Exact to the minute for 84% of articles; the rest fall back to the crawl date. See date_source.
date_sourceenum100% Where the date came from: jsonld, meta, extracted, crawled or crawled_clamped.
crawled_atISO 8601 UTC100% When the page was crawled into our sources. Never backdated, so it is the honest field to sort by when polling for new material.
hoststring100% Hostname from the URL, lowercase, including any www. prefix.
sitenamestring91% Publication name as the publisher states it, e.g. The Guardian.
countryISO 3166-1 alpha-285% Publisher country, inferred. Read country_source before trusting it.
country_sourceenum100% How the country was determined. See the table below.
langISO 639-199.9% Article language as the publisher declares it. Wrong on multilingual sites that serve every edition under one locale — see quality.
tldstring100% Top-level domain without the dot. A fact, unlike country.
authorstring46% Byline where the publisher marks one up. Frequently absent or an agency name.
categoriesstring[]38% Publisher's own section labels. Not normalised across publishers — treat as a hint, not a taxonomy.
imagestring88% Lead image URL, from og:image or JSON-LD. Hotlinks to the publisher.
scorefloat Relevance score. Present only with sort=relevance. Comparable within one response, meaningless across responses.
highlightobject Matched fragments with <em> tags. Present only with highlight=true.

country_source — how much to trust the country

No competitor publishes this. We do, because roughly a third of the values are inferences rather than facts, and an agent building an analysis on top deserves to know which is which.

ValueReliabilityHow it was derived
cctldhigh Country-code top-level domain: .ua → UA. Essentially always right.
publisherhigh The publisher's own addressCountry in JSON-LD organisation markup.
og_localegood Region subtag of og:locale, e.g. pt_BR → BR.
html_langgood Region subtag of <html lang>, e.g. de-AT → AT.
jsonld_langgood Region subtag of the article's inLanguage.
langweak Guessed from language alone where a language maps to one dominant country.
weak_en_usunreliable en-US shipped as a template default. Common on Indian, Nigerian and Filipino sites. Exclude with strict_country=true.
unknown No usable signal. The country field is absent.

date_source — how much to trust the timestamp

ValueShareMeaning
jsonld86% datePublished from schema.org markup. Exact.
extracted9% Parsed from the page body or URL. Usually exact to the day.
meta4% From an article:published_time meta tag.
crawled<1% No date found; crawl time substituted. Accurate to within hours.
crawled_clamped<1% The publisher declared a future date, so it was clamped to crawl time. Without this, one mislabelled article would sit at the top of every date-sorted query.