Pulse
The World Pulse: four components — outlook, attention, sentiment, uncertainty — published as a vector with no composite scalar. Outlook measures movement in expectations, never their direction: there is no improving or worsening here.
GET/v1/pulse
The World Pulse — four figures, never a total
Outlook measures how much expectations moved, not whether they improved: there is no direction in it and no level. Each component may be null on its own, with the reason in absent. Nothing in this payload combines the four.
category query, optionalAccepts one of politics, economy, conflict, technology, ai, crypto, climate, energy, health, sports, entertainment.region query, optionalAccepts one of europe, asia-pacific, north-america, africa, latin-america, middle-east.
Answers 200, 400, 429
curl -s "https://api.futureindex.app/v1/pulse"
Topics
Persistent subjects, their per-layer metrics and their contracts. A topic's contracts are listed and never combined into one figure; each is one source's contract, never an aggregate across sources — see the single-source section of the description.
GET/v1/topics
Topics, by attention, by its 24-hour change, by name, or by how active they are
Each entry carries whatever of the four public metrics has been computed for it. A topic with none is published with an empty list rather than omitted — that is the state of every topic until the metric passes reach it. order selects between three stored columns: the seeded editorial importance, the collation over the canonical name, and activity, the trending score over the last 24 hours. All three page by keyset, and a cursor is refused by any ordering other than the one that issued it. ordering says which produced the page, whether it is the whole index or a bounded selection, and — under activity — which method version computed the ranking and when. A null computed_at under activity means no ranking has been computed, in which case every subject scores zero and the page falls back to the editorial order. attention, rising and falling order by the published Attention index and by its 24-hour change, highest, largest rise and largest fall first; a subject with no figure sorts last. page numbers the pages as an alternative to cursor, and total counts what the filters match.
category query, optionalAccepts one of politics, economy, conflict, technology, ai, crypto, climate, energy, health, sports, entertainment.region query, optionalAccepts one of europe, asia-pacific, north-america, africa, latin-america, middle-east.order query, optionalAccepts one of importance, name, activity, attention, rising, falling.limit query, optionalcursor query, optionalpage query, optional
Answers 200, 400, 429
curl -s "https://api.futureindex.app/v1/topics"
GET/v1/topics/{slug}
One topic, its metrics and the contracts linked to it
Contracts are listed side by side with their own questions and their own probabilities. Nothing here is an average across them: in MVP an event is one source's contract and this product computes no consensus. contracts selects between the editorial ordering over every linked contract and two orderings over §18.1's figures — the size of the last 24 hours' movement, and the probability itself. Both of those are selections: a contract with no computed metric carries neither figure and is absent from them rather than ranked last. contracts_ordering says which of the three produced the list, how many contracts it could place, and the cap it was drawn against.
contracts query, optionalAccepts one of importance, moving, likely.slug path, required
Answers 200, 400, 404, 429
curl -s "https://api.futureindex.app/v1/topics/{slug}"
GET/v1/topics/{slug}/changes
What changed on this subject, ranked
The same ranking as /v1/changes over one subject's own candidates: its linked contracts' movements, its attention and discussion buckets, and the occurrences reported on it. Magnitudes are compared as deviations from each subject's own baseline and never as raw values. considered is this subject's candidate count and is often small, which is what makes it worth reading beside the feed.
window query, optionalAccepts one of 1h, 24h, 7d.limit query, optionalslug path, required
Answers 200, 400, 404, 429
curl -s "https://api.futureindex.app/v1/topics/{slug}/changes"
GET/v1/topics/{slug}/context
What was reported on this subject
Clustered occurrences linked to this subject. Each entry is one occurrence however many outlets carried it, and states the number of independent origins behind it rather than a number of articles. Ordered newest first by default, or by how many independent origins reported it with order=most_reported; either way the ordering is applied before the page is capped, and the ordering that was applied is echoed in the response. Nothing in this payload relates an occurrence to any figure this product publishes about the subject.
days query, optionallimit query, optionalorder query, optionalAccepts one of newest, most_reported.slug path, required
Answers 200, 400, 404, 429
curl -s "https://api.futureindex.app/v1/topics/{slug}/context"
GET/v1/topics/{slug}/discussion
What people are discussing about this subject
Public discussion items linked to this subject, most-discussed first: each source's own title and link, its comment, share and point counts as last read, and when it was posted. Display only — nothing in this payload is a figure this product computes, and nothing relates an item to any figure it publishes about the subject.
days query, optionallimit query, optionalslug path, required
Answers 200, 400, 404, 429
curl -s "https://api.futureindex.app/v1/topics/{slug}/discussion"
GET/v1/topics/{slug}/history
One topic metric's series over a window
Bucketed to at most 500 points. Each point is the last computed value in its bucket — never an average and never interpolated. A bucket with no value is absent, so a period nothing was computed reads as a gap.
window query, optionalAccepts one of 1h, 24h, 7d, 30d, 90d, 1y.metric query, optionalAccepts one of outlook, attention, sentiment, uncertainty, turbulence, disagreement.slug path, required
Answers 200, 400, 404, 429
curl -s "https://api.futureindex.app/v1/topics/{slug}/history"
Discovery
Movers, trending topics, narrative divergence and the category view.
GET/v1/categories
Each launch category's four figures, its top contract and what moved in it
The four figures are the same World Pulse calculation the hero publishes, run over the subjects in one category — so a category selected on both is described identically by each. A category with fewer measured subjects than the method's minimum publishes no figure and is still listed with its subject count: one subject wearing a category's name is not a category. Computed as the response is built and stored nowhere, so a figure here carries no deltas and no history.
window query, optionalAccepts one of 1h, 24h, 7d.category query, optionalAccepts one of politics, economy, conflict, technology, ai, crypto, climate, energy, health, sports, entertainment.region query, optionalAccepts one of europe, asia-pacific, north-america, africa, latin-america, middle-east.
Answers 200, 400, 429
curl -s "https://api.futureindex.app/v1/categories"
GET/v1/movers
The topics whose figure for one metric moved most over a window
One metric per request. Ranked by the size of the change and never by how well founded it is: confident is published on every row as a warning and has no effect on the order. On the metrics the method lists as rise-only — attention, whose anomaly is calibrated on its upper tail alone — a fall is not listed at all; on the rest the direction does not affect the order. A change smaller than the method's threshold is absent rather than listed as small.
category query, optionalAccepts one of politics, economy, conflict, technology, ai, crypto, climate, energy, health, sports, entertainment.region query, optionalAccepts one of europe, asia-pacific, north-america, africa, latin-america, middle-east.metric query, optionalAccepts one of outlook, attention, sentiment, uncertainty, turbulence, disagreement.window query, optionalAccepts one of 1h, 24h, 7d.limit query, optional
Answers 200, 400, 429
curl -s "https://api.futureindex.app/v1/movers"
GET/v1/narrative-divergence
Subjects where coverage and discussion, or two communities, differ materially
Both sides are required: one side reporting is an absence rather than a disagreement. Each card states which side is ahead and nothing about why — the relationship is what was observed, and a reason would be a claim this product does not make.
window query, optionalAccepts one of 1h, 24h, 7d.category query, optionalAccepts one of politics, economy, conflict, technology, ai, crypto, climate, energy, health, sports, entertainment.region query, optionalAccepts one of europe, asia-pacific, north-america, africa, latin-america, middle-east.
Answers 200, 400, 429
curl -s "https://api.futureindex.app/v1/narrative-divergence"
GET/v1/trending
Subjects several independent kinds of source are unusually busy with
Scored from five inputs with fixed shares that never redistribute, so a subject only news sources have covered reaches the coverage share and stops. The score carries the parts it was built from, how many kinds of source were moving, and what the concentration discount did to it.
window query, optionalAccepts one of 1h, 24h, 7d.category query, optionalAccepts one of politics, economy, conflict, technology, ai, crypto, climate, energy, health, sports, entertainment.region query, optionalAccepts one of europe, asia-pacific, north-america, africa, latin-america, middle-east.
Answers 200, 400, 429
curl -s "https://api.futureindex.app/v1/trending"