Stock sentiment API
The Stock Sentiment API
The SentiSense Stock Sentiment API returns per-stock sentiment and the SentiSense Score as data, not a chart.
SentiSense reads the conversation around each covered US stock across news, Reddit, X, Substack, and finance YouTube, scores the tone of every mention with a model trained on financial text, and serves the result as a time series you can pull with one HTTP call.
Free API key, no card. See a live stock reading →
PRO: 55% off for life with FALL26. $6.75 a month. Plans and pricing
curl -H "X-SentiSense-API-Key: ss_live_YOUR_KEY" \
"https://app.sentisense.ai/api/v2/metrics/entity/NVDA/metric/sentiment?maxDataPoints=30"Thirty daily points, oldest first. Swap NVDA for any covered ticker, and sentiment for sentisense, mentions or social_dominance.
import requests
r = requests.get(
"https://app.sentisense.ai/api/v2/metrics"
"/entity/NVDA/metric/sentiment",
headers={"X-SentiSense-API-Key": "ss_live_YOUR_KEY"},
params={"maxDataPoints": 30},
)
for point in r.json():
print(point["timestamp"], round(point["value"], 3))value is the reading on every point; metricValue carries the stats block beside it. For a typed client, pip install sentisense.
const res = await fetch(
"https://app.sentisense.ai/api/v2/metrics" +
"/entity/NVDA/metric/sentiment?maxDataPoints=30",
{ headers: { "X-SentiSense-API-Key": "ss_live_YOUR_KEY" } }
);
const series = await res.json();
const last = series.at(-1);
console.log(last.timestamp, last.value);Points are ascending, so the last one is the current reading. For a typed client, npm install sentisense.
[
{
"timestamp": 1757462400000,
"metricType": "SENTIMENT",
"value": 0.1256,
"metricValue": {
"value": { "value": 0.1256 },
"stats": { "mean": 0.1256, "count": 1 }
}
}
]Example values, trimmed to the fields you read. Polarity runs from -1 to 1: below zero the conversation skews bearish, above zero bullish.
The response values are an example. Point the same call at any covered ticker with your own key.
Four series per stock
Every metric is a time series: window it with startTime and endTime, cap it with maxDataPoints. Each point carries a flat value and the full reading beside it.
Sentiment
GET /api/ v2/ metrics/ entity/ {ticker}/ metric/ sentiment Signed polarity of the conversation around a ticker. Below zero the tone skews bearish, above zero it skews bullish. Track the direction, and watch for divergence against price.
SentiSense Score
GET /api/ v2/ metrics/ entity/ {ticker}/ metric/ sentisense Our proprietary conviction score: the net bullish-versus-bearish balance of a ticker’s coverage, weighted by how much directional conversation backs it. A loud, one-sided tape scores stronger than a quiet or mixed one.
Mentions
GET /api/ v2/ metrics/ entity/ {ticker}/ metric/ mentions Raw conversation volume. Volume without tone is not sentiment, but a mention spike tells you where attention is crowding before you read the tone.
Social Dominance
GET /api/ v2/ metrics/ entity/ {ticker}/ metric/ social_dominance The stock’s share of social conversation among covered tickers: how much of the room this name is taking up right now.
Around the four series: the distribution endpoints split a metric by source, so you can see whether news, Reddit, X, Substack and YouTube agree and read the divergence when they do not; the baseline endpoints return each metric’s statistical baseline, so a three-sigma move can trigger your own alert; and the documents API returns the items behind a ticker, each with its per-entity sentiment label and a link back to the source.
Distributions and baselines →Documents API →
Also in the same API: Market Mood, a 0 to 100 market-wide composite, holdings-weighted ETF sentiment, analyst ratings, insider trades and institutional 13F flows. Quotes are intraday and delayed 15 minutes; sentiment and news analytics are recomputed on a regular cadence through the day. To see the data before you build, the free market sentiment page renders it as a sector heatmap, a most bullish and most bearish leaderboard, and weekly movers. No account needed.
Sentiment from the text itself, not inferred from price
The full pipeline is on the methodology page; for the background reading, start with how to track market sentiment.
Most sentiment numbers are price-derived: momentum and volatility dressed up as mood. SentiSense works from the other direction. The pipeline ingests financial news, Reddit, X, Substack and finance YouTube, resolves which company each mention refers to, and scores the tone of every mention with a model trained on financial text. Those mention-level scores roll up into the per-stock series the API serves, and the distribution endpoints split any metric back out by source.
That matters if you are building on it: text-based sentiment can move before price does, which is the gap a price-derived gauge cannot see.
A second, independent lens sits in the same API: end-of-day options analytics for the most actively optioned US stocks and the ETFs we track, with an options-implied sentiment on the same minus one to plus one range, plus IV rank, put/call percentiles, skew, open-interest walls and unusually active contracts, each ranked against that ticker’s own trailing history. It reads positioning in the option chain rather than the conversation. All of it is end of day, descriptive and educational only. Options Intelligence API docs →

A free tier you can build on
API keys are free to generate, no credit card required. Every metric on this page, sentiment, the SentiSense Score, mentions and social dominance, works on the free tier: 1,000 requests a month at up to 30 a minute.
| Feature | Free | PRO |
|---|---|---|
| Price | Free$0 a month | PRO$6.75 a month55% off for life with FALL26 |
| Sentiment metrics (the four series above) | FreeFull access | PROFull access |
| Requests a month (shared with the MCP connector) | Free1,000 | PROUnlimited |
| Requests a minute | Free30 | PRO300 |
| Institutional holders | FreePreview (top 5) | PROFull data |
Agents can call it too. The skill file documents every endpoint for machines, the MCP connector gives Claude, ChatGPT, Grok and Codex the same data in plain English, and the agent skills wire it into Claude Code, Cursor and Codex.
Stock sentiment API questions
The free tier, what the score means, how it differs from a fear and greed index, the sources behind it, and how agents call it.
Is there a free stock sentiment API?
Yes. SentiSense API keys are free to generate, no credit card required, and the core metric endpoints (sentiment, mentions, SentiSense Score, social dominance) all work on the free tier. The free tier includes 1,000 requests per month at up to 30 requests per minute, which is enough to build and run a real project.
What does the sentiment score mean?
It is a signed polarity score per stock, computed by a language model that reads the news articles and social posts mentioning that company and scores the tone of each mention. Values below zero mean the conversation skews bearish, values above zero mean it skews bullish. The most useful read is the direction it is moving, not any single value.
How is this different from a fear and greed index?
Price-derived gauges infer mood from market data like momentum and volatility, so they can only confirm what price already shows. A text-based sentiment API reads what people are actually writing about a specific stock, which can shift before price does. SentiSense also publishes Market Mood, a 0 to 100 market-wide composite, if you want the broad thermometer alongside per-stock readings.
What data sources does it cover?
Five source classes, read continuously across the most-watched US stocks: financial news, Reddit, X, Substack, and finance YouTube. The pipeline resolves which company each mention refers to, scores the tone of each mention with a model trained on financial text, and lets you break a stock down by source. Sentiment is recomputed on a regular cadence through the day, so readings reflect the recent conversation rather than a stale snapshot.
Can AI agents and LLMs use it?
Yes, three ways. Agents can read the skill file at sentisense.ai/skill.md and call the REST API directly. Claude and ChatGPT users can add the SentiSense MCP connector with one URL and no code. And builders can use the official Python and Node SDKs inside agent tools.
One key, and the series is yours.
Generate a free API key, then call any metric endpoint. No card required.
Educational use, not investment advice.
