Skip to main content

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.