EaserixDocs
DevelopersAPI referenceNotesPages

Update page metadata (title, icon, move, archive, change space)

Setting workspaceId moves the page to another space the caller can access — the entire subtree moves with it and the page becomes a root of the target space unless the same request also names a parent inside it. A sidebar drag sends all three move fields at once (space, parent, position), so parentId is validated: - the parent must be a page the caller can see (404 otherwise — never a confirmation that an id exists in another org) - the parent must be in the space the page ends up in, so a page is never nested under a parent that space's readers cannot open (400) - the parent must not be the page itself or one of its own descendants (400) — a cycle detaches the whole branch from every root and it stops appearing in the tree archived=true trashes the page and every live sub-page with the same timestamp; archived=false restores the page and exactly that batch (sub-pages trashed separately stay in the trash). A page restored under a parent that is still trashed comes back at the space root. `parentId: ""` clears the parent, putting the page at the top level of its space. `position` is a float, so a page can be dropped between two siblings by writing one row instead of renumbering the list. A move into a space with a wider audience — Private to a team or everyone, a team to everyone, or one team to another — exposes the page and its sub-pages to people who could not read them before. It needs the same authority as changing a space's audience: the owner of the space the page is leaving, or a workspace owner/admin (403 `widening_move` otherwise). Callers who have that authority must also send `confirmWiden: true` (409 `confirm_widen` otherwise, with the target space so the client can name it in a prompt). Narrowing and same-audience moves need neither. Every cross-space move is written to the platform audit log as `notes.page.moved`.

View as Markdown
PATCH
/v1/pages/{id}
AuthorizationBearer <token>

In: header

Path Parameters

id*string
Formatuuid

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X PATCH "https://example.com/v1/pages/497f6eca-6276-4993-bfeb-53cbbbba6f08" \  -H "Content-Type: application/json" \  -d '{}'
{  "page": {    "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",    "workspaceId": "ef0efa32-d1c1-43d4-a5e2-fe7b4f00403c",    "parentId": "70850378-7d3c-4f45-91b7-942d4dfbbd43",    "title": "string",    "icon": "string",    "position": 0,    "createdBy": "25a02396-1048-48f9-bf93-102d2fb7895e",    "created": "2019-08-24T14:15:22Z",    "updated": "2019-08-24T14:15:22Z",    "archivedAt": "2019-08-24T14:15:22Z",    "source": "string",    "sourceRef": "string",    "publishedRev": 0,    "publishedAt": "2019-08-24T14:15:22Z",    "docRev": 0,    "excerpt": "string",    "published": true,    "openComments": 0,    "internalOverride": true,    "internal": true  }}