API Documentation

Search 4.0M+ SEC filing sections, pull financial statements, track insider trades, monitor institutional ownership, and get earnings actuals — all from primary SEC sources.

4.0M+
Validated Filing Sections
5,600+
Tracked Issuers
20,000+
Analysis Patterns
2.4M+
Financial Points

Every Number Links to the Source Filing

Every data point returned by ETSquare includes a direct SEC.gov URL to the original filing. Revenue figures, insider trades, institutional positions, operating KPIs — click through to verify any number against the sworn disclosure on EDGAR. No intermediary. No paraphrase.

Filing-Level Provenance

Search results, financial statements, earnings, KPIs, insider trades, and institutional holdings all return sec_url — a direct link to the filing on SEC.gov.

Certified Disclosures

SEC filings are signed under penalty of law by corporate officers. Every data point traces to a legal document, not a model output or third-party estimate.

One-Click Verification

See a number that matters? Click the SEC.gov link. You're reading the same 10-K the CFO signed. Trust builds in seconds, not days.

Example Response

{
  "ticker": "JPM",
  "net_interest_margin": 2.63,
  "extraction_id": "4DD8...",
  "sec_url": "https://www.sec.gov/Archives/edgar/data/19617/000001961726000157/jpm-20251231.htm"
}

Claude MCP Integration

The fastest way to use ETSquare. Connect directly to Claude Desktop, Claude Code, or any MCP-compatible client. MCP uses deterministic cited retrieval only; it does not request LLM synthesis from the backend.

1

Get an API key

Create a developer key from the API Keys page.

2

Add to your config

Copy the JSON below into your Claude Desktop or Claude Code MCP config file.

3

Ask Claude

"Search SEC filings for going concern warnings" — Claude will use the tools automatically.

json
// Add to your Claude Desktop config:
// macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
// Windows: %APPDATA%\Claude\claude_desktop_config.json

// ── macOS / Linux ──
{
  "mcpServers": {
    "etsquare-sec": {
      "command": "npx",
      "args": ["-y", "@etsquare/mcp-server-sec"],
      "env": {
        "ETSQUARE_API_KEY": "YOUR_API_KEY"
      },
      "timeout": 600
    }
  }
}

// ── Windows ──
{
  "mcpServers": {
    "etsquare-sec": {
      "command": "cmd",
      "args": ["/c", "npx", "-y", "@etsquare/mcp-server-sec"],
      "env": {
        "ETSQUARE_API_KEY": "YOUR_API_KEY"
      },
      "timeout": 600
    }
  }
}

Available Tools

etsquare_search

Search SEC filings for cited passages across 10-K, 10-Q, 8-K. Every result includes sec_url linking directly to the filing on SEC.gov.

etsquare_financial_statements

Canonical income statement, balance sheet, and cash flow from XBRL data. Each period links to its source 10-K or 10-Q on SEC.gov.

etsquare_insider_trades

Insider buying and selling from SEC Form 4. Every transaction links to the original Form 4 filing on EDGAR.

etsquare_institutional_holdings

Institutional ownership from 13F filings. Each holder links to the manager's 13F filing on SEC.gov for verification.

etsquare_earnings_actuals

Issuer-reported revenue, EPS, net income, and forward guidance from 8-K press releases. Each metric links to the source 8-K filing.

etsquare_discover_metrics

Discover XBRL metrics template IDs from a business question. 752 templates across all sectors.

etsquare_execute_metrics

Execute XBRL templates for structured financial data. Returns numbers, ratios, time series — each row links to the source filing.

etsquare_lookup_company

Resolve company name to ticker, CIK, and SIC code. Fuzzy matching supported.

etsquare_resolve_ticker_cohort

Resolve natural-language cohort questions into ranked PRIMARY/ADJACENT tickers and return WHO/WHAT grounding, `recommended_search_payload`, and refinement signals (`ungrounded_query_spans`, `refinement_needed`).

etsquare_get_chunk

Retrieve full text of a specific filing section by chunk ID. Includes sec_url to the source filing for verification.

etsquare_get_chunk_context

Get surrounding sections for a chunk with sec_url — see what comes before and after a cited passage.

etsquare_compare

Compare companies side-by-side on financial metrics, filing language, or KPIs. All citations link to source filings.

etsquare_query_kpis

Screen and compare non-GAAP operating KPIs across 15+ sectors. Every row includes sec_url — verify any metric against the source 10-K/10-Q.

etsquare_kpi_extractions

Get full KPI detail for a ticker with sec_url and source_chunk_ids. Trace any extracted number to the exact filing paragraph on SEC.gov.

etsquare_weekly_brief

Curated weekly intelligence brief with top stories, sector themes, and notable filings. Every entry links to the source filing.

etsquare_company_research

Full research packet for one company: financials, earnings, MD&A, risk factors, insider trades, institutional holders, and KPIs — all with SEC.gov provenance in a single call.

Beta

ETSquare API is in public preview. All endpoints are free during beta with rate limits applied. Pricing will be announced based on usage patterns.

Authentication

Pass your key via the X-API-Key header. API v1 endpoints require a key.

X-API-Key: et_dev_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx_xxxx
Publicet_pub_...

Client-side apps with domain restrictions. Read-only search access.

60 req/min

Developeret_dev_...

Server-side and MCP integrations. Full API access including XBRL.

600 req/min

API Reference

Base URL: https://etsquare.ai. All request/response bodies are JSON. API v1 search and MCP return deterministic cited retrieval only; backend synthesis is forced off on those paths.

Code Examples

Copy-paste examples to start searching in minutes.

json
// Add to your Claude Desktop config:
// macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
// Windows: %APPDATA%\Claude\claude_desktop_config.json

// ── macOS / Linux ──
{
  "mcpServers": {
    "etsquare-sec": {
      "command": "npx",
      "args": ["-y", "@etsquare/mcp-server-sec"],
      "env": {
        "ETSQUARE_API_KEY": "YOUR_API_KEY"
      },
      "timeout": 600
    }
  }
}

// ── Windows ──
{
  "mcpServers": {
    "etsquare-sec": {
      "command": "cmd",
      "args": ["/c", "npx", "-y", "@etsquare/mcp-server-sec"],
      "env": {
        "ETSQUARE_API_KEY": "YOUR_API_KEY"
      },
      "timeout": 600
    }
  }
}

Recommended Workflows

Combine cohort grounding, search, and structured endpoints for comprehensive SEC research.

Cohort Refinement Loop

1
Resolve initial cohortPOST /api/v1/cohort/resolve

Start with a natural-language question. Use response_mode="compact" for a caller-facing payload.

2
Check refinement signalsungrounded_query_spans

If refinement_needed=true, add boost_topic_terms / boost_anchor_terms and re-run until the WHO/WHAT terms match intent.

3
Run precision searchrecommended_search_payload

Pass the returned payload to /api/v1/search with scope_lock=COMPANY for high-precision cited retrieval.

Filing Research

1
Search filingsPOST /api/v1/search

Use mode_lock and scope_lock for deterministic retrieval. Returns cited filing passages with accession numbers.

2
Pull financial contextPOST /api/v1/financials

Get canonical income statement, balance sheet, or cash flow to accompany the qualitative findings.

3
Check insider activityPOST /api/v1/insider/transactions

See if management is buying or selling around the filing date. Strengthens or weakens the thesis.

Earnings Analysis

1
Get earnings actualsPOST /api/v1/earnings/actuals

Revenue, EPS, net income, and forward guidance extracted from 8-K press releases. Faster than XBRL by 2-3 weeks.

2
Compare with XBRLPOST /api/v1/metrics/execute

Run XBRL templates for detailed line items, ratios, and multi-period trends once 10-Q/10-K is filed.

3
Check institutional positioningPOST /api/v1/institutional/holdings

See which institutional managers hold the stock and their portfolio concentration.

Operating KPI Analysis

1
Screen KPIsPOST /api/v1/kpis/query

Compare non-GAAP operating KPIs across tickers. "Show me all banks where NIM > 3%" or "SaaS companies by ARR". 15+ sectors, 950+ extractions.

2
Get extraction detailPOST /api/v1/kpis

Retrieve full KPI payload + source_chunk_ids for any ticker. The provenance bridge from numbers to filing text.

3
Read source textPOST /api/v1/chunks/context

Fetch the exact MD&A paragraph where the KPI was reported. Verify any number in seconds.

XBRL Metrics Discovery

1
Discover templatesPOST /api/v1/metrics/discover

Find XBRL template IDs from a business question. 1,514 templates across revenue, margins, EPS, sector KPIs.

2
Execute templatePOST /api/v1/metrics/execute

Run the template with bind_params (ticker, year range) to get structured tabular data.

3
Resolve tickersGET /api/v1/companies/lookup

Fuzzy-match company names to official SEC tickers and SIC codes before querying.