Skip to main content
Corpus is data infrastructure for financial agents, research systems, and product teams. Connect to structured market data, normalized financial statements, regulatory filings, annual reports, news, and court judgments through one stable API. Corpus ingests SEC EDGAR directly for US filing-derived data and preserves the source identity, timestamps, and processing state needed to audit a result. The production origin has no version prefix:
United States and India data are separate by design:
  • /us/* uses SEC CIKs, tickers, accession numbers, EDGAR forms, and US financial-statement models.
  • /india/* uses ISINs, NSE symbols, BSE codes, annual-report artifacts, publisher feeds, and court identifiers.
This separation prevents a US identifier or schema from being forced onto Indian data. Fields without an authoritative value remain null.
Corpus is a primary-source provider for SEC-derived data: filings, XBRL facts, Form 4 transactions, Form 13F holdings, and filing events are collected from EDGAR. Other datasets use named public or licensed sources documented in Data Provenance.

Build with Corpus

REST API

Authenticate and make your first US or India request in a few minutes.

OpenAPI specification

Generate clients and tools from the machine-readable production contract.

MCP server

Connect compatible agents to read-only US, India, and internal China tools.

Document search

Search US filing sections and Indian annual reports or judgments with source identifiers.

Point-in-time reads

Reconstruct what Corpus could have known at a requested cutoff.

Data provenance

Trace records to EDGAR and named public, licensed, or curated sources.

What you can access

United States

  • Companies - company identity keyed by CIK, with ticker, exchange, SIC fields, and the SEC filing URL when available.
  • Historical prices - daily OHLCV records with observation and knowledge timestamps.
  • Financial statements - normalized income statements, balance sheets, and cash-flow statements derived from SEC XBRL.
  • As-reported financials - accession-level presentation data that preserves issuer labels and statement hierarchy.
  • Fundamentals ledger - the ingested XBRL concept projection, including concepts that do not map to the normalized taxonomy. It is not a lossless context-and-unit copy of every SEC fact.
  • SEC filings - filing metadata, available raw or normalized content, accession manifests, XBRL files, and structured filing items such as 10-K Item 1A.
  • Ownership and events - Form 4 insider transactions, Form 13F institutional holdings, and parsed 8-K or 6-K events.
  • Filing search - evidence linked to accession numbers and filing sections.
Start with the United States API, retrieve a 10-K, or analyze financial statements.

India

  • Securities - instruments keyed by ISIN, with NSE symbol and BSE code where a source-backed mapping exists.
  • Historical prices and exports - daily OHLCV reads plus governed CSV, XLSX, and Parquet exports.
  • Annual reports - artifact metadata, source PDFs, normalized text, OCR indicators, and document search.
  • Financial news - publisher-syndicated headlines, links, timestamps, summaries, and categories. Corpus does not scrape full article bodies for this dataset.
  • Court judgments - court and case metadata, available judgment PDFs and text, court facets, and search.
Start with the India API or search documents.

Shared services

  • Catalog - GET /catalog returns the enabled datasets, routes, and required scopes without authentication.
  • Ask - POST /ask runs governed natural-language retrieval across the jurisdictions allowed by the key. It requires rag:search plus at least one country scope.
Dataset availability is jurisdiction-specific, and EDGAR metadata coverage is much broader than processed document and section coverage. Check content_status before requesting filing content. Corpus does not publish India fundamentals or US news and judgments under the current contract. See Coverage for source ranges, processing status, and known gaps.

Data formats

  • Structured - typed JSON with snake-case fields and stable resource names such as income_statements, filings, securities, and judgments.
  • Normalized - SEC XBRL concepts mapped into a versioned Corpus taxonomy so common line items can be compared across issuers and periods.
  • As reported - issuer labels, values, accessions, and presentation hierarchy preserved without replacing the source representation.
  • Document content - raw or normalized filing text, source annual-report and judgment PDFs, extracted text, and section-level filing items.
  • Point in time - as_of cutoffs and knowledge_time fields separate when an event occurred from when Corpus could have known it.
Collection endpoints generally use a resource-named JSON envelope and a meta object. Binary PDF and export routes, filing-content routes, and shared endpoints use contracts suited to their resource. The OpenAPI specification is authoritative for each response.

Built for

  • AI financial agents and retrieval pipelines
  • Fundamental and quantitative research
  • Portfolio, risk, and evidence-review systems
  • Fintech product backends and frontend server routes
  • Reproducible analysis that must avoid look-ahead bias

Design principles

  • Jurisdiction-native models - US, India, and China identifiers, documents, and permissions remain separate.
  • Source traceability - records retain stable source identities such as CIK, accession number, ISIN, artifact ID, or judgment ID.
  • Point-in-time correctness - effective dates and knowledge timestamps are modeled separately.
  • Machine-first contracts - predictable paths, typed schemas, snake-case fields, and a published OpenAPI contract.
  • Explicit processing state - pending or unavailable filing content is reported instead of being silently treated as complete.
  • Honest nullability - Corpus does not invent sector, location, identifier mappings, or document availability to fill a schema.

Start here

  1. Follow the Quick Start to make an authenticated request.
  2. Connect a compatible agent through the MCP server, when appropriate.
  3. Read Coverage to choose the right country and dataset.
  4. Review Data Provenance to understand where each record originates.
  5. Use the API reference in the sidebar for the complete request and response contract.