move_nodes
const url = 'https://example.com/api/v1/nodes/move';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"after":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","before":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","group_id":"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0","node_ids":["2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"]}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://example.com/api/v1/nodes/move \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "after": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "before": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "group_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "node_ids": [ "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" ] }'Authorizations
Section titled “Authorizations”Request Bodyrequired
Section titled “Request Bodyrequired”Move many nodes into one folder (or null to ungroup them all), optionally placing them at a
position inside it rather than at the end.
object
Place the nodes immediately after this sibling. See before.
Place the nodes immediately before this sibling, keeping the order they were given in.
At most one of before/after; both omitted appends to the end, which is what every
caller did before ADR-124 Inc.8 and what an N-1 WebUI still sends.
Examplegenerated
{ "after": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "before": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "group_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "node_ids": [ "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" ]}Responses
Section titled “Responses”How many of the named nodes moved
What a bulk move actually did.
object
Rows that actually moved. Lower than requested is normal: an id can name a node that
has since been deleted, or one outside the caller’s scope. The two are not distinguished.
Distinct ids the request named, after de-duplication.
Examplegenerated
{ "moved": 1, "requested": 1}Unknown destination folder, both before and after given, or more ids than one request may carry
The ADR-019 envelope every failure renders as. pub(crate) and schema-bearing so the OpenAPI
document can name one error shape for every endpoint (ADR-035) instead of leaving 4xx/5xx bodies
undescribed — a client that has to guess the failure shape ends up parsing the success shape and
reading undefined.
object
object
Stable machine-readable code. Clients branch on this, never on the message.
Operator-facing sentence. Safe to display; never carries an internal error’s own text.
Examplegenerated
{ "error": { "code": "example", "message": "example" }}No valid bearer token
The ADR-019 envelope every failure renders as. pub(crate) and schema-bearing so the OpenAPI
document can name one error shape for every endpoint (ADR-035) instead of leaving 4xx/5xx bodies
undescribed — a client that has to guess the failure shape ends up parsing the success shape and
reading undefined.
object
object
Stable machine-readable code. Clients branch on this, never on the message.
Operator-facing sentence. Safe to display; never carries an internal error’s own text.
Examplegenerated
{ "error": { "code": "example", "message": "example" }}Role lacks ManageConfig, or the caller cannot see ungrouped nodes
The ADR-019 envelope every failure renders as. pub(crate) and schema-bearing so the OpenAPI
document can name one error shape for every endpoint (ADR-035) instead of leaving 4xx/5xx bodies
undescribed — a client that has to guess the failure shape ends up parsing the success shape and
reading undefined.
object
object
Stable machine-readable code. Clients branch on this, never on the message.
Operator-facing sentence. Safe to display; never carries an internal error’s own text.
Examplegenerated
{ "error": { "code": "example", "message": "example" }}The destination folder is not one this caller may act on
The ADR-019 envelope every failure renders as. pub(crate) and schema-bearing so the OpenAPI
document can name one error shape for every endpoint (ADR-035) instead of leaving 4xx/5xx bodies
undescribed — a client that has to guess the failure shape ends up parsing the success shape and
reading undefined.
object
object
Stable machine-readable code. Clients branch on this, never on the message.
Operator-facing sentence. Safe to display; never carries an internal error’s own text.
Examplegenerated
{ "error": { "code": "example", "message": "example" }}This deployment has no write side (skeleton mode)
The ADR-019 envelope every failure renders as. pub(crate) and schema-bearing so the OpenAPI
document can name one error shape for every endpoint (ADR-035) instead of leaving 4xx/5xx bodies
undescribed — a client that has to guess the failure shape ends up parsing the success shape and
reading undefined.
object
object
Stable machine-readable code. Clients branch on this, never on the message.
Operator-facing sentence. Safe to display; never carries an internal error’s own text.
Examplegenerated
{ "error": { "code": "example", "message": "example" }}