Every endpoint, grouped by the question it answers
This page is generated from the same OpenAPI document the API serves, so it lists what is live rather than what was true when someone last wrote it down.
- Base URL
- https://api.arche.fi
- Authentication
- X-Api-Key header
- Endpoints
- 71 across 8 groups
Resolve a company
Which company is this ticker, and was it the same company then?
Tickers get reassigned and companies change names. Resolution is by CIK, and the identity history says which name and ticker applied on the date you are asking about.
curl -H "X-Api-Key: $ARCHE_API_KEY" \ "https://api.arche.fi/v1/edgar/companies:resolve?ticker=MSFT"
6 endpoints
- GET/v1/edgar/companies:resolve
Resolve canonical CIK by ticker
- GET/v1/edgar/companies/{cik}
Get canonical EDGAR company profile
- GET/v1/identity/companies/{cik}
List company identity history by CIK
- GET/v1/identity/resolve
Resolve a ticker to one company as of a date
- GET/v1/identity/search
Search companies by ticker, CIK, or name
- GET/v1/identity/tickers/{ticker}
List ticker identity history
Read a statement as of a date
What did we know on this date?
Statements come back as they stood at the end of a business date, keyed to the dates filings were accepted. A backtest sees what the market saw on that day and nothing filed after it.
curl -H "X-Api-Key: $ARCHE_API_KEY" \ "https://api.arche.fi/v1/edgar/as-of/2024-03-31/financials/0000320193"
9 endpoints
- GET/v1/edgar/as-of/{date}/financials/{cik}
Get EDGAR financials as-of a business date
- GET/v1/edgar/companies/{cik}/disclosures
List a company's narrative disclosures
- GET/v1/edgar/companies/{cik}/filings
List EDGAR filings for a company
- GET/v1/edgar/companies/{cik}/filings/{accession_id}
Get EDGAR filing detail
- GET/v1/edgar/companies/{cik}/filings/{accession_id}/statements
Get statement versions for a filing
- GET/v1/edgar/companies/{cik}/financial-state/time-series
Get aligned financial-state time series
- GET/v1/edgar/companies/{cik}/statements
List EDGAR statement versions for a company
- GET/v1/edgar/disclosures/{disclosure_id}
Read one narrative disclosure
- GET/v1/fundamentals/normalized-statements
Normalized EDGAR statement with version history
See what a restatement changed
What changed, and did it matter?
Restatements add versions instead of overwriting them. Deltas are computed per metric between any two versions with a materiality classification, and alert events record each one as it lands.
curl -H "X-Api-Key: $ARCHE_API_KEY" \ "https://api.arche.fi/v1/edgar/restatement-alerts"
8 endpoints
- GET/v1/analysis/version-delta
Version-aware metric delta
- GET/v1/edgar/companies/{cik}/statements/restatement-timeline
Get restatement metric timeline for a statement identity
- GET/v1/edgar/restatement-alerts
List restatement alert events
- GET/v1/edgar/restatement-alerts/{restatement_alert_event_id}
Get one restatement alert event
- GET/v1/edgar/statements/{statement_version_id}/fact-revisions
Get fact revision ledger for a statement version
- GET/v1/edgar/statements/restatements/delta
Get restatement delta between two statement versions
- GET/v1/edgar/statements/restatements/ledger
Get restatement ledger for a statement identity
- GET/v1/fundamentals/restatement-delta
Restatement delta for a single statement
Trace a number back to the filing
Where did this number come from?
Every value carries its chain: the filed XBRL fact, the mapping that named it, and any calculation applied on top. Reconciliation answers the separate question of whether the statement it sits in adds up.
curl -H "X-Api-Key: $ARCHE_API_KEY" \ "https://api.arche.fi/v1/edgar/statements/<statement_version_id>/metrics/TOTAL_ASSETS/audit-chain"
6 endpoints
- GET/v1/edgar/companies/{cik}/completeness
Get EDGAR completeness summary for a company
- GET/v1/edgar/companies/{cik}/statements/overrides/trace
Inspect XBRL mapping overrides for a statement identity
- GET/v1/edgar/reconciliation/ledger
Get reconciliation ledger for a statement identity
- GET/v1/edgar/reconciliation/summary
Get reconciliation summary for a fiscal-year window
- GET/v1/edgar/statements/{statement_version_id}/metrics/{metric_name}/audit-chain
Get metric audit chain for a statement version
- GET/v1/edgar/statements/{statement_version_id}/metrics/{metric_name}/provenance
Get simplified metric provenance for a statement version
Check a statement before you trust it
Does this actually reconcile?
Accounting checks return PASS, WARNING or FAIL with the expected and actual values side by side, and the data-quality overlay marks facts that sit far from their own history.
curl -H "X-Api-Key: $ARCHE_API_KEY" \ "https://api.arche.fi/v1/edgar/companies/0000320193/statements/dq/overlay?statement_type=INCOME_STATEMENT&fiscal_year=2024&fiscal_period=FY&version_sequence=1"
5 endpoints
- GET/v1/analysis/metric-drift
Metric drift analytics
- GET/v1/data-quality/issues
List public data-quality issues
- GET/v1/edgar/companies/{cik}/statements/dq/overlay
Get a normalized statement with DQ overlay
- POST/v1/edgar/companies/{cik}/statements/dq/run
Run data-quality checks for a normalized statement
- GET/v1/fundamentals/normalized-statements/dq-overlay
Normalized statement with data-quality overlay
Pull metrics a model can use
Can this go straight into a model?
Normalized metrics, derived metrics and named bundles at Decimal precision, with macro series for context. A metric that cannot be computed says why rather than returning a silent null.
curl -H "X-Api-Key: $ARCHE_API_KEY" \ "https://api.arche.fi/v1/edgar/derived-metrics/time-series?ciks=0000320193,0000789019&statement_type=INCOME_STATEMENT"
16 endpoints
- GET/v1/edgar/companies/{cik}/metric-bundles/{bundle_code}/time-series
Get filing-based metric bundle time series
- GET/v1/edgar/companies/{cik}/metrics/{metric}/time-series
Get normalized metric time series
- GET/v1/edgar/derived-metrics/catalog
List derived metrics catalog
- GET/v1/edgar/derived-metrics/time-series
Get derived metrics time series
- GET/v1/edgar/metric-bundles
List filing-based metric bundles
- GET/v1/fundamentals/companies/{cik}/metrics/{metric}/time-series/real
Inflation-adjusted EDGAR metric time series
- GET/v1/fundamentals/derived/time-series
Derived metrics time series
- GET/v1/fundamentals/macro/context/{target_date}
Macro context for a date
- GET/v1/fundamentals/macro/series
Approved macro series registry
- GET/v1/fundamentals/macro/series/{series_code}
Approved macro series observations
- GET/v1/fundamentals/time-series
Fundamentals time series
- GET/v1/metrics/definitions
List metric definitions
- GET/v1/metrics/definitions/{metric}
Get one metric definition
- GET/v1/metrics/segments
List segment/geography metric disclosures
- GET/v1/views/metrics
List registered metric views (bundles)
- GET/v1/views/metrics/{bundle_code}
Get derived metrics time series for a metric view
Model a company
What do the ratios and growth rates look like, and what moved them?
Periods, trailing twelve months, growth, ratios and multi-year inputs are computed from the same reconciled statements, and point-in-time universe snapshots keep a backtest honest.
curl -H "X-Api-Key: $ARCHE_API_KEY" \ "https://api.arche.fi/v1/modeling/companies/<company_id>/ratios?as_of=<as_of>"
9 endpoints
- GET/v1/ai/companies/{company_id}/anomaly-explanations
Anomaly explanations
- GET/v1/ai/companies/{company_id}/narratives
Financial narratives
- GET/v1/analysis/model-impact
Model-aware analytics
- GET/v1/modeling/companies/{company_id}/growth
Modeling growth
- GET/v1/modeling/companies/{company_id}/multi-year
Modeling multi-year inputs
- GET/v1/modeling/companies/{company_id}/periods
Modeling periods
- GET/v1/modeling/companies/{company_id}/ratios
Modeling ratios
- GET/v1/modeling/companies/{company_id}/ttm
Modeling TTM
- POST/v1/modeling/universe/pit-snapshot
Universe point-in-time snapshot
Check coverage, replay a query
What is covered, and can I run this again next quarter?
Coverage is queryable per company and per metric rather than described in a sales deck, and a deterministic query returns a replay token that reproduces it exactly.
curl -H "X-Api-Key: $ARCHE_API_KEY" \ "https://api.arche.fi/v1/coverage/companies"
12 endpoints
- GET/health/readiness
Readiness
- GET/health/z
Liveness
- GET/v1/coverage/companies
List company coverage summaries
- GET/v1/coverage/companies/{cik}
Get company coverage summary
- GET/v1/coverage/metrics
List metric coverage statistics
- GET/v1/coverage/metrics/{metric}
Get metric coverage summary
- GET/v1/coverage/selection
Show the companies this plan covers
- POST/v1/coverage/selection/release
Release one company's coverage slot
- POST/v1/query/execute
Execute a deterministic public query
- GET/v1/query/replay/{replay_token}
Replay a query from its replay token
- GET/v1/system/ingestion/status
Get ingestion schedule status.
- GET/v1/system/metadata
Get system metadata.
Request and response schemas live in the reference
Every route above is documented there with its parameters, response envelope, error codes and pagination, generated from the same OpenAPI document as this page.