# CCA Corporate Entities API Canonical public corporate identity, identifier resolution, provenance, relationships, financial facts, workforce facts, history, and changes. Base API: https://corporations.datasourceapi.com/api/v1 OpenAPI JSON: https://corporations.datasourceapi.com/openapi.json OpenAPI YAML: https://corporations.datasourceapi.com/api/v1/openapi.yaml Interactive docs: https://corporations.datasourceapi.com/api/v1/docs Status: https://corporations.datasourceapi.com/api/v1/status Limitations: https://corporations.datasourceapi.com/api/v1/limitations API catalog: https://corporations.datasourceapi.com/.well-known/api-catalog Public reads are unauthenticated and mirror-only. Every response includes source, cycle, cache, upstream, timing, and limitation metadata. Canonical IDs use the neutral ecgc- namespace; entity classifications are mutable facts. ## SEC EDGAR filing mirror Every filing EDGAR has disseminated since 1993, across all form types, not only the financial ones. Amendments are separate filings, so the historical record is complete rather than collapsed to a latest version. Search filings: https://corporations.datasourceapi.com/api/v1/filings/search?q= Filter filings: https://corporations.datasourceapi.com/api/v1/filings?cik=&form=&filed_from=&filed_to= Form and year counts: https://corporations.datasourceapi.com/api/v1/filings/facets?by=form Catalogue coverage: https://corporations.datasourceapi.com/api/v1/filings/coverage One filing: https://corporations.datasourceapi.com/api/v1/filings/{accession} Archived documents: https://corporations.datasourceapi.com/api/v1/filings/{accession}/documents Document bytes: https://corporations.datasourceapi.com/api/v1/filings/{accession}/documents/{sequence} Filings for an entity: https://corporations.datasourceapi.com/api/v1/entities/{mci}/filings Accession numbers are accepted with or without dashes. Document bytes are served from immutable storage and carry the archived SHA-256 in X-Archive-Sha256. A filing whose documents are not archived yet reports archive_state and its SEC source_url instead of being proxied on demand, so a 404 there means not-yet-mirrored, not missing upstream. Use /filings/coverage to see how much of the corpus is held before relying on a negative result.