Blogfoundation
Sugra News: the layer that turns a correct number into a correct decision
A price says what happened, an official series says in what regime. Neither says why. Published coverage, measured volume and public attention are three separate instruments, and the joins with Finance and Macro are where they pay for themselves.

A price tells you what happened. An official series tells you what regime it happened in. Neither tells you why, and “why” is not decoration. It is the part that decides whether you act.
Consider the shape of a real morning. Inflation came in at 332.568 for June against 333.979 in May, so the index came down month over month. That is the official record and it is not in dispute. Now answer the question your CFO actually asks: does that mean the pressure is off, or does it mean one volatile component moved and the argument is still live?
The macro series cannot answer that. It has one job and it does it: it publishes a number with a date. The answer lives in what was written, how much of it was written, and whether anyone outside the trade press noticed.
That is what Sugra News is for, and it is the direction that most often turns a correct number into a correct decision.
Three questions that look like one
“What is the news on this” collapses three separate measurements that come from three different places and disagree in useful ways.
What was published. Individual articles with a title, a timestamp, a source and a link. This is the evidence layer. You can open it, quote it, and put it in front of a person who disagrees with you.
How loud it was. Coverage volume across the global media system, broken out by theme. This is a measurement, not a reading. A story can be everywhere and mean nothing, or barely covered and matter enormously, and volume tells you which conversation you are standing in.
Who noticed. Public attention, which is a completely different signal from press coverage. Journalists write about things nobody reads. The public looks up things nobody wrote about that week. The gap between those two is often the most informative number on the page.
Sugra News covers all three under one key, and deliberately keeps them apart.
Layer one: what was actually published
The curated layer returns articles you can open:
GET /api/v1/news/latest
2026-07-26T05:16:49Z How Japan is putting AI in its cybernetic place
2026-07-26T05:11:42Z US Congressman Ro Khanna backs Mamdani's call...
2026-07-26T05:09:59Z U.S.-Iran Strikes Abate as War Enters Latest Crossroads
Timestamps to the second, 1,424 items live across 42 feeds, refreshed continuously. Nothing here is summarised or scored. If your agent says a headline exists, the headline exists and carries a URL.
Now the part that matters more than the feed itself:
GET /api/v1/news/stats
last_refresh: 2026-07-26T05:25:12Z
total_feeds: 42
active_feeds: ...
items_by_region: global, asia, us, europe, latam, mideast, africa, ...
feeds: per-feed item count and an ok flag
Every feed reports its own health, individually. Any aggregator depends on dozens of upstreams that can go quiet without warning, and a product that only returns you the merged list leaves you unable to tell a slow news day from a source that stopped answering. Your briefing would have a hole exactly where those outlets should have been, and nothing on the page would show it.
That is why feed health is a first-class response here rather than an internal metric. Check it before you trust a briefing built on the feed, and your agent can state its own coverage instead of implying completeness it does not have.
Layer two: how loud, and about what
Volume is a different instrument. The global media stream is processed into events and themes on a rolling window:
GET /api/v1/gdelt/themes/trending
window: 2026-07-26T04:15Z to 05:15Z
total: 50,616 theme mentions
TAX_FNCACT 1,588 3.14%
CRISISLEX_CRISISLEXREC 808 1.60%
EPU_POLICY 776 1.53%
Fifty thousand theme mentions in a single hour, on a window that closes an hour behind live. The companion events endpoint returned 1,864 events for the same hour.
Look at the third row. EPU_POLICY is economic policy uncertainty, and it is a direct bridge into the macro question from earlier. The CPI print is a point. The volume of policy-uncertainty coverage around it is the argument the point landed in. One number tells you where inflation is; the other tells you whether the market is settled about what happens next.
This is the layer people most want to shortcut into a sentiment score, and it is exactly where a score destroys the information. “Policy uncertainty at 1.53% of an hourly theme stream” is a measurement with a denominator you can check. “Sentiment: 0.4” is a number with a methodology you cannot see, attached to a scale nobody agreed on.
Layer three: who actually noticed
Press coverage and public attention are not the same variable, and confusing them is how briefings get written about stories nobody outside the newsroom cared about.
GET /api/v1/news/wikipedia/pageviews/article?article=Inflation
&start_date=2026-07-01&end_date=2026-07-25
25 daily observations
min 396 mean 520 max 599 peak on 2026-07-14
A stable baseline of roughly 520 lookups a day for the concept itself. That baseline is the point. Without it, a spike is just a number; with it, you can say a day ran fifteen percent above normal public curiosity, and you can put a date on it.
The same surface reaches top articles per project and per country. On 2026-07-24 the English project’s most-read real articles were a film release at 565,207 views and a sports figure at 270,930. Neither will appear in a financial news feed, and both tell you what the population was actually thinking about, which is occasionally the thing you needed to know.
Where it compounds: News plus Finance
Here is the join that makes the direction pay for itself.
GET /api/v1/equities/MSFT/news-sentiment
symbol: MSFT
company_name: MICROSOFT CORP
former_names: []
query: "MICROSOFT"
attention: timeline with a per-window value
headlines: title, source, published, url
The important field is company_name, and how it got there. The ticker was resolved through the SEC registrant record, including former names, and only then used to find coverage.
That sounds like plumbing. It is the difference between a working product and a demo. Companies rename themselves, and when they do, half the relevant coverage sits under a name your ticker no longer matches. A naive news search on the current name silently loses that history and returns a confident, incomplete answer. Resolving through the registrant means the entity is the anchor and the string is not, which is the same principle that governs screening: you are not matching text, you are matching a legal entity.
The endpoint’s own note is worth quoting because it does something rare:
Primary NEWS-FLOW sentiment from owned sources, entity-linked via the SEC registrant plus former names. Not social-media buzz; news is editorial and lags retail crowd psychology.
It tells you what the signal is not, and that it is late. Any vendor can sell you a sentiment number. Publishing the fact that editorial coverage trails the crowd it is supposed to measure is the difference between a metric and a metric you can use.
Where it compounds: News plus Macro
The macro pattern is different. Macro releases are scheduled, sparse and authoritative. News is continuous, dense and contested. They answer adjacent halves of one question.
Take the June CPI at 332.568 against May at 333.979. On its own that supports two opposite briefings, and both are defensible from the number alone. Layer the theme stream over it and the ambiguity is at least visible: policy-uncertainty coverage running at 1.53% of an hourly stream is not the profile of a settled question. Layer public attention over that and you learn whether this is a trade-press argument or something the population is tracking.
Three legs, three sources, three timestamps. What you must not do is average them. There is no honest arithmetic that turns a monthly index level, an hourly theme share and a daily pageview count into one number, and any product that offers you that number has thrown away every date in the input.
The composition stays yours. We return each leg with its own provenance and its own clock, and your reduce is the part you can defend.
Where it settles an argument: News plus physical movement
The two joins above add context. This one decides.
Oil moves and the news services give you a reason within the hour. Tension somewhere, a facility somewhere else, a statement from a ministry. Every one of those sentences is compatible with two completely different worlds: a market pricing a risk that has not happened yet, or a market pricing cargo that genuinely stopped moving. The headline cannot tell you which, because both worlds produce the same headline.
Ships can. Transit through a strait is a physical count, and it does not have opinions.
GET /api/v1/commodities/energy/petroleum (Brent, source: eia)
2026-07-03 68.68
2026-07-06 69.56
2026-07-08 76.50
2026-07-13 81.62
2026-07-17 85.01
2026-07-20 86.99
GET /api/v1/maritime/chokepoints/activity?chokepoint_id=chokepoint6
(Strait of Hormuz, daily, source: imf_portwatch)
date tankers tanker capacity
2026-07-06 14 2,066,636
2026-07-07 12 1,210,489
2026-07-08 5 286,101
2026-07-09 4 45,539
2026-07-13 2 42,247
2026-07-19 4 39,216
Brent gains twenty-seven percent. Over the same window tanker tonnage through the strait falls by a factor of fifty and stays there. The price move is not a mood. Cargo stopped.
Now invert it, because the inverse is the case that makes this worth wiring up. Suppose the coverage read identically and the transit counts held near their normal band. That is a market paying for a risk that has not reached the water yet, and that premium behaves completely differently: it unwinds on a headline, because nothing physical has to be repaired for it to go away. Same news, opposite trade, and the only thing that distinguishes them is a count of ships.
The catalog covers twenty-eight chokepoints with per-vessel-class breakdowns, so the same pattern applies to container flows through other straits, grain, or anything else that has to pass a narrow piece of water. Two things to respect. Read tonnage, not vessel count, because five loaded tankers and five empty ones are not the same event. And transit data lands with a lag of several days, so this is the leg that confirms or refutes a story, never the one that front-runs it.
That is the general shape worth taking away. Price says something happened, news proposes why, and a physical measurement decides whether the proposed why is real.
Where this stops
News reports what was published. It does not report what is true.
A headline is evidence that a claim was made, not that the claim is correct. Coverage volume measures attention, not importance. A tone figure is an aggregate of editorial language and is not a market view. We do not invent quotes, and if a query returns nothing, the correct agent behaviour is to say nothing rather than to improvise a narrative that sounds right.
For the question “can we do business with them”, News is the wrong first call. Screen with Entity, then read the room. Reversing that order is how a rumour becomes a compliance decision.
Running it
H="x-api-key: $SUGRA_API_KEY"
B=https://sugra.ai
# what was published, and which feeds are silent right now
curl -sS -H "$H" "$B/api/v1/news/latest?limit=10"
curl -sS -H "$H" "$B/api/v1/news/search?q=inflation"
curl -sS -H "$H" "$B/api/v1/news/stats"
# how loud, and about what
curl -sS -H "$H" "$B/api/v1/gdelt/themes/trending?limit=10"
curl -sS -H "$H" "$B/api/v1/gdelt/recent?limit=10"
curl -sS -H "$H" "$B/api/v1/gdelt/events/trending?limit=10"
# who noticed
curl -sS -H "$H" "$B/api/v1/news/wikipedia/pageviews/article?article=Inflation&start_date=2026-07-01&end_date=2026-07-25"
curl -sS -H "$H" "$B/api/v1/news/wikipedia/pageviews/top?project=en.wikipedia&date=2026-07-24"
# the joins
curl -sS -H "$H" "$B/api/v1/equities/MSFT/news-sentiment" # Finance + News, entity-linked
curl -sS -H "$H" "$B/api/v1/fred/series/CPIAUCSL?limit=2" # Macro leg for the same brief
# the leg that settles it: does the story show up in physical movement
curl -sS -H "$H" "$B/api/v1/commodities/energy/petroleum"
curl -sS -H "$H" "$B/api/v1/maritime/chokepoints"
curl -sS -H "$H" "$B/api/v1/maritime/chokepoints/activity?chokepoint_id=chokepoint6&limit=14"
Read news/stats before you trust a briefing built on the feed. A list of headlines cannot tell you which headlines are missing.
Published coverage and measured attention, not verified fact. Values pulled live 2026-07-26.
Previous: Sugra NetAtlas. Next: Sugra Earth. Full series: Platform intro.
