Sentiment
/sentiment
Returns Nebula's primary sentiment series for one asset, one non-asset subject, or a market-wide asset class. Free receives the high-level series; named cohort breakdowns and cluster filtering require Pro. Omit identity selectors for the global view; asset_class then defaults to equity. Asset selectors support equities, commodities, indices, and crypto assets returned by GET /assets; commodity and index IDs use asset_class=equity. Parameter rules: asset_id requires asset_class. subject_id and asset_class cannot be combined. subject_id and asset_id cannot be combined.
Parameters
Canonical identifier returned by /assets. Stock, commodity, and index IDs are normally ticker or market symbols and use asset_class=equity; crypto IDs are canonical crypto slugs. asset_class is mandatory whenever asset_id is present.
Example:NVDA
Namespace of asset_id, or the market class for endpoints with a class-scoped global view. Stocks, commodities, and indices use equity. Equity is the documented default only where the endpoint description states a default.
equitycrypto
Example:equity
Canonical non-asset identifier returned by /subjects. It cannot be combined with asset_id or asset_class.
Example:person:donald_trump
Lookback window in hours.
Default:168
Requested time-series bucket size. When omitted, the service chooses a bucket size appropriate for the lookback window.
1h2h4h12h1d
Example:1h
Repeatable canonical author-cluster filter. Use /clusters to discover current cluster IDs.
Example:smart_money
cURL Example
curl --request GET \
--url 'https://nebula-api.hiddensystems.ai/api/v1/public/sentiment' \
--header 'X-API-Key: YOUR_API_KEY'
Responses
Media type application/json
cohorts
object
Named sentiment populations. Current keys are bots, non_bots, and top_callers when that population is available.
Allowed keys
botsnon_botstop_callers
cohorts
Named sentiment populations. Current keys are bots, non_bots, and top_callers when that population is available.
botsnon_botstop_callers
cohorts.{key}[].bearish_posts
Posts classified as bearish.
cohorts.{key}[].bullish_posts
Posts classified as bullish.
cohorts.{key}[].interval_bearish_posts
Bearish posts in this emitted time bucket.
cohorts.{key}[].interval_bullish_posts
Bullish posts in this emitted time bucket.
cohorts.{key}[].interval_neutral_posts
Neutral posts in this emitted time bucket.
cohorts.{key}[].interval_posts
Posts in this emitted time bucket, before lookback accumulation.
cohorts.{key}[].neutral_posts
Posts classified as neutral.
cohorts.{key}[].sentiment_signal
Decay-weighted net bullish posts: bullish minus bearish. Positive is bullish, negative is bearish, and magnitude grows with activity.
cohorts.{key}[].sentiment_signal_z_score
Standard score of the sentiment signal when available.
cohorts.{key}[].smoothed_sentiment_signal
Smoothed form of the sentiment signal when available.
cohorts.{key}[].smoothed_total_posts
Smoothed form of total post activity when available.
cohorts.{key}[].timestamp
UTC RFC 3339 timestamp for the observation or bucket start.
cohorts.{key}[].total_posts
Post count over the metric's active lookback window.
series
array<object>
Chronologically ordered observations.
series
Chronologically ordered observations.
series[].bearish_posts
Posts classified as bearish.
series[].bullish_posts
Posts classified as bullish.
series[].interval_bearish_posts
Bearish posts in this emitted time bucket.
series[].interval_bullish_posts
Bullish posts in this emitted time bucket.
series[].interval_neutral_posts
Neutral posts in this emitted time bucket.
series[].interval_posts
Posts in this emitted time bucket, before lookback accumulation.
series[].neutral_posts
Posts classified as neutral.
series[].sentiment_signal
Decay-weighted net bullish posts: bullish minus bearish. Positive is bullish, negative is bearish, and magnitude grows with activity.
series[].sentiment_signal_z_score
Standard score of the sentiment signal when available.
series[].smoothed_sentiment_signal
Smoothed form of the sentiment signal when available.
series[].smoothed_total_posts
Smoothed form of total post activity when available.
series[].timestamp
UTC RFC 3339 timestamp for the observation or bucket start.
series[].total_posts
Post count over the metric's active lookback window.
{
"cohorts": {
"non_bots": [
{
"bearish_posts": 438,
"bullish_posts": 1120,
"neutral_posts": 284,
"sentiment_signal": 128.6,
"timestamp": "2026-08-07T15:00:00Z",
"total_posts": 1842
}
]
},
"series": [
{
"bearish_posts": 438,
"bullish_posts": 1120,
"interval_bearish_posts": 18,
"interval_bullish_posts": 46,
"interval_neutral_posts": 10,
"interval_posts": 74,
"neutral_posts": 284,
"sentiment_signal": 128.6,
"sentiment_signal_z_score": 1.42,
"smoothed_sentiment_signal": 117.3,
"smoothed_total_posts": 1765.4,
"timestamp": "2026-08-07T15:00:00Z",
"total_posts": 1842
}
]
}