Skip to main content
PATCH
/
context-documents
/
tree
/
{tree_id}
/
files
Edit files in a context document tree
curl --request PATCH \
  --url https://api.hyperspell.com/context-documents/tree/{tree_id}/files \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "files": {},
  "renames": {},
  "deletions": [
    "<string>"
  ],
  "additions": {}
}
'
{
  "tree_id": "<string>",
  "status": "<string>",
  "version": 123,
  "files": [
    {
      "path": "<string>",
      "content": "<string>",
      "tier": "<string>",
      "team": "<string>",
      "updated_at": "<string>"
    }
  ],
  "error": "<string>",
  "created_at": "2023-11-07T05:31:56Z",
  "completed_at": "2023-11-07T05:31:56Z",
  "meta": {}
}

Authorizations

Authorization
string
header
required

API Key or JWT User Token. If using an API Key, set the X-As-User header to act as a specific user. A JWT User Token is always scoped to a specific user.

Path Parameters

tree_id
string
required

Body

application/json

Request body for editing files in a tree.

All three edit kinds persist to the tree_edits table so they survive subsequent regens. Editable when status is COMPLETED or PUBLISHED; files / renames / deletions can all be sent in a single call.

files
Files · object

Map of file path → new content (content edits).

renames
Renames · object

Map of old path → new path (rename edits).

deletions
string[]

List of file paths to soft-delete (sticky until cleared).

additions
Additions · object

Map of file path → initial content for user-declared files at paths the LLM doesn't produce. Sticky until cleared.

Response

Successful Response

tree_id
string
required
status
string
required
version
integer
required
files
TreeFile · object[] | null
required
error
string | null
required
created_at
string<date-time>
required
completed_at
string<date-time> | null
required
meta
Meta · object
required