Y2 Elite workspaces are rolling out for teams
Y2Y2Docs
Ontology & Fusion

Read the Ledger at a Point in Time

Select when claims were recorded and when they applied.

CursorParameterMeaning
Record timerecordedAtInclude records written by this time
Valid timevalidAtSelect claims that apply at this time

API requests require a workspace-bound key with ledger:read. Set Y2_API_KEY to that key and Y2_SUBJECT_ID to your subject ID. Replace the example dates with the times you need.

See what holds on a date

In the app, set Valid on in the ledger panel. Excluded designations move to Outside the valid interval. They remain in the ledger.

For API access:

curl --fail --silent --show-error --get \
  "https://api.y2.dev/api/v2/ledger/subjects/$Y2_SUBJECT_ID" \
  --header "Authorization: Bearer $Y2_API_KEY" \
  --data-urlencode "validAt=2026-05-01T00:00:00Z"

See what you believed before a correction

Set recordedAt to a time before the correction was recorded:

curl --fail --silent --show-error --get \
  "https://api.y2.dev/api/v2/ledger/subjects/$Y2_SUBJECT_ID" \
  --header "Authorization: Bearer $Y2_API_KEY" \
  --data-urlencode "recordedAt=2026-03-05T12:00:05Z"

The result uses only records available at that time. A later correction or retraction does not affect this view.

Combine both

This request asks what was recorded by March 20 about April 10:

curl --fail --silent --show-error --get \
  "https://api.y2.dev/api/v2/ledger/subjects/$Y2_SUBJECT_ID" \
  --header "Authorization: Bearer $Y2_API_KEY" \
  --data-urlencode "recordedAt=2026-03-20T00:00:00Z" \
  --data-urlencode "validAt=2026-04-10T00:00:00Z"

Record time selects the available history. Valid time filters the resulting current claims. It does not restore an older version of a claim.

Export the same view

Use the same parameters with the STIX endpoint:

curl --fail --silent --show-error --get \
  "https://api.y2.dev/api/v2/ledger/subjects/$Y2_SUBJECT_ID/stix" \
  --header "Authorization: Bearer $Y2_API_KEY" \
  --data-urlencode "recordedAt=2026-03-20T00:00:00Z" \
  --data-urlencode "validAt=2026-04-10T00:00:00Z"

The HTTP API accepts ISO 8601 instants and normalizes them to UTC milliseconds. The local CLI requires UTC timestamps with milliseconds, such as 2026-03-20T00:00:00.000Z.