Skip to content

Rename / move a note

POST
/notes/rename
curl --request POST \
--url https://api.engram.page/notes/rename \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "new_path": "Archive/Engram.md", "old_path": "Projects/Engram.md" }'

Moves the note from old_path to new_path and returns the updated note. Returns 404 when the source note is missing and 409 when the target path already exists or the note version conflicts.

Old + new path

Media typeapplication/json
RenameRequest
object
new_path
required
string
old_path
required
string
Example
{
"new_path": "Archive/Engram.md",
"old_path": "Projects/Engram.md"
}

Renamed

Media typeapplication/json
RenameNoteResponse
object
new_path
string
note
Note
object
content
string
content_hash
string
nullable
description

OKF frontmatter description field

string
nullable
fm_created

OKF frontmatter created/date field

string format: date-time
nullable
fm_timestamp

OKF frontmatter timestamp/modified/updated field

string format: date-time
nullable
folder
string
nullable
id
string format: uuid
nullable
mtime

Client mtime (epoch seconds)

number format: float
parse_reason

Present when parse_status is “degraded”: {code, message, detail}

object
parse_status

Frontmatter parse outcome

string
nullable
Allowed values: ok degraded
path
required
string
resource

OKF frontmatter resource field

string
nullable
tags
Array<string>
title
string
nullable
type

OKF frontmatter type field

string
nullable
updated_at
string format: date-time
nullable
version
integer
nullable
old_path
string
renamed
boolean
Example
{
"note": {
"parse_status": "ok",
"path": "Projects/engram.md"
}
}

No such note

Media typeapplication/json
Error
object
errors
One of:
string
Examplegenerated
{
"errors": {}
}

Target exists / version conflict

Media typeapplication/json
Error
object
errors
One of:
string
Examplegenerated
{
"errors": {}
}