API Dashboard
MANAGE YOUR API KEY AND MONITOR USAGE
By generating a key you agree to our terms of use. After 100 free calls, usage is billed at £0.01/call via Stripe.
Already have a key? Look it up by email →
API Reference
BASE URL: HTTPS://API.SENTIMENTFX.ORG
Authentication
All API endpoints require an API key passed as a request header. Generate your key on the dashboard.
X-API-Key
header.# Curl curl https://api.sentimentfx.org/v1/sentiment/BTC \ -H "X-API-Key: sfx_your_api_key_here" # Python import requests res = requests.get( "https://api.sentimentfx.org/v1/sentiment/BTC", headers={"X-API-Key": "sfx_your_api_key_here"} ) # JavaScript const res = await fetch( "https://api.sentimentfx.org/v1/sentiment/BTC", { headers: { "X-API-Key": "sfx_your_api_key_here" } } )
Sentiment
Returns sentiment-scored headlines for the specified ticker. Default 25 headlines = 1 call. Every additional 25 = 1 more call.
| Parameter | Type | Default | Description |
|---|---|---|---|
| ticker | string | — | BTC, ETH, SOL, XRP, or DOGE |
| limit | integer | 25 | Number of headlines to return |
{
"ticker": "BTC",
"limit": 25,
"calls_used": 1,
"data": [
{
"date": "2026-04-27T12:00:00",
"title": "Bitcoin hits new yearly high amid ETF inflows",
"source": "CoinDesk",
"sentiment_score": 0.6821,
"sentiment_label": "positive"
}
]
}
Summary
Returns daily averaged sentiment scores. Default 30 days = 30 calls.
| Parameter | Type | Default | Description |
|---|---|---|---|
| ticker | string | — | BTC, ETH, SOL, XRP, or DOGE |
| days | integer | 30 | Number of days of history |
{
"ticker": "BTC",
"days": 30,
"calls_used": 30,
"data": [
{
"date": "2026-04-27",
"avg_sentiment": 0.2341,
"article_count": 12,
"label": "positive"
}
]
}
Prices
Returns daily closing prices in GBP. Default 30 days = 30 calls.
| Parameter | Type | Default | Description |
|---|---|---|---|
| ticker | string | — | BTC, ETH, SOL, XRP, or DOGE |
| days | integer | 30 | Number of days of history |
{
"ticker": "BTC",
"days": 30,
"calls_used": 30,
"data": [
{
"date": "2026-04-27T00:00:00",
"close_price_gbp": 72841.50,
"volume": 18294830293.0
}
]
}
Correlation
Returns Pearson correlation between sentiment and price returns across lag periods of 0–7 days. Always 1 call.
| Parameter | Type | Default | Description |
|---|---|---|---|
| ticker | string | — | BTC, ETH, SOL, XRP, or DOGE |
{
"ticker": "BTC",
"calls_used": 1,
"best_lag_days": 2,
"correlation": 0.412,
"all_lags": {
"0": 0.121,
"1": 0.287,
"2": 0.412,
"3": 0.198
}
}
Error Codes
| Code | Meaning |
|---|---|
| 401 | Missing or invalid API key |
| 404 | No data found for ticker |
| 429 | Rate limit exceeded |
| 500 | Server error |
Pricing
SIMPLE, TRANSPARENT API PRICING
Get started with no card required. Perfect for prototyping and exploration.
- 100 free API calls
- All 5 tickers
- All endpoints
- No expiry on free calls
After your 100 free calls, usage is billed per call at the end of each month via Stripe.
- £0.01 per API call
- Billed monthly via Stripe
- No monthly minimum
- Cancel anytime
How calls are counted
| Endpoint | Calls Used |
|---|---|
| /v1/sentiment/{ticker} | ceil(limit / 25) — default 1 call for 25 headlines |
| /v1/summary/{ticker} | 1 call per day returned — default 30 calls |
| /v1/prices/{ticker} | 1 call per day returned — default 30 calls |
| /v1/correlation/{ticker} | Always 1 call |
Supported Tickers
| Ticker | Asset | Available Endpoints |
|---|---|---|
| BTC | Bitcoin | sentiment, summary, prices, correlation |
| ETH | Ethereum | sentiment, summary, prices, correlation |
| SOL | Solana | sentiment, summary, prices, correlation |
| XRP | XRP | sentiment, summary, prices, correlation |
| DOGE | Dogecoin | sentiment, summary, prices, correlation |