Diff a version of a workflow

Search Documentation

Search across all developer documentation

workflows

Diff a version of a workflow

GET /v1/workflows/{id}/versions/{version}/diff
Auth required api.workflows.view

What changed between this version and another: a unified diff of the .flow source, plus a field-by-field list of the metadata around it.

The direction is always FROM the addressed version TO the other side, so a diff against current reads as "what has happened since".

source is returned only to a token holding api.workflows.manage; without it the field is absent and source_withheld names the scope. History is not a way around the read tier — a version of a definition is the definition.

Path parameters

id string required

The workflow's UUID or its org-unique key.

version integer required

The version number, as returned by the versions collection. Version numbers are the handle on every kind here, including the kinds whose dashboard routes address a version by row id.

Query parameters

against string optional

current (the default) diffs against the live definition; a number diffs against that version of the same definition.

Responses

Errors follow the RFC 7807 problem format — see the error reference.

200 The diff application/json
kind string required
from integer required
to integer | null required

Null when against=current: the current state is not a version and has no number until the next edit snapshots it.

against_current boolean required
unified string optional

A unified diff of the source text. Absent for the schema kinds and for an unchanged source.

source_withheld string optional

The scope that would return unified, set only when that is why it is absent.

fields array<object> required

Always present: [] means compared and identical, where null would mean not computed.

Each entry in fields:

field string required
from string required
to string required
truncated boolean required

unified was cut at the size bound. What is shown is a valid prefix; the change it omits is not in it.

identical boolean required
401 Missing, malformed, or unknown API key application/problem+json
403 Key lacks the required scope or plan limit violated application/problem+json
404 Resource not found application/problem+json
429 Per-org rate limit exceeded application/problem+json
500 Unexpected server-side failure. The code is internal_error. The request_id field can be quoted to SendOps support to investigate. application/problem+json