---
title: "Page a node's change history (T926)"
method: GET
path: "/api/goal/nodes/{id}/events"
tags: ["Goal"]
---

# Page a node's change history (T926)

`GET /api/goal/nodes/{id}/events`

## Request

- Base URL: `http://localhost:38200`
- URL: `http://localhost:38200/api/goal/nodes/{id}/events`
- Auth: one of:
  - HTTP bearer
  - API key in cookie `token`

One row per change to the node -- add, advance, rollup, claim, release, sync create/update, archive -- with the acting user or API key, the agent session, and the status before and after. Newest first.

## Path parameters

- `id` integer, required

## Query parameters

- `limit` integer

## Response `200`

History rows.

- object
  - `node_id` integer
  - `events` GoalNodeEvent[]
    - `id` integer
    - `tenantId` integer
    - `nodeId` integer
    - `action` 'add' | 'advance' | 'claim' | 'release' | 'release_session' | 'sync_create' | 'sync_update' | 'rollup' | 'archive' | 'objective'
    - `beforeStatus` string, nullable
    - `afterStatus` string, nullable
    - `actorUserId` integer, nullable
    - `actorApiKeyId` integer, nullable
    - `sessionId` integer, nullable: Agent session named by the caller; a soft reference.
    - `detail` object
    - `createdAt` string, date-time

## Other responses

- `401`: Missing or invalid credentials.
- `404`: Resource not found (or not visible to the caller).

---

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