Delete a project documentation node
Soft deletes a project documentation page or folder subtree after explicit confirmation. Deleted nodes no longer accept reads or writes.
Deletion behavior:
- Call the delete-preview endpoint first to show active page and folder counts
- Pass confirmed=true and the unchanged previewToken to delete the complete subtree atomically
- A changed subtree returns HTTP 409. Get a new preview before retrying
- Deleted nodes disappear from list, tree, detail, and update operations
- Data remains soft-deleted for recovery or audit purposes
Permissions:
- Requires “manageDocumentation” permission for the project
DELETE
/projects/documentation/{id}Authorization
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.
Query parameters
confirmedbooleanrequiredpreviewTokenstringrequiredOpaque token returned by the latest delete preview.
Responses
200
successbooleanrequiredOperation success flag
400The documentation node identifier or deletion confirmation is invalid.
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 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.
409The active subtree changed after preview. Get a new preview before retrying.
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 DELETE "https://leadtime.app/api/public/projects/documentation/550e8400-e29b-41d4-a716-446655440000?confirmed=true&previewToken=string" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"const response = await fetch("https://leadtime.app/api/public/projects/documentation/550e8400-e29b-41d4-a716-446655440000?confirmed=true&previewToken=string", {
method: "DELETE",
headers: {
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
});import requests
response = requests.delete(
"https://leadtime.app/api/public/projects/documentation/550e8400-e29b-41d4-a716-446655440000?confirmed=true&previewToken=string",
headers={
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
},
)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
}{
"error": "string",
"message": "string",
"statusCode": 0
}