> ## Documentation Index
> Fetch the complete documentation index at: https://opentrain.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Diff Changeset

> Preview per-page effects of a changeset without writing.

Computes what a changeset would do, page by page, without writing. Same request body as [validate](/docs/developers/api-reference/instructions/validate-changeset).

**Requirements:** `instructions:write` or `instructions:propose`, plus workspace `EDITOR` or `OWNER` access.

## Response

<ResponseField name="valid" type="boolean">
  Whether the changeset would apply cleanly.
</ResponseField>

<ResponseField name="conflicts" type="object[]">
  Structured conflicts (empty when valid).
</ResponseField>

<ResponseField name="pages" type="object[]">
  Per-page effect summaries: `{pageId, title, kind, insertedNodes, deletedNodes, replacedNodes, nodeIds}` — `kind` is `CONTENT`, `CREATE`, `RENAME`, `MOVE`, `AUDIENCE`, `ARCHIVE`, `RESTORE`, or `ASSET`.
</ResponseField>
