Move a project documentation node
Moves one page or folder relative to a validated destination neighbor. The server computes and saves the complete sibling order atomically.
POST
/projects/documentation/{id}/moveAuthorization
AuthorizationOAuth2 access token · headerrequiredScopes:
api:writeor
AuthorizationBearer token (JWT) · headerrequiredPath parameters
idstring<uuid>requiredProject documentation page or folder UUID. This parameter does not accept a project short identifier.
Request body
requiredapplication/jsonafterNodeIdstringDestination sibling that must precede the moved node. Omit both neighbors to move to the end.
beforeNodeIdstringDestination sibling that must follow the moved node. Use beforeNodeId or afterNodeId, not both.
parentIdstring<uuid> | nullDestination folder ID. Omit or set null to move the node to the project root.
Responses
200
successbooleanrequiredOperation success flag
400Invalid node identifier, parent, neighbor, page parent, cross-project move, or cycle.
errorstring | objectHTTP error name or a structured HTTP exception response.
Show propertiesHide properties
One of:
string
stringobject
objectmessagestring | string[] | objectrequiredError message, validation message list, or request-field validation message map.
Show propertiesHide properties
One of:
string
stringstring[]
Array of
stringstringobject
objectstatusCodenumberrequiredHTTP status code for this response.
401Unauthorized - Invalid or missing authentication token
403Forbidden - Insufficient API scopes or permissions
404The node or destination node does not exist or is not accessible.
errorstring | objectHTTP error name or a structured HTTP exception response.
Show propertiesHide properties
One of:
string
stringobject
objectmessagestring | string[] | objectrequiredError message, validation message list, or request-field validation message map.
Show propertiesHide properties
One of:
string
stringstring[]
Array of
stringstringobject
objectstatusCodenumberrequiredHTTP status code for this response.
Request
curl -X POST "https://leadtime.app/api/public/projects/documentation/550e8400-e29b-41d4-a716-446655440000/move" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"afterNodeId": "string",
"beforeNodeId": "string",
"parentId": "70850378-7d3c-4f45-91b7-942d4dfbbd43"
}'const response = await fetch("https://leadtime.app/api/public/projects/documentation/550e8400-e29b-41d4-a716-446655440000/move", {
method: "POST",
headers: {
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"Content-Type": "application/json"
},
body: JSON.stringify({
"afterNodeId": "string",
"beforeNodeId": "string",
"parentId": "70850378-7d3c-4f45-91b7-942d4dfbbd43"
})
});import requests
response = requests.post(
"https://leadtime.app/api/public/projects/documentation/550e8400-e29b-41d4-a716-446655440000/move",
headers={
"Authorization": "Bearer YOUR_ACCESS_TOKEN",
"Content-Type": "application/json"
},
json={
"afterNodeId": "string",
"beforeNodeId": "string",
"parentId": "70850378-7d3c-4f45-91b7-942d4dfbbd43"
},
)Response
{
"success": true
}{
"error": "string",
"message": "string",
"statusCode": 0
}Unauthorized - Invalid or missing authentication token
Forbidden - Insufficient API scopes or permissions
{
"error": "string",
"message": "string",
"statusCode": 0
}