From b88677a20c03c81b72f110c2b0649fc05954f41c Mon Sep 17 00:00:00 2001 From: Marcus van Elst Date: Tue, 14 Apr 2026 21:40:21 +0200 Subject: [PATCH] docs: document Search::start folder_path array format + Extract::start file_path key MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Hard-won DSM quirks confirmed by live testing: - Search::start folder_path must be json.dumps([path]) — plain string or json.dumps(path) is silently ignored, causing empty results - Extract::start source archive key is file_path (not path); both file_path and dest_folder_path require json.dumps() Co-Authored-By: Claude Sonnet 4.6 --- CLAUDE.md | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/CLAUDE.md b/CLAUDE.md index 28c81d7..9803984 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -121,6 +121,12 @@ Current series: `0.3.x` - **`Sharing::delete` id parameter:** must be `json.dumps(link_id)`. - **`CheckPermission::write`:** `path` and `filename` are plain strings (no `json.dumps`). Returns `{"blSkip": false}` on success. +- **`Search::start` folder_path:** must be a JSON array: `json.dumps([path])`. + A plain string or `json.dumps(path)` is silently ignored by DSM — it starts an empty + search and immediately returns `finished=true, files=[]`. +- **`Extract::start` parameter name:** the source archive key is `file_path` (not `path`). + Both path parameters need `json.dumps()`: `file_path=json.dumps(...)` and + `dest_folder_path=json.dumps(...)`. - **Error 599:** means "background service not ready / task not found" for DirSize/MD5. Handled by `_start_and_poll_oneshot()`.