Tutorials

Quickstart

Zero to a real SEC response in about five minutes. You'll resolve a company name to its CIK, then pull that company's reported 13F holdings — two calls, real data, nothing to install but an API key.

Get your API key

Sign up for a free account. No credit card required.

Sign Up / Sign In Rate limits depend on your plan — see pricing

After signing in, copy your API key from the dashboard. Every request carries it as a Bearer token in the Authorization header. Wherever you see YOUR_API_KEY below, paste yours in.

Find a company by name

Start with a name, not an ID. SEC filings are keyed by a CIK — a number EDGAR assigns to each filer — so the first call resolves a name to that number. Search for Berkshire Hathaway:

curl "https://api.financeapis.dev/v1/edgar/filers/search?q=berkshire" \
  -H "Authorization: Bearer YOUR_API_KEY"
Response
{
  "filers": [
    {
      "cik": "0001067983",
      "name": "BERKSHIRE HATHAWAY INC",
      "ticker": "BRK-B",
      "exchange": "NYSE"
    }
  ]
}

Note the cik in the response: 0001067983. That's the only value you carry into the next call.

Get the 13F holdings

A 13F lists what an institutional manager holds — every investment manager with over $100M in assets files one each quarter. Pass the CIK you just got, plus a quarter, and you get the positions back as JSON:

curl "https://api.financeapis.dev/v1/edgar/forms/13f/holdings/0001067983/2024-Q4" \
  -H "Authorization: Bearer YOUR_API_KEY"
Response (abbreviated)
{
  "cik": "0001067983",
  "name": "BERKSHIRE HATHAWAY INC",
  "period": "2024-Q4",
  "holdings": [
    {
      "nameOfIssuer": "APPLE INC",
      "cusip": "037833100",
      "value": 75124000,
      "shares": 300000000
    },
    {
      "nameOfIssuer": "COCA COLA CO",
      "cusip": "191216100",
      "value": 24472000,
      "shares": 400000000
    }
  ]
}

That's Berkshire's reported book for Q4 2024 — Apple and Coca-Cola, with share counts and values, straight from the filing. You called two endpoints, fed the first result into the second, and never touched EDGAR's raw formats. That's the whole pattern: resolve a name, then query by CIK.

Next steps