Skip to main content

Overview

The Companies API provides access to comprehensive company profiles, financial metrics, and segment data from PostgreSQL databases.

Search Companies (Public)

Search for companies by ticker, name, sector, or industry without authentication. Endpoint: GET /companies/public/search Authentication: Not required
cURL
curl "https://api.financeagent.com/companies/public/search?query=Tesla&limit=8"
query
string
required
Search term (ticker, company name, sector, or industry)
limit
integer
default:8
Maximum results to return (1-20)

Response

success
boolean
Whether the search was successful
companies
array
Array of matching companies
total_found
integer
Number of results returned
execution_time
number
Query execution time in seconds

Search Companies (Authenticated)

Search with higher limits and additional features. Endpoint: GET /companies/search Authentication: Required
cURL
curl -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  "https://api.financeagent.com/companies/search?query=tech&limit=50"
query
string
required
Search term
limit
integer
default:50
Maximum results (1-200)

Get Company Details

Retrieve comprehensive company information including financials. Endpoint: GET /companies/{symbol} Authentication: Required
cURL
curl -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  https://api.financeagent.com/companies/AAPL

Response

success
boolean
Request status
company
object
Complete company data

Get TTM Metrics

Retrieve Trailing Twelve Months (TTM) financial metrics. Endpoint: GET /companies/{symbol}/ttm-metrics Authentication: Required
cURL
curl -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  https://api.financeagent.com/companies/MSFT/ttm-metrics

Response

success
boolean
Request status
symbol
string
Ticker symbol
metrics
object
TTM financial metrics

Get Product Segments

Retrieve revenue breakdown by product segment. Endpoint: GET /companies/{symbol}/product-segments Authentication: Required
cURL
curl -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  https://api.financeagent.com/companies/AAPL/product-segments

Response

success
boolean
Request status
symbol
string
Ticker symbol
segment_type
string
“product”
segments
array
Array of product segments
summary
object
Segment summary statistics

Get Geographic Segments

Retrieve revenue breakdown by geographic region. Endpoint: GET /companies/{symbol}/geographic-segments Authentication: Required
cURL
curl -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  https://api.financeagent.com/companies/GOOGL/geographic-segments

Response

Same structure as product segments, but with geographic regions:
{
  "success": true,
  "symbol": "GOOGL",
  "segment_type": "geographic",
  "segments": [
    {
      "segment": "United States",
      "revenue": 152300000000,
      "formatted_revenue": "$152.30B",
      "percentage": 47.5,
      "year": 2024
    },
    {
      "segment": "EMEA",
      "revenue": 98700000000,
      "formatted_revenue": "$98.70B",
      "percentage": 30.8,
      "year": 2024
    }
  ]
}

Get TTM History

Retrieve historical TTM data for multiple quarters. Endpoint: GET /companies/{symbol}/ttm-history Authentication: Required
cURL
curl -H "Authorization: Bearer YOUR_JWT_TOKEN" \
  "https://api.financeagent.com/companies/NVDA/ttm-history?quarters=5"
quarters
integer
default:5
Number of quarters to retrieve (1-10)

Response

success
boolean
Request status
quarters
array
Array of quarterly data

Example: Full Company Analysis

Python
import requests

token = "YOUR_JWT_TOKEN"
headers = {"Authorization": f"Bearer {token}"}
base_url = "https://api.financeagent.com/companies"

# 1. Search for company
response = requests.get(
    f"{base_url}/search",
    params={"query": "Apple", "limit": 1},
    headers=headers
)
symbol = response.json()["companies"][0]["symbol"]

# 2. Get detailed company info
details = requests.get(f"{base_url}/{symbol}", headers=headers).json()

# 3. Get TTM metrics
ttm = requests.get(f"{base_url}/{symbol}/ttm-metrics", headers=headers).json()

# 4. Get product segments
segments = requests.get(
    f"{base_url}/{symbol}/product-segments",
    headers=headers
).json()

print(f"Company: {details['company']['companyName']}")
print(f"Revenue: ${ttm['metrics']['revenueTtm']:,.0f}")
print(f"Top Segment: {segments['segments'][0]['segment']}")

Build docs developers (and LLMs) love