Skip to main content
GET
https://stocks-dev.up.railway.app
/
api
/
v1
/
stock
/
{symbol}
/
overview
Stock Overview
curl --request GET \
  --url https://stocks-dev.up.railway.app/api/v1/stock/{symbol}/overview
{
  "symbol": "<string>",
  "companyName": "<string>",
  "industry": "<string>",
  "sector": "<string>",
  "marketCap": 123,
  "employees": 123,
  "description": "<string>",
  "website": "<string>",
  "headquarters": "<string>",
  "founded": "<string>",
  "ceo": "<string>",
  "exchange": "<string>",
  "financialMetrics": {
    "peRatio": 123,
    "pegRatio": 123,
    "priceToBook": 123,
    "priceToSales": 123,
    "dividendYield": 123,
    "beta": 123,
    "eps": 123,
    "revenue": 123,
    "grossMargin": 123,
    "operatingMargin": 123,
    "netMargin": 123,
    "roe": 123,
    "roa": 123,
    "debtToEquity": 123,
    "currentRatio": 123
  },
  "analystData": {
    "recommendationMean": 123,
    "recommendationKey": "<string>",
    "numberOfAnalystOpinions": 123,
    "targetHighPrice": 123,
    "targetLowPrice": 123,
    "targetMeanPrice": 123,
    "targetMedianPrice": 123
  },
  "timestamp": "<string>"
}

Endpoint

GET /api/v1/stock/{symbol}/overview

Parameters

symbol
string
required
Stock symbol (e.g., AAPL, MSFT, GOOGL)

Response

symbol
string
Stock symbol
companyName
string
Full company name
industry
string
Company industry classification
sector
string
Market sector
marketCap
number
Market capitalization
employees
number
Number of employees
description
string
Company business description
website
string
Company website URL
headquarters
string
Company headquarters location
founded
string
Company founding year
ceo
string
Chief Executive Officer name
exchange
string
Stock exchange listing
financialMetrics
object
Key financial ratios and metrics
analystData
object
Analyst recommendations and targets
timestamp
string
Response timestamp in ISO format

Example Response

{
  "symbol": "AAPL",
  "companyName": "Apple Inc.",
  "industry": "Consumer Electronics",
  "sector": "Technology",
  "marketCap": 3120000000000,
  "employees": 164000,
  "description": "Apple Inc. designs, manufactures, and markets smartphones, personal computers, tablets, wearables, and accessories worldwide. The company serves consumers, and small and mid-sized businesses; and the education, enterprise, and government markets.",
  "website": "https://www.apple.com",
  "headquarters": "Cupertino, CA",
  "founded": "1976",
  "ceo": "Timothy D. Cook",
  "exchange": "NASDAQ",
  "financialMetrics": {
    "peRatio": 29.85,
    "pegRatio": 2.41,
    "priceToBook": 45.67,
    "priceToSales": 7.98,
    "dividendYield": 0.44,
    "beta": 1.29,
    "eps": 6.73,
    "revenue": 391035000000,
    "grossMargin": 0.4413,
    "operatingMargin": 0.2887,
    "netMargin": 0.2531,
    "roe": 1.4740,
    "roa": 0.2865,
    "debtToEquity": 1.96,
    "currentRatio": 0.93
  },
  "analystData": {
    "recommendationMean": 2.0,
    "recommendationKey": "buy",
    "numberOfAnalystOpinions": 38,
    "targetHighPrice": 250.0,
    "targetLowPrice": 180.0,
    "targetMeanPrice": 220.5,
    "targetMedianPrice": 225.0
  },
  "timestamp": "2025-06-28T18:42:12.471731"
}

Error Responses

{
  "error": "Invalid symbol",
  "message": "Symbol 'INVALID' not found",
  "code": 404
}

Use Cases

Get comprehensive company information for fundamental analysis:
# Research Apple's fundamentals
response = requests.get("https://api.example.com/api/v1/stock/AAPL/overview")
data = response.json()

# Check valuation metrics
pe_ratio = data["financialMetrics"]["peRatio"]
price_to_book = data["financialMetrics"]["priceToBook"]

# Analyst sentiment
recommendation = data["analystData"]["recommendationKey"]
target_price = data["analystData"]["targetMeanPrice"]
Analyze holdings across different sectors and industries:
portfolio = ["AAPL", "MSFT", "GOOGL", "TSLA"]
sector_allocation = {}

for symbol in portfolio:
    overview = get_stock_overview(symbol)
    sector = overview["sector"]
    sector_allocation[sector] = sector_allocation.get(sector, 0) + 1
Filter stocks based on financial metrics:
def screen_stocks(symbols, min_pe=None, max_pe=None, min_roe=None):
    filtered_stocks = []
    
    for symbol in symbols:
        overview = get_stock_overview(symbol)
        metrics = overview["financialMetrics"]
        
        if min_pe and metrics["peRatio"] < min_pe:
            continue
        if max_pe and metrics["peRatio"] > max_pe:
            continue
        if min_roe and metrics["roe"] < min_roe:
            continue
            
        filtered_stocks.append(symbol)
    
    return filtered_stocks
Compare multiple companies side by side:
def compare_companies(symbols):
    comparison = {}
    
    for symbol in symbols:
        overview = get_stock_overview(symbol)
        comparison[symbol] = {
            "name": overview["companyName"],
            "sector": overview["sector"],
            "market_cap": overview["marketCap"],
            "pe_ratio": overview["financialMetrics"]["peRatio"],
            "roe": overview["financialMetrics"]["roe"],
            "recommendation": overview["analystData"]["recommendationKey"]
        }
    
    return comparison

Rate Limits

This endpoint is subject to the same rate limits as other stock data endpoints:
  • YFinance: No official limits, but may be rate limited by Yahoo Finance
  • FMP: Based on your plan (250-10,000+ requests per day)

Data Sources

Primary: YFinance

  • Comprehensive company information
  • Financial metrics and ratios
  • Analyst recommendations
  • Real-time data updates

Fallback: FMP

  • Professional-grade data
  • Consistent API structure
  • Additional financial metrics
  • Reliable uptime