---
title: "Read deterministic release changes using a signed cursor."
method: GET
path: "/v1/changes"
tags: ["Catalog"]
---

# Read deterministic release changes using a signed cursor.

`GET /v1/changes`

## Request

- Base URL: `https://api.sourcey.com`
- URL: `https://api.sourcey.com/v1/changes`
- Auth: one of:
  - none
  - HTTP bearer

## Query parameters

- `cursor` string

## Response `200`

Successful response.

- GetChangesResponse200
  - `data` object[], required
    - `basis_event_ids` string[], required
    - `change_id` string, required
    - `kind` string, required: Append-only release change kind. Known values are examples; new kinds may appear within public API v1.
    - `previous_projection_digest` string
    - `previous_revision_digest` string
    - `projection_digest` string
    - `revision_digest` string
    - `subject_id` union, required
      - string
      - string
    - `subject_type` 'entity' | 'program' | 'offer' | 'policy' | 'agent_readiness_profile' | 'asset_binding', required
    - `tombstone` object
      - `canonical_route` string, starts_with
      - `reason` 'retired' | 'ended' | 'withdrawn', required
  - `diff_digest` string, required
  - `feed_contract` 'sourcey.catalog-feed/v1alpha1', required
  - `next_cursor` string, nullable, required
  - `release_id` string, required
  - `retained_from_release_id` string, required
  - `snapshot_id` string, required

## Other responses

- `400`: Invalid request.
- `401`: HTTP 401 response.
- `403`: HTTP 403 response.
- `405`: HTTP 405 response.
- `429`: HTTP 429 response.
- `500`: HTTP 500 response.
- `503`: HTTP 503 response.

---

[API](https://skmtc.dev/sourcey/apis/sourcey-public-api.md) · [All operations](https://skmtc.dev/sourcey/apis/sourcey-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/sourcey/apis/sourcey-public-api/revisions/437166b51fa5?raw)
