API documentation
A REST API over the data behind Fear & Greed. Every endpoint returns JSON, is authenticated with a bearer token and is rate limited per plan.
Quickstart
- Create a key from your dashboard. It is shown once, so copy it straight into an environment variable.
- Send it as a bearer token on every request.
- Read the JSON response.
Request
curl https://fearandgreedgraph.com/api/v1/fear-greed \
-H "Authorization: Bearer $FEARANDGREED_API_KEY"Response
{
"as_of": "2026-08-29",
"current": 54,
"zone": "Neutral",
"previous_close": 51,
"indicators": { "market_momentum": 52.4, "...": null },
"plan": "free"
}Python
import os, requests
r = requests.get(
"https://fearandgreedgraph.com/api/v1/fear-greed",
headers={"Authorization": f"Bearer {os.environ['FEARANDGREED_API_KEY']}"},
timeout=10,
)
r.raise_for_status()
print(r.json()["current"])JavaScript
const res = await fetch("https://fearandgreedgraph.com/api/v1/fear-greed", {
headers: { Authorization: `Bearer ${process.env.FEARANDGREED_API_KEY}` },
});
if (!res.ok) throw new Error(await res.text());
const { current, zone } = await res.json();Authentication
Pass your key in the Authorization header using the Bearer scheme. Keys begin with sk_live_.
Authorization: Bearer sk_live_xxxxxxxxxxxxxxxxxxxxThere is no query-string parameter for the key, deliberately: URLs are written to server logs, browser history and Referer headers, and a key that reaches any of those is compromised.
Rate limits
Limits are applied per key. Free and Plus keys use a 24-hour window; Pro keys use an hourly window. Every response carries the current state:
X-RateLimit-Limit: 300
X-RateLimit-Remaining: 297| Plan | Request limit | Historical lookback |
|---|---|---|
| Free | 300 / day | 90 days |
| Plus | 3,000 / day | 365 days |
| Pro | 2,500 / hour | Full history |
Exceeding the limit returns 429 with a Retry-After header in seconds. Back off for that long rather than retrying immediately.
Errors
Errors return the appropriate status with a JSON body of the form { "error": "..." }.
| Status | Meaning | Cause |
|---|---|---|
200 | OK | The request succeeded. |
401 | Unauthorized | The key is missing, malformed, unknown or revoked. |
403 | Forbidden | The key is valid but the endpoint requires a higher plan. |
429 | Too Many Requests | Plan rate limit exhausted. See the Retry-After header. |
503 | Service Unavailable | An upstream data source is temporarily unreachable. |
Endpoints
Endpoints marked live are available now. The rest are documented ahead of release and are not yet callable.
| Endpoint | Description | Plan | Status |
|---|---|---|---|
/v1/fear-greed | Current reading, zone, previous close and indicators. | Free | Live |
/v1/fear-greed?history=true | Adds the daily series. Free gets 90 days; Plus gets 365. | Free | Live |
/v1/prices | OHLC price candles for a ticker. | Free | Planned |
/v1/stock-profile | Company profile, sector, market cap and fundamentals. | Free | Planned |
/v1/earnings-calendar | Upcoming and historical earnings dates. | Free | Planned |
/v1/screener | Screen the market by fundamentals and performance. | Plus | Planned |
/v1/stock-map | Market treemap data by sector and performance. | Plus | Planned |
/v1/chart-metrics | Compare fundamental metrics across the market. | Plus | Planned |
/v1/hedge-funds | 13F filings by institution and quarter. | Plus | Planned |
/v1/etf-holdings | Constituent holdings and weights for covered ETFs. | Plus | Planned |
/v1/spy-gex | Dealer gamma exposure by strike and expiration. | Pro | Planned |
/v1/implied-move | Options-implied move into the next earnings date. | Pro | Planned |
MCP server
Open the MCP setup guide for client configurations, example questions, the tool reference and troubleshooting.
Connect an AI agent to the site through the read-only Model Context Protocol server. It uses Streamable HTTP at https://fearandgreedgraph.com/mcpand requires a Pro API key. The same key works for REST requests.
In your agent's MCP settings, add the server URL and set the Authorization header to Bearer YOUR_API_KEY. Keep the key in your agent's secret storage, not in a shared config file.
The server provides these tools:
get_site_guideexplains the site, methodology and data sources.find_site_pageslocates pages relevant to a question.get_fear_greed_indexreturns the latest dated reading and indicators.get_fear_greed_historyreturns up to 365 recent daily readings.get_stock_quotesreturns prices and daily changes for up to ten tickers.
Ask your agent, for example, “What is the latest Fear and Greed reading, and how has it changed over the past week?” Tool results include source links and dates so the agent can cite the site accurately.
Key security
- Store keys in environment variables, never in source control. If a key reaches a public repository, revoke it immediately.
- Use one key per application. A leak then costs you one revocation rather than every integration you run.
- Rotate on staff changes and whenever a key may have been exposed. Create the replacement, deploy it, then revoke the old one for zero downtime.
- We cannot recover a key. Only a hash is stored, so support cannot read one back to you. Rotation is always the answer.
Manage all of this from your API keys dashboard.
