Guides

Work with point-in-time data

Use as-of cutoffs and knowledge timestamps to avoid look-ahead bias.

An observation date says when something happened. A knowledge timestamp says when Corpus could have known it. They are not interchangeable.

Pass an as_of cutoff when reproducing a historical decision:

curl "https://corpus-api.onera.app/us/prices?ticker=AAPL&start_date=2025-01-01&end_date=2025-01-31&as_of=2025-02-01T00:00:00Z" \
  --header "X-API-KEY: $CORPUS_API_KEY"

For multi-page reads:

  1. Choose one as_of value.
  2. Send it on the first request.
  3. Reuse it with every next_offset.
  4. Save it with the resulting dataset.

For filings, use acceptance time rather than report date to determine availability. Amendments remain separate records so a later correction does not rewrite what was known earlier.