Propose a Base view change (create / update / delete / restore)
view_change_requestPropose a Base view change (create / update / delete / restore)
Review is permission-aware, decided server-side: the change merges immediately when your key has write access on the Base's node and lands as a pending ChangeRequest otherwise — check the response's materialized field to see which happened. Pass requireReview to always propose instead of merging. Views are structure, not content — when you are building starter structure (a Base plus the views that make it usable) let it merge so the workspace is not left half-built behind a review queue, exactly as you would for node_create and POST /bases. create needs the BASE id; update / delete / restore need the VIEW id — the endpoint split follows whichever id identifies the target, which this task handles for you. View order is shared by everyone: a new view joins the end, update with position moves one (0 = leftmost), and the leftmost view is what the Base opens on. Every Base keeps at least one view, so deleting its last one is rejected — create the replacement first. A new Base already starts with a default "Grid view" (every record and field): when you are about to add your own views, create the Base with node_create skipDefaultView (REST defaultView: false) so your first view is the one it opens on.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| name | No | View name (create only). | |
| type | No | View type, e.g. `table`, `gallery` (create only). | |
| patch | No | Changes to apply to the view (update only). | |
| action | Yes | What to do. Choose this before the other arguments. | |
| baseId | No | Base the view belongs to (create only). | |
| config | No | View configuration — filters, sorts, visible fields (create only). | |
| viewId | No | Target view id. | |
| message | No | Explanation for the reviewer. | |
| playbook | No | Optional. The playbook you are following, as `kind:nodeId[:key]` from playbooks_search (e.g. `prompt:nod_123:log-visit`). Recorded on the change request so the person can see which playbook produced it. | |
| position | No | Move the view to this 0-based index among the Base's views (update only); the others shift to make room. 0 makes it the view the Base opens on. | |
| autoMerge | No | Skip review and apply the change immediately if you have write access. Not a permission override — a changeRequest-level key still gets a pending CR. Default is permission-aware: merge when you can, otherwise propose. | |
| submittedBy | No | Producer label recorded on the change. | |
| requireReview | No | Always propose a pending ChangeRequest, even with write access. | |
| targetSpaceId | No | Busabase space id. Call auth_verify first and ask the user which space to use when more than one is returned. |