---
title: "What changed in the registry, deploy by deploy"
method: GET
path: "/api/v1/facts/changes"
tags: ["facts"]
---

# What changed in the registry, deploy by deploy

`GET /api/v1/facts/changes`

## Request

- Base URL: `https://worthune.com`
- URL: `https://worthune.com/api/v1/facts/changes`
- Auth: none required

Each entry is a deployed state that moved a number — a fact's value, unit or period, a derived constant table, or a spec version — with both sides of every fact change. The same difference is delivered as facts.changed. The earliest entry is the baseline (diff null).

## Response `200`

Newest first, at most 20.

- object
  - `ok` unknown, required
  - `changes` object[], required
    - `snapshotId` integer, required
    - `previousSnapshotId` integer, nullable, required
    - `sha` string, required
    - `recordedAt` string, date-time, required
    - `diff` RegistryDiff, required
      - `facts` object, required
        - `added` object[], required
          - `id` string, required
          - `value` number, required
          - `unit` string, required
          - `period` string, required
        - `removed` object[], required
          - `id` string, required
          - `value` number, required
          - `unit` string, required
          - `period` string, required
        - `changed` object[], required
          - `id` string, required
          - `from` FactFingerprint, required
            - `value` number, required
            - `unit` string, required
            - `period` string, required
          - `to` FactFingerprint, required
            - `value` number, required
            - `unit` string, required
            - `period` string, required
      - `tables` object, required: Derived constant tables (by export name) whose content changed.
        - `added` string[], required
        - `removed` string[], required
        - `changed` string[], required
      - `specs` object, required: Keys: "projection", "book-scan", "strategy:<key>", "model:<name>".
        - `added` object[], required
          - `key` string, required
          - `version` string, required
        - `removed` object[], required
          - `key` string, required
          - `version` string, required
        - `changed` object[], required
          - `key` string, required
          - `from` string, required
          - `to` string, required
  - `note` string, required

## Other responses

- `429`: Hourly per-org stateful quota, a per-route durable limit, or the 120 requests/minute per-IP burst backstop.
- `503`: The history could not be read.

---

[API](https://skmtc.dev/worthune/apis/worthune-api.md) · [All operations](https://skmtc.dev/worthune/apis/worthune-api/llms.txt) · [OpenAPI document](https://skmtc.dev/worthune/apis/worthune-api/revisions/9f2241072555?raw)
