As of 2026-05-14, the Go ui_api now supports POST /v1/environments/:env/ds/nodes for design-studio node creation (huge unlock — thank you). But for per-node updates and deletes, agents still have to fall back to:
PATCH /design-studio/api/workspaces/:ws/nodes/:id on the legacy Design Studio surface for updates, or
POST /v1/environments/:env/ds/node_actions/bulk_delete with a single-element node_ids array for deletes.
Both work (the legacy surface now accepts service-account JWTs, which it didn't before), but the surface split is awkward — the create returns from the Go ui_api, then you switch hosts/paths to mutate the same resource.
Suggested
Add PUT /v1/environments/:env/ds/nodes/:id (or PATCH) and DELETE /v1/environments/:env/ds/nodes/:id to the Go ui_api so a node's full CRUD lives on one surface.
Why it matters
Today's split makes the cio agent skill more confusing (the ds resource only shows create on its schema; agents have to learn the legacy path separately). Consolidating would let cio schema ds describe the full lifecycle.
As of 2026-05-14, the Go ui_api now supports
POST /v1/environments/:env/ds/nodesfor design-studio node creation (huge unlock — thank you). But for per-node updates and deletes, agents still have to fall back to:PATCH /design-studio/api/workspaces/:ws/nodes/:idon the legacy Design Studio surface for updates, orPOST /v1/environments/:env/ds/node_actions/bulk_deletewith a single-elementnode_idsarray for deletes.Both work (the legacy surface now accepts service-account JWTs, which it didn't before), but the surface split is awkward — the create returns from the Go ui_api, then you switch hosts/paths to mutate the same resource.
Suggested
Add
PUT /v1/environments/:env/ds/nodes/:id(orPATCH) andDELETE /v1/environments/:env/ds/nodes/:idto the Go ui_api so a node's full CRUD lives on one surface.Why it matters
Today's split makes the
cioagent skill more confusing (thedsresource only shows create on its schema; agents have to learn the legacy path separately). Consolidating would letcio schema dsdescribe the full lifecycle.