canonical: https://jentic.com/apis/multyplylabs.com/multyplylabs

# Multyplylabs SEC Fundamentals API

The SEC Fundamentals API serves normalized SEC EDGAR XBRL financial data for US public companies, keyed by CIK. It resolves a ticker or company name to a CIK for free, then returns reported facts mapped to 61 canonical concepts, clean annual statements with derived ratios such as gross margin, ROE, and debt-to-equity, and the filing index with direct document URLs. Further routes cover Form 4 insider transactions, 13F institutional ownership, FINRA short-volume ratios, a composite factor scorecard, industry benchmark percentiles, peer comparison, a fundamentals stock screener, and curated market-wide insights. Paid routes accept an API key or an x402 USDC payment, and the service is not affiliated with the U.S. Securities and Exchange Commission.

## For AI agents

Look up a US public company's CIK, then read its normalized SEC financials, filings, insider trades, institutional ownership, and peer benchmarks, or screen companies by metrics.

## Scope

Does not provide stock prices, place trades, or cover non-US or private companies. Use for normalized SEC filing data and fundamentals research on US public companies only.

## Capabilities

- Resolve a ticker, CIK, or company name to the SEC CIK for free
- Read clean annual income statement, balance sheet, cash flow, and ratios for a company by fiscal year
- Pull reported XBRL facts mapped to 61 canonical concepts with units, periods, and filing provenance
- List a company's 10-K, 10-Q, 8-K, Form 4, and other filings with direct document URLs
- Summarise Form 4 insider buying and selling, 13F institutional holder changes, and FINRA short-volume ratio
- Screen US public companies by metric filters such as gross_margin above 0.6 for a fiscal year
- Benchmark a metric against industry percentiles by SIC group and revenue size, or compare one company to its peers

## Use cases

### AI research agent answering fundamentals questions

An AI agent asked 'how have Apple's margins changed over five years' needs filed numbers, not a guess. Through Jentic the agent searches for 'get annual financial statements for a company', first calls the free company lookup to turn AAPL into a CIK, then loads the financials operation with its input schema and requests the fiscal-year range, with the API key injected at call time. It answers from statement rows and derived ratios such as gross margin and operating margin.

Example prompt: Call GET `/company/lookup` with q=AAPL, then GET `/company/{cik}/financials` with fy_from=2021 and fy_to=2025 and report gross margin per year

### Fundamentals stock screen

An investor building a watchlist starts from criteria rather than names. The screen route takes a fiscal year and a JSON list of metric, operator, and value filters, such as gross_margin above 0.6 and revenue above 1e9, and returns matching companies with names, tickers, industries, and the metric values. This is research data, not investment advice.

Example prompt: Call GET /screen with fy=2024 and filters [["gross_margin",">",0.6],["revenue",">",1e9]] and return the top 20 tickers

### Peer benchmarking for a valuation memo

An analyst needs to know whether a company's debt-to-equity or margins are unusual for its sector. The compare route places one company's metrics beside its industry cohort's percentiles for a fiscal year, and the aggregate route returns p10 to p90, mean, and company count for any metric by 2-digit SIC group and size bucket from micro to mega.

Example prompt: Call GET `/compare/{cik}` with fy=2024 for the company, then GET `/aggregate/{metric}` for gross_margin with industry=73 and size=large

### Insider and institutional positioning check

Before digging into a stock, a researcher checks who is buying. The insider route summarises recent Form 4 open-market buys versus sales with officer and director roles and 10b5-1 flags, the institutional route returns the 13F holder count and quarter-over-quarter change, and the short route gives the FINRA daily short-volume ratio over roughly 20 trading days.

Example prompt: Call GET `/company/{cik}/insider` with months=6, GET `/company/{cik}/institutional`, and GET `/company/{cik}/short` for one CIK and summarise the positioning

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/company/lookup` | Find a company's CIK |
| GET | `/company/{cik}/financials` | Get annual statements and ratios |
| GET | `/company/{cik}/facts` | Get normalized XBRL facts |
| GET | `/company/{cik}/filings` | List SEC filings |
| GET | `/company/{cik}/insider` | Get Form 4 insider transactions |
| GET | `/screen` | Screen companies by metrics |
| GET | `/compare/{cik}` | Compare a company with its peers |
| GET | `/aggregate/{metric}` | Get industry benchmark percentiles |

## Key resources

- **Company** — Free CIK lookup, plus per-CIK facts, financials, filings, insider, institutional, short, and signal routes
- **Screen and compare** — Metric-filter screener, peer comparison, and industry benchmark percentiles
- **Insights** — Free list of curated market-wide analyses and a keyed route to run one by name
- **Catalog and spotlight** — Free route listing and top Buffett Quality Score companies

## AI readiness

This API is usable in Jentic One now. Its AI-readiness score against Jentic's framework shows where it stands today and where improvements would make it even easier for agents to use.

- **Score:** 63 / 100
- **Maturity:** AI-Aware
- **Dimensions:**
  - Foundational Compliance: 76 / 100
  - Developer Experience & Jentic Compatibility: 62 / 100
  - AI-Readiness & Agent Experience: 49 / 100
  - Agent Usability: 94 / 100
  - Security: 50 / 100
  - AI Discoverability: 68 / 100
- **View full report:** https://jentic.com/apis/multyplylabs.com/multyplylabs/scorecard
- **How the score is calculated:** https://docs.jentic.com/reference/api-readiness-framework/overview/
- **More about the dimensions:** https://docs.jentic.com/reference/api-readiness-framework/specification/#dimensional-model-overview

### Score it yourself

Every API in the directory is allowlisted, so you can re-score it with no key required.

- **Score your own API:** https://jentic.com/scorecard.md
- **Scoring CLI agent skill:** https://github.com/jentic/jentic-api-scorecard/blob/main/skills/jentic-api-scorecard/SKILL.md

```sh
npx @jentic/api-scorecard-cli score <openapi-url>
```

## Why Jentic

- **Setup:** Wiring SEC Fundamentals by hand means resolving tickers to CIKs, sending an X-API-Key on paid routes, and handling a 402 x402 payment challenge if the key is missing. Through Jentic you install once, import SEC Fundamentals from the API Directory, store the key once, and your agent calls it.
- **Permission scoping:** SEC Fundamentals puts the company's CIK in the URL path, as in `/company/{cik}/financials`, so a rule can pin your agent to one company and the operations you pick. You choose the operations it may call, so market-wide routes like the screener and curated insights are not included unless you add them.
- **Credential handling:** Your SEC Fundamentals API key is stored once, encrypted, by your own Jentic One instance and injected at execution time. It never enters the agent's prompt, logs, or context.
- **Discovery method:** Agents search Jentic by intent such as 'get annual financial statements for a company' or 'screen stocks by gross margin', and Jentic returns the matching SEC Fundamentals operation with its input schema, including the cik, fy, and filters parameters, so the agent calls it correctly.

## Related APIs

- **SEC EDGAR API** — The SEC's own EDGAR data endpoints for submissions and XBRL company facts
- **Alpha Vantage** — Stock prices, technical indicators, and company fundamentals
- **Polygon** — Market data API for prices, trades, and aggregates

## FAQ

### What authentication does the SEC Fundamentals API use?

Per its OpenAPI spec, the paid routes declare an API key sent in the X-API-Key header, and a request with a valid key is served without payment. Without a key, a paid route answers 402 with an x402 USDC payment challenge. The health, catalog, company lookup, spotlight, and insights list routes are free and need neither. Through Jentic your key is held by your own instance and injected at call time.

### How do I find a company's CIK with the SEC Fundamentals API?

Call GET `/company/lookup` with q set to a ticker such as AAPL or BRK.B, CIK digits, or part of a company name. It is free, returns up to 25 matches with cik, name, tickers, and SIC description, and the CIK it returns is what every `/company/{cik}` route takes.

### What are the rate limits for the SEC Fundamentals API?

The OpenAPI spec does not specify rate limits. Contact help@multyplylabs.com, the support address named in the spec, or see https://sec.multyplylabs.com for current limits and API key terms.

### How do I pull a company's annual financials through Jentic?

Search Jentic for 'get annual financial statements for a company', load GET `/company/lookup` to resolve the ticker, then load GET `/company/{cik}/financials` and execute it with the CIK and an optional fy_from and fy_to range. To run it on your own infrastructure, install Jentic One from its GitHub repo.

### Can I limit what my agent is allowed to do with the SEC Fundamentals API?

Yes. Write a rule that allows only GET `/company/lookup` and the financials route for one CIK, such as `/company/320193/financials`, and the agent can research that company's statements but cannot run screens or market-wide insights on your key. Every call is logged so you can see what it queried.

### Is the SEC Fundamentals API investment advice?

No. The spec labels the signal, insider, institutional, short, and insight routes as research data, not investment advice, and states that Multyply Labs is not affiliated with the U.S. Securities and Exchange Commission.
