Access real-time crypto news and sentiment analysis through our RESTful API.
All API requests require authentication using an API key. You can generate API keys from your dashboard.
Include your API key in the request header:
x-api-key: st_your_api_key_here
Retrieve the latest crypto news articles and sentiment analysis.
/api/v1/news/:batchIndex
| Parameter | Type | Description |
|---|---|---|
batchIndex |
integer | The batch index to retrieve. Start with 0 for the latest batch, increment for older batches. |
| Header | Required | Description |
|---|---|---|
x-api-key |
Yes | Your API key (format: st_...) |
curl -X GET "https://steadytrader.app/api/v1/news/0" \ -H "x-api-key: st_your_api_key_here"
Returns an array of news article objects. Each object contains:
full_content, credit_to, and metadata are available only for paid subscribers. Free tier users will receive null for these fields.
id (string)
title (string)
summary (string)
timestamp (number)
image_preview (string | null)
full_content (string | null)
Premium
null for free tier users.likes (number)
views (number)
credit_to (string | null)
Premium
null for free tier users.metadata (object | null)
Premium
null for free tier users. When available, contains:interest (string) - Interest level classification (e.g., "Low", "Medium", "High")
score (number) - Relevance or quality score (0-10 scale)
sentiment (string) - Sentiment analysis result (e.g., "Bullish", "Bearish", "Neutral")
tags (array of strings) - Relevant tags or keywords (e.g., cryptocurrency names, projects)
[{
"id": "bd743b97ed6513a1",
"title": "Hack VC Faces Backlash Over Poor 2025 Investment Performance",
"summary": "Hack VC is criticized after reporting that over ten of its portfolio projects lost more than 80% of their peak value during 2025, spotlighting significant losses for venture-backed crypto assets.",
"timestamp": 1767974800.053759,
"image_preview": null,
"full_content": "The venture capital firm Hack VC has come under scrutiny following the release of its 2025 performance review. Several prominent projects backed by Hack VC have experienced dramatic declines, with more than ten projects losing over 80% from their all-time highs. Among the steepest losses are MOVE, descending 97.6%, BERA down 96.06%, EIGEN at 92.92%, and SOON falling 92.72%. These disappointing results have provoked critical responses from community members and industry observers concerned about the firm's investment strategy and oversight.",
"likes": 0,
"views": 19,
"credit_to": "Abigail Adams",
"metadata": {
"interest": "Medium",
"score": 6.1,
"sentiment": "Bearish",
"tags": ["MOVE", "BERA", "EIGEN", "SOON"]
}
}]
Retrieve a specific news article by its unique ID.
/api/v1/news/get/:id
| Parameter | Type | Description |
|---|---|---|
id |
string | The unique identifier of the news article (e.g., "bd743b97ed6513a1") |
| Header | Required | Description |
|---|---|---|
x-api-key |
Yes | Your API key (format: st_...) |
Returns a single news article object (not an array) with the same structure as the news endpoint.
full_content, credit_to, and metadata are available only for paid subscribers. Free tier users will receive null for these fields.
id (string)
title (string)
summary (string)
timestamp (number)
image_preview (string | null)
full_content (string | null)
Premium
null for free tier users.likes (number)
views (number)
credit_to (string | null)
Premium
null for free tier users.metadata (object | null)
Premium
null for free tier users. When available, contains:interest (string) - Interest level classification (e.g., "Low", "Medium", "High")
score (number) - Relevance or quality score (0-10 scale)
sentiment (string) - Sentiment analysis result (e.g., "Bullish", "Bearish", "Neutral")
tags (array of strings) - Relevant tags or keywords (e.g., cryptocurrency names, projects)
curl -X GET "https://steadytrader.app/api/v1/news/get/bd743b97ed6513a1" \ -H "x-api-key: st_your_api_key_here"
{
"id": "bd743b97ed6513a1",
"title": "Hack VC Faces Backlash Over Poor 2025 Investment Performance",
"summary": "Hack VC is criticized after reporting that over ten of its portfolio projects lost more than 80% of their peak value during 2025, spotlighting significant losses for venture-backed crypto assets.",
"timestamp": 1767974800.053759,
"image_preview": null,
"full_content": "The venture capital firm Hack VC has come under scrutiny following the release of its 2025 performance review. Several prominent projects backed by Hack VC have experienced dramatic declines, with more than ten projects losing over 80% from their all-time highs. Among the steepest losses are MOVE, descending 97.6%, BERA down 96.06%, EIGEN at 92.92%, and SOON falling 92.72%. These disappointing results have provoked critical responses from community members and industry observers concerned about the firm's investment strategy and oversight.",
"likes": 0,
"views": 19,
"credit_to": "Abigail Adams",
"metadata": {
"interest": "Medium",
"score": 6.1,
"sentiment": "Bearish",
"tags": ["MOVE", "BERA", "EIGEN", "SOON"]
}
}
Filter and search news articles (sparks) by date range, sentiment, symbols, and other criteria.
/api/v1/spark/filter
All parameters are optional, but at least one filter parameter must be provided.
sentiment, symbols, score, and interests are available only for paid subscribers (Starter or Professional plans). Free tier users can use startDate, endDate, limit, likes, and views.
| Field | Type | Required | Description |
|---|---|---|---|
startDate |
number | string | No | Start date for filtering. Can be a Unix timestamp (seconds) or ISO 8601 date string. Only articles published on or after this date will be returned. |
endDate |
number | string | No* | End date for filtering. Can be a Unix timestamp (seconds) or ISO 8601 date string. Only articles published on or before this date will be returned. If provided, startDate must also be provided. |
sentiment Premium |
string | array | No | Filter by sentiment. Can be a single value or array of values. Valid values: "Bullish", "Bearish", or "Neutral" (e.g., "Bullish" or ["Bullish", "Bearish"]). Premium feature: Available only for paid subscribers. |
symbols Premium |
array of strings | No | Array of cryptocurrency symbols to filter by (e.g., ["BTC", "ETH", "SOL"]). Only articles mentioning these symbols will be returned. Premium feature: Available only for paid subscribers. |
limit |
number | No | Maximum number of results to return. Default is 60 if not specified. |
score Premium |
object | No | Filter by relevance score (0-10). Must be an object with "gt" (greater than) or "lt" (less than) properties. Example: {"gt": 5} for articles with score greater than 5, or {"lt": 8} for articles with score less than 8. You can use both: {"gt": 5, "lt": 8}. Premium feature: Available only for paid subscribers. |
interests Premium |
string | array | No | Filter by interest level. Can be a single value or array of values. Valid values: "Mega", "High", or "Medium" (e.g., "High" or ["High", "Medium"]). Premium feature: Available only for paid subscribers. |
likes |
object | No | Filter by number of likes. Must be an object with "gt" (greater than) or "lt" (less than) properties. Example: {"gt": 10} for articles with more than 10 likes, or {"lt": 5} for articles with less than 5 likes. You can use both: {"gt": 5, "lt": 20}. |
views |
object | No | Filter by number of views. Must be an object with "gt" (greater than) or "lt" (less than) properties. Example: {"gt": 100} for articles with more than 100 views, or {"lt": 50} for articles with less than 50 views. You can use both: {"gt": 50, "lt": 200}. |
| Header | Required | Description |
|---|---|---|
x-api-key |
Yes | Your API key (format: st_...) |
Content-Type |
Yes | Must be application/json |
Returns an array of news article objects matching the filter criteria. Each object has the same structure as the news endpoint response.
full_content, credit_to, and metadata are available only for paid subscribers. Free tier users will receive null for these fields.
curl -X POST "https://steadytrader.app/api/v1/spark/filter" \
-H "x-api-key: st_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"sentiment": ["Bullish", "Bearish"],
"symbols": ["BTC", "ETH"],
"score": { "gt": 5, "lt": 9 },
"limit": 10
}'
curl -X POST "https://steadytrader.app/api/v1/spark/filter" \
-H "x-api-key: st_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"startDate": 1767974800,
"endDate": 1768061200,
"sentiment": "Bearish",
"limit": 20
}'
curl -X POST "https://steadytrader.app/api/v1/spark/filter" \
-H "x-api-key: st_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"likes": { "gt": 10 },
"views": { "gt": 100, "lt": 1000 },
"limit": 20
}'
[{
"id": "bd743b97ed6513a1",
"title": "Bitcoin Reaches New All-Time High",
"summary": "Bitcoin has reached a new all-time high, breaking previous records...",
"timestamp": 1767974800.053759,
"image_preview": null,
"full_content": "The complete article content...",
"likes": 42,
"views": 156,
"credit_to": "John Doe",
"metadata": {
"interest": "High",
"score": 8.5,
"sentiment": "Bullish",
"tags": ["BTC", "Bitcoin", "Cryptocurrency"]
}
}]
endDate is provided, startDate must also be provided.sentiment, symbols, score, and interests are premium-only fields. Free tier users will receive a 403 error if they attempt to use these fields.score must be a number between 0 and 10 (inclusive).interests can only be one or more of: "Mega", "High", or "Medium".likes and views must be objects with "gt" (greater than) and/or "lt" (less than) properties. Values must be non-negative integers.likes and views are available to all users (free and premium).Retrieve engagement metrics (likes and views) for a specific news article by its ID.
/api/v1/spark/get/engagement/:id
| Parameter | Type | Description |
|---|---|---|
id |
string | The unique identifier of the news article (e.g., "bd743b97ed6513a1") |
| Header | Required | Description |
|---|---|---|
x-api-key |
Yes | Your API key (format: st_...) |
Returns engagement metrics for the specified article.
likes (number)
views (number)
curl -X GET "https://steadytrader.app/api/v1/spark/get/engagement/bd743b97ed6513a1" \ -H "x-api-key: st_your_api_key_here"
{
"likes": 0,
"views": 19
}
Retrieve the total number of articles (sparks) available in the system.
/api/v1/spark/get/count
| Header | Required | Description |
|---|---|---|
x-api-key |
Yes | Your API key (format: st_...) |
Returns the total count of articles available in the system.
count (integer)
curl -X GET "https://steadytrader.app/api/v1/spark/get/count" \ -H "x-api-key: st_your_api_key_here"
{
"count": 12345
}
Retrieve voting statistics (bullish and bearish percentages) for a specific news article by its ID.
/api/v1/spark/get/votes/count/:id
| Parameter | Type | Description |
|---|---|---|
id |
string | The unique identifier of the news article (e.g., "bd743b97ed6513a1") |
| Header | Required | Description |
|---|---|---|
x-api-key |
Yes | Your API key (format: st_...) |
Returns voting percentages for the specified article. Both values are percentages ranging from 0 to 100.
{"bullish": 50, "bearish": 50}. The sum of bullish and bearish percentages always equals 100.
bullish (float)
bearish (float)
curl -X GET "https://steadytrader.app/api/v1/spark/get/votes/count/bd743b97ed6513a1" \ -H "x-api-key: st_your_api_key_here"
{
"bullish": 50.0,
"bearish": 50.0
}
Retrieve user reviews for a specific news article by its ID.
/api/v1/spark/get/reviews/:id
| Parameter | Type | Description |
|---|---|---|
id |
string | The unique identifier of the news article (e.g., "bd743b97ed6513a1") |
| Header | Required | Description |
|---|---|---|
x-api-key |
Yes | Your API key (format: st_...) |
Returns an array of review objects. Each review contains:
userId (string)
id (string)
createdAt (float)
content (string)
curl -X GET "https://steadytrader.app/api/v1/spark/get/reviews/bd743b97ed6513a1" \ -H "x-api-key: st_your_api_key_here"
[{
"userId": "user123",
"id": "review456",
"createdAt": 1767974800.5,
"content": "Great analysis! This article provides valuable insights into the market trends."
}, {
"userId": "user789",
"id": "review789",
"createdAt": 1767974900.2,
"content": "I disagree with some points, but overall a well-researched piece."
}]
Analyze the correlation between a news article and market price movements within a specified time window.
/api/v1/spark/get/specs/:symbol/:timestamp/:spark_id/:window_minute
| Parameter | Type | Description |
|---|---|---|
symbol |
string | Trading pair symbol (e.g., "ETH", "BTC", "ETHUSDT"). The symbol should match the cryptocurrency mentioned in the news article. |
timestamp |
integer | Unix timestamp (seconds since epoch) of when the news article was published. This is used as the reference point for the correlation analysis. |
spark_id |
string | The unique identifier of the news article (e.g., "bd743b97ed6513a1") |
window_minute |
integer | Time window in minutes to analyze price movements after the news timestamp. Recommended: 15 or 30 minutes. |
| Header | Required | Description |
|---|---|---|
x-api-key |
Yes | Your API key (format: st_...) |
Returns correlation analysis data including price movements, volatility, volume spikes, and causation confidence.
symbol (string)
growth_percent (float)
price_at_timestamp (float)
price_now (float)
Detailed correlation metrics and analysis:
event_price_change_percent (float)
volatility_spike (float)
volume_spike (float)
abnormal_return (float)
sentiment_alignment (boolean)
causation_confidence (integer)
message (string)
window (object)
before - Minutes before the timestamp analyzedafter - Minutes after the timestamp analyzed (matches window_minute parameter)curl -X GET "https://steadytrader.app/api/v1/spark/get/specs/ETH/1768057808/588c0c54adf5c0fd/15" \ -H "x-api-key: st_your_api_key_here"
{
"symbol": "ETHUSDT",
"growth_percent": 0.01,
"price_at_timestamp": 3094.55,
"price_now": 3094.79,
"advanced": {
"event_price_change_percent": -0.0139,
"volatility_spike": 0.0637,
"volume_spike": 0.3938,
"abnormal_return": 0.0113,
"sentiment_alignment": false,
"causation_confidence": 46,
"message": "This spark shows a mild association with ETH's move.",
"window": {
"before": 10,
"after": 15
}
}
}
Retrieve comprehensive sentiment analytics and insights for cryptocurrencies based on news and social media data.
/api/v1/tools/get/spark/analytics
| Header | Required | Description |
|---|---|---|
x-api-key |
Yes | Your API key (format: st_...) |
curl -X GET "https://steadytrader.app/api/v1/tools/get/spark/analytics" \ -H "x-api-key: st_your_api_key_here"
Returns comprehensive analytics data organized into several sections.
Each coin symbol (e.g., "BTC", "ETH") contains detailed analytics data:
coin (string)
mentions (number)
sentiment_ratio (number)
last_ts (string)
sentiment_label (string)
momentum_label (string)
Statistical analysis of price movements and sentiment correlations over 24-hour periods:
avg_change_24h (number)
overall_sentiment_correlation (number)
bullish_sentiment_correlation (number)
bearish_sentiment_correlation (number)
neutral_sentiment_correlation (number)
avg_change_when_right (object)
bullish - Average price gain when bullish sentiment correctly predicted an increasebearish - Average price loss when bearish sentiment correctly predicted a decrease (typically negative)neutral - Average price change when neutral sentiment was correct (typically near 0)sparks_len (number)
TopBullish (array of strings)
TopDiscussed (array of strings)
TopEngaged (array of strings)
TopMomentum (array of strings)
HighInterest (array of strings)
coins (array of objects)
symbol - Coin symbol (e.g., "BTC", "ETH")what_is_happenning - Current situation and sentiment overviewprice_behavior - How price typically responds to different sentiment conditionsreliability - Assessment of sentiment as a reliable price indicatorin_practical_terms - Practical interpretation and actionable insightssummary (object)
What_is_strongly_trending_today - Description of coins with strong momentumWhat_to_keep_an_eye_on - Coins worth monitoring based on current market conditionsWhich_coins_are_slowing_down_or_cooling_off - Coins losing momentum or showing signs of cooling interest{
"coins": {
"BNB": {
"coin": "BNB",
"mentions": 49,
"sentiment_ratio": 0.653,
"last_ts": "2026-01-09T13:01:05",
"sentiment_label": "Strong Bullish",
"momentum_label": "Slowing",
"computed24hEvolution": {
"avg_change_24h": 0.186,
"overall_sentiment_correlation": 0.469,
"bullish_sentiment_correlation": 0.541,
"bearish_sentiment_correlation": 0.4,
"neutral_sentiment_correlation": 0.143,
"avg_change_when_right": {
"bullish": 0.738,
"bearish": -0.145,
"neutral": 0.0
},
"sparks_len": 49
}
}
},
"TopBullish": ["BNB", "AVAX", "TAO", "XRP", "SOL"],
"TopDiscussed": ["BTC", "ETH", "SOL", "XRP"],
"TopEngaged": ["AVAX", "ZEC", "TAO"],
"TopMomentum": ["BTC", "ETH"],
"HighInterest": ["BTC", "ETH", "XRP"],
"report": {
"coins": [{
"symbol": "BNB",
"what_is_happenning": "BNB is showing strong positive sentiment...",
"price_behavior": "When bullish sentiment appears for BNB...",
"reliability": "Bullish sentiment historically aligns well...",
"in_practical_terms": "BNB is still popular and generally viewed positively..."
}],
"summary": {
"What_is_strongly_trending_today": "Bitcoin (BTC) and Ethereum (ETH)...",
"What_to_keep_an_eye_on": "Coins like BNB, TAO, and AVAX...",
"Which_coins_are_slowing_down_or_cooling_off": "BNB, TAO, and AVAX..."
}
}
}
Retrieve market data and statistics for specific cryptocurrencies including price, market cap, volume, and volatility metrics.
/api/v1/get/coin_data
| Field | Type | Required | Description |
|---|---|---|---|
symbols |
array of strings | Yes | Array of cryptocurrency symbols to fetch data for (e.g., ["BTC", "ETH", "SOL"]) |
| Header | Required | Description |
|---|---|---|
x-api-key |
Yes | Your API key (format: st_...) |
Content-Type |
Yes | Must be application/json |
Returns an array of coin data objects, one for each requested symbol.
symbol (string)
marketCap (number)
price (number)
priceChange24h (number)
priceChange7d (number)
volume24h (number)
Additional market context and historical data:
athPrice (number)
atlPrice (number)
athDate (string)
atlDate (string)
distanceFromAthPercent (number)
volatility (object)
volatility1hPercent - 1-hour volatilityvolatility12hPercent - 12-hour volatilityvolatility1dPercent - 1-day volatilityvolatility7dPercent - 7-day volatilityvolatility30dPercent - 30-day volatilityvolatility90dPercent - 90-day volatilityavgDailyMovePercent (number)
curl -X POST "https://steadytrader.app/api/v1/get/coin_data" \
-H "x-api-key: st_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"symbols": ["SOL", "XRP"]
}'
[{
"symbol": "XRP",
"marketCap": 129027557380.077,
"price": 2.1314,
"priceChange24h": -0.341,
"priceChange7d": 8.7401173,
"volume24h": 275150714.876,
"marketContext": {
"behavior": {
"volatility": {
"volatility1hPercent": 0.622,
"volatility12hPercent": 0.399,
"volatility1dPercent": 0.399,
"volatility7dPercent": 0.685,
"volatility30dPercent": 0.595,
"volatility90dPercent": 0.622
},
"avgDailyMovePercent": 2.027
}
}
}, {
"symbol": "SOL",
"marketCap": 78775449698.642,
"price": 139.83,
"priceChange24h": 1.517,
"priceChange7d": 6.8897896,
"volume24h": 529993155.828,
"marketContext": {
"history": {
"athPrice": 293.31,
"atlPrice": 0.501,
"athDate": "2025-01-19T11:15:27.957Z",
"atlDate": "2020-05-11T19:35:23.449Z",
"distanceFromAthPercent": -52.327
},
"behavior": {
"volatility": {
"volatility1hPercent": 0.707,
"volatility12hPercent": 0.271,
"volatility1dPercent": 0.37,
"volatility7dPercent": 0.794,
"volatility30dPercent": 0.759,
"volatility90dPercent": 0.707
},
"avgDailyMovePercent": 2.259
}
}
}]
Rate limits are based on your subscription plan:
| Plan | Monthly Limit |
|---|---|
| Free | 100 API calls |
| Starter | 10,000 API calls |
| Professional | 500,000 API calls |
X-RateLimit-Limit - Your monthly limitX-RateLimit-Remaining - Remaining calls this monthX-RateLimit-Reset - When the limit resets (Unix timestamp)Missing or invalid API key:
{
"error": "API key required"
}
Invalid API key or premium feature access denied:
{
"error": "Premium feature",
"message": "Spark Analytics is available only for paid subscribers. Please upgrade your plan to access this feature."
}
Rate limit exceeded:
{
"error": "Rate limit exceeded",
"message": "You've reached your monthly limit of 100 API calls. Please upgrade your plan.",
"limit": 100,
"used": 100
}
Server error:
{
"error": "Failed to fetch news data"
}
If you need assistance or have questions about the API: