cryptopanic.com APIcryptopanic.com ↗
Retrieve crypto news posts filtered by sentiment, currency, and panic score period. Get real-time market sentiment scores (0–100) from CryptoPanic via Parse.
curl -X GET 'https://api.parse.bot/scraper/ecb68b09-4535-49a6-820a-dae8d17408a2/get_posts' \ -H 'X-API-Key: $PARSE_API_KEY'
Retrieve a list of news posts from CryptoPanic. Supports filtering by sentiment type, currency, and panic score period.
| Param | Type | Description |
|---|---|---|
| filter | string | Filter by type: bullish, bearish, hot, rising, important, lol, saved |
| currency | string | Filter by currency code (e.g., BTC, ETH) |
| panic_period | string | Include panic score for period: 1h, 6h, 24h |
{
"fields": {
"next": "string",
"count": "integer",
"results": "array"
},
"sample": {
"next": null,
"count": 1,
"results": [
{
"id": 123,
"kind": "news",
"title": "Market sentiment is turning bullish",
"votes": {
"bullish": 10,
"important": 2
},
"currencies": [
{
"code": "BTC",
"title": "Bitcoin"
}
],
"published_at": "2026-02-22T10:00:00Z"
}
]
}
}About the cryptopanic.com API
This API exposes 4 endpoints covering CryptoPanic's news feed and market sentiment data. Use get_posts to retrieve crypto news with filters for sentiment type, currency code, and panic score period, or call get_sentiment_score to get a 0–100 index derived from 24-hour price changes across top cryptocurrencies — including per-coin change_24h, price_usd, and an overall sentiment_label.
News Feed Endpoints
get_posts is the primary news endpoint. It accepts three optional filters: filter (one of bullish, bearish, hot, rising, important, lol, saved), currency (a coin code like BTC or ETH), and panic_period (one of 1h, 6h, 24h) to include a panic score alongside each result. The response returns count, a next cursor for pagination, and a results array. Two convenience endpoints — get_bullish_posts and get_bearish_posts — pre-apply the corresponding sentiment filter and accept an optional currency parameter if you only need one side of the market.
Sentiment Score Endpoint
get_sentiment_score returns a single aggregated view of current market mood. The sentiment_score field is a number from 0 to 100 (50 is neutral, above 50 is bullish, below 50 is bearish). Alongside the numeric score, the response includes sentiment_label (one of Extremely Bullish, Bullish, Neutral, Bearish, Extremely Bearish), average_24h_change (the mean 24-hour percentage move across tracked coins), and a market_summary array. Each object in market_summary carries code, title, change_24h, and price_usd for an individual cryptocurrency.
Coverage Notes
The news endpoints reflect what CryptoPanic surfaces publicly — currency-tagged posts with associated community sentiment votes. The panic_period parameter is only relevant to get_posts; the convenience endpoints do not expose this parameter. Pagination is handled via the next cursor returned in get_posts responses.
- Displaying a live bullish/bearish news feed for a specific coin using
get_bullish_postsorget_bearish_postswith acurrencyfilter - Building a sentiment gauge widget that reads
sentiment_scoreandsentiment_labelfromget_sentiment_score - Alerting traders when
average_24h_changecrosses a threshold using theget_sentiment_scoreresponse - Aggregating per-coin
change_24handprice_usdfrommarket_summaryinto a portfolio dashboard - Filtering CryptoPanic's feed for
hotorimportantposts via thefilterparameter inget_posts - Tracking short-term panic spikes by requesting posts with
panic_periodset to1hor6h - Cross-referencing news volume for a specific currency code with its 24h price movement
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 250 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.
Does CryptoPanic have an official developer API?+
What does `get_sentiment_score` actually measure?+
get_sentiment_score takes the 24-hour price changes of top cryptocurrencies, averages them, and maps the result to a 0–100 scale. The response includes sentiment_score, sentiment_label, average_24h_change, and a market_summary array with per-coin code, title, change_24h, and price_usd. It takes no input parameters and reflects market conditions at the time of the request.How does the `panic_period` parameter work?+
get_posts, panic_period (values: 1h, 6h, 24h) instructs the endpoint to include a panic score for that rolling window alongside each post in the results array. It is only available on get_posts, not on get_bullish_posts or get_bearish_posts.Does the API expose historical sentiment data or post archives beyond the current feed?+
next) and real-time sentiment scores. Historical time-series data is not part of any endpoint. You can fork this API on Parse and revise it to add an endpoint that collects and stores periodic sentiment snapshots.Are community vote counts or individual user reactions exposed in the news results?+
results array from get_posts and the convenience endpoints reflects posts and their sentiment classification, but per-post vote breakdowns or user-level reaction counts are not returned as named response fields in this API. You can fork it on Parse and revise to add those fields if the underlying data is accessible.