Skip to content

Analyst Ratings API

Retrieve Wall Street analyst ratings, price targets, and recommendation changes. Get consensus ratings and track upgrades/downgrades.

GET /v2/analyst-ratings/{symbol}

Authenticate using one of the following methods (in order of recommendation):

Method Example
Bearer token (recommended) Authorization: Bearer YOUR_API_KEY
X-API-Key header X-API-Key: YOUR_API_KEY
Query parameter ?apiKey=YOUR_API_KEY
Legacy query parameter ?token=YOUR_API_KEY
Parameter Type Required Description
symbol string Yes Stock ticker symbol (e.g., AAPL, MSFT)
Parameter Type Required Description
startDate string No Start date (YYYY-MM-DD)
endDate string No End date (YYYY-MM-DD)
limit integer No Maximum number of results to return
from finbrain import FinBrainClient
fb = FinBrainClient(api_key="YOUR_API_KEY")
df = fb.analyst_ratings.ticker("AAPL",
date_from="2025-01-01",
date_to="2025-06-30",
as_dataframe=True)
print(df)
{
"success": true,
"data": {
"symbol": "AAPL",
"name": "Apple Inc.",
"ratings": [
{
"date": "2026-01-09",
"institution": "Evercore ISI",
"action": "Reiterated",
"rating": "Outperform",
"targetPrice": "$275"
},
{
"date": "2026-01-02",
"institution": "Raymond James",
"action": "Resumed",
"rating": "Mkt Perform",
"targetPrice": null
}
]
},
"meta": { "timestamp": "2026-01-19T15:06:13.918Z" }
}
Field Type Description
success boolean Whether the request succeeded
data.symbol string Stock ticker symbol
data.name string Company name
data.ratings array Array of analyst ratings
meta.timestamp string Response timestamp (ISO 8601)
Field Type Description
date string Rating date (YYYY-MM-DD)
institution string Research firm name
action string Type of action (Reiterated, Resumed, Upgrade, Downgrade, Initiated)
rating string Analyst rating (Outperform, Mkt Perform, Buy, Sell, Hold, etc.)
targetPrice string or null Price target (e.g., “$275”) or null if not provided
Rating Signal
Strong Buy Very Bullish
Buy / Outperform Bullish
Hold / Neutral / Mkt Perform Neutral
Underperform Bearish
Sell Very Bearish
Code Error Description
400 Bad Request Invalid symbol or parameters
401 Unauthorized Invalid or missing API key
403 Forbidden Authenticated, but not authorized to access this resource
404 Not Found Symbol not found
429 Too Many Requests Rate limit exceeded — wait and retry
500 Internal Server Error Server-side error