API Reference

Query financial metrics for any public or private company. All responses include a source URL and confidence score.

Base URL

https://api.companyfinancials.io/v1

Authentication

All requests require an API key in the X-Api-Key header. Get a free key →

Endpoints

POST/company/lookup

Retrieve revenue, employee count, and financial metrics for a single company.

ParameterTypeDescription
companyNamestringRequired. Company name, e.g. "Apple Inc."
yearstringOptional. Fiscal year, e.g. "2024". Defaults to last full year.
countrystringOptional. ISO country code, e.g. "US". Improves accuracy.
metricsstring[]Optional. Subset of metrics to return. Defaults to revenue + employeeCount.

Request

curl
curl -X POST https://api.companyfinancials.io/v1/company/lookup \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -d '{
    "companyName": "Apple Inc.",
    "year": "2024"
  }'

Response

json
{
  "companyName": "Apple Inc.",
  "revenue": 391035000000,
  "revenueFormatted": "$391.04B",
  "currency": "USD",
  "year": "2024",
  "employeeCount": 161000,
  "source": "annual_report",
  "sourceUrl": "https://investor.apple.com/sec-filings/annual-reports/...",
  "confidence": 9
}
POST/company/batchStarter+

Retrieve metrics for multiple companies in a single request. Returns results in the same order as the input.

Request

curl
curl -X POST https://api.companyfinancials.io/v1/company/batch \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -d '{
    "companies": [
      { "companyName": "Apple Inc.", "year": "2024" },
      { "companyName": "Microsoft", "year": "2024" },
      { "companyName": "Google", "year": "2024" }
    ]
  }'
GET/company/cached/:companyName

Returns a previously cached result without consuming a lookup credit. Returns an empty object if not yet cached.

Request

curl
curl https://api.companyfinancials.io/v1/company/cached/Apple%20Inc. \
  -H "X-Api-Key: YOUR_API_KEY"

Deep search

Three-step pipeline for high-accuracy extraction directly from annual report PDFs. Or use POST /company/lookup with "depth": "deep" to run it automatically.

POST/company/deep/reports

Step 1: Find candidate annual report PDF URLs for a company.

Request

curl
curl -X POST https://api.companyfinancials.io/v1/company/deep/reports \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: YOUR_API_KEY" \
  -d '{ "companyName": "Stripe", "year": "2023" }'

Response

json
{
  "companyName": "Stripe",
  "reports": [
    {
      "url": "https://stripe.com/files/reports/stripe-annual-report-2023.pdf",
      "title": "Stripe Annual Report 2023",
      "confidence": 9
    },
    {
      "url": "https://stripe.com/files/reports/stripe-annual-report-2022.pdf",
      "title": "Stripe Annual Report 2022",
      "confidence": 8
    }
  ]
}
POST/company/deep/analyze-pdf

Step 2a: Read a PDF and identify which requested metrics are present.

ParameterTypeDescription
companyNamestringCompany name
urlstringPDF URL to analyze
metricsstring[]Metrics to look for
yearstringOptional. Fiscal year

Response

json
{
  "hasRevenue": true,
  "hasEmployeeCount": true,
  "relevantText": "Stripe processed $817 billion in total payment volume in 2023...",
  "pageNumbers": [12, 24, 38]
}
POST/company/deep/extract-text

Step 2b: Extract precise metric values from text returned by analyze-pdf.

ParameterTypeDescription
companyNamestringCompany name
textstringExtracted text from analyze-pdf
sourceUrlstringOriginal PDF URL
metricsstring[]Metrics to extract
yearstringOptional. Fiscal year

Response

json
{
  "companyName": "Stripe",
  "revenue": 14401000000,
  "revenueFormatted": "$14.4B",
  "currency": "USD",
  "year": "2023",
  "employeeCount": 8000,
  "source": "annual_report",
  "sourceUrl": "https://stripe.com/files/reports/stripe-annual-report-2023.pdf",
  "confidence": 9
}

Confidence scores

Every metric includes a confidence score from 1–10.

9–10Extracted directly from audited financial statements
7–8Sourced from official company communications
5–6From secondary sources, verify before use
1–4Estimated or inferred, manual review recommended

Rate limits

PlanMonthly lookupsPer-minuteBatch
Free1010/min
Starter500100/min
Pro2,000100/min
EnterpriseUnlimitedCustom

Ready to start querying financial data?

Get a free API key, 10 lookups/month