Update a pipeline

Mutable subset only: name and status. active is read-only and
derived from status; sending it returns 400.

Status transitions

Allowed via API:

  • active → inactive (pause; ATS write-back when role is filled)
  • active → draft (send back to editing in the UI)
  • same-state PATCH (no-op)

Rejected:

  • any → active → 422 pipeline_activation_via_ui_only (UI must
    validate node graph + form)
  • draft → anything → 422 pipeline_in_draft (drafts may be
    incomplete)
  • inactive → anything → 422 invalid_status_transition
    (reactivate via UI)

name is patchable from any status.

Recent Requests
Log in to see full request history
TimeStatusUser Agent
Retrieving recent requests…
LoadingLoading…
Path Params
uuid
required

Pipeline UUID.

Body Params

At least one mutable field is required. active is rejected
deliberately — set status instead. Status transitions are
enforced; see PATCH /pipelines/:id for the full matrix.

string
length ≤ 256
string
enum

Whitelisted to draft and inactive only. active is
intentionally absent — pipelines must be activated in the UI
so the node graph and form configuration are validated.

Allowed:
Headers
string
^[A-Za-z0-9_-]{8,64}$

Optional. Send the same key on a retry to make the request
idempotent. The first successful 2xx response is cached for
24 hours; subsequent retries with the same key return the
cached response with Idempotent-Replay: true. Reusing a key
with a different request body returns 409
idempotency_conflict. Format: 8–64 chars of [A-Za-z0-9_-]
— a UUID v4 is a fine default.

Responses

Language
Credentials
Bearer
hk_live_<secret>
URL
LoadingLoading…
Response
Click Try It! to start a request and see the response here! Or choose an example:
application/json