Resolve Entity Identifier
Resolve a string identifier (external_id, permalink, title, or path) to entity info.Request Body
The identifier to resolve (external_id, permalink, title, or file path)
Optional source path for context-aware resolution (prefers notes closer to source)
If true, disables fuzzy search fallback and requires exact match
Response
Entity external UUID (stable identifier)
Internal entity ID
Entity permalink
File path relative to project root
Entity title
How the entity was resolved:
external_id, permalink, title, path, or searchGet Entity by ID
Retrieve a complete entity by its external UUID.Path Parameters
Project external UUID
Entity external UUID
Response
Entity external UUID
Entity title
URL-friendly identifier
File path relative to project root
Entity classification (e.g., “note”, “person”, “spec”)
MIME type (e.g., “text/markdown”, “image/png”)
File content (for text files)
List of observations (facts) about this entity
List of relations to other entities
ISO 8601 timestamp
ISO 8601 timestamp
Create Entity
Create a new entity in the knowledge graph.Request Body
Entity title (becomes filename)
Directory path relative to project root
Entity classification (converted to snake_case)
File content (markdown for text files)
MIME type of content
Optional metadata dictionary
Query Parameters
If true, defers indexing to background tasks for faster response
Response
Returns the created entity with HTTP status201 Created.
Generated UUID for the new entity
Generated permalink
Update Entity
Update an existing entity by external UUID (upsert behavior).Path Parameters
Entity external UUID
Request Body
Same as Create Entity request body.Query Parameters
If true, defers indexing to background tasks
Response
Returns HTTP status200 OK if entity was updated, or 201 Created if entity was created.
Edit Entity
Edit an existing entity using operations like append, prepend, or find/replace.Request Body
Edit operation:
append, prepend, find_replace, or replace_sectionContent to insert or replace with
Section name for
replace_section operationText to find for
find_replace operationExpected number of replacements for
find_replace (validation)Query Parameters
If true, defers indexing to background tasks
Response
Returns the updated entity.Delete Entity
Delete an entity by external UUID.Response
True if entity was deleted, false if entity didn’t exist (idempotent)
Move Entity
Move an entity to a new file location.Request Body
New file path relative to project root
Response
Returns the updated entity with new file path. The external_id remains stable.Move Directory
Move all entities in a directory to a new location.Request Body
Source directory path
Destination directory path
Response
Total number of files in source directory
Number of files successfully moved
Number of files that failed to move
List of file paths that were moved
List of errors for failed moves
Delete Directory
Delete all entities in a directory.Request Body
Directory path to delete
Response
Total number of files in directory
Number of files successfully deleted
Number of files that failed to delete
List of file paths that were deleted
List of errors for failed deletes