{"api":"news","description":"Multi-source, agent-ready news: newest headlines, keyword search, and a sentiment timeline over a deduped rolling corpus refreshed every 15 minutes.","refresh":{"cadence":"every 15 minutes","window_hours":72,"searchable_hours":50.7,"updated_at":"2026-08-05T20:53:47.406Z"},"sources":[{"source":"gdelt","feed":"GDELT DOC 2.0","description":"Global topic queries across worldwide media; carries per-article sentiment (tone). Topics rotate on a wheel, so the full set is covered about hourly rather than every run."},{"source":"hn","feed":"Hacker News","description":"Top stories from the Hacker News front page (technology)."},{"source":"rss","feed":"Major RSS","description":"~75 curated keyless feeds: wires and majors (BBC, NPR, Al Jazeera, Guardian, WSJ), trade press (TechCrunch, CoinDesk, The Block, BleepingComputer), primary sources (arXiv cs.AI/cs.LG, CISA advisories, PR Newswire, GlobeNewswire), and non-English majors (Le Monde, El País, Der Spiegel)."},{"source":"gnews","feed":"Google News RSS","description":"Topic-search RSS for breadth on specific tech/crypto/AI terms."},{"source":"sitemap","feed":"News sitemaps","description":"Google-News XML sitemaps from major outlets (Guardian, AP, Reuters, BBC, …) — hundreds of recent articles per outlet with exact publish times."}],"coverage":{"total":5000,"per_source":{"gdelt":{"count":2177,"ok":true,"last_error":"fetch failed"},"hn":{"count":54,"ok":true},"rss":{"count":841,"ok":true,"last_error":"PR Newswire: 404"},"gnews":{"count":725,"ok":true},"sitemap":{"count":1203,"ok":true}},"categories":{"health":384,"sports":585,"crypto":69,"world":1929,"energy":172,"climate":442,"technology":503,"business":1280,"ai":72,"science":193,"markets":646,"nft":9,"politics":871},"archive":{"total_articles":132750,"days":7,"first_day":"2026-07-30","last_day":"2026-08-05"}},"limitation":"Snapshot search over the served window — currently 50.7h of ingested headlines (5000 articles, oldest 2026-08-03T18:08:21.000Z) from multiple public sources. The window keeps the newest articles up to a fixed cap, so its depth varies with news volume and is usually well short of the 72h retention policy. NOT live web search; freshness = last refresh (updated_at echoed).","paidEndpoints":["/news/headlines","/news/ai","/news/crypto","/news/search","/news/timeline"],"freshness":{"as_of":"2026-08-05T20:53:47.406Z","window_hours":72,"source_count":5,"coverage":{"oldest_published":"2026-08-03T18:08:21.000Z","newest_published":"2026-08-05T20:52:28.000Z","hours":50.7,"articles":5000}}}