v2

latestOpenAPI 3.1.02026-08-05313314398.1 KB
file-folders

Update File Folder

Rename and/or toggle merge and/or update write-semantics (incl. the full_delivery batch fields) on a FileFolder.

Ordering: deterministic pre-checks FIRST, then write-semantics, then rename, then merge_enabled. Each of the three blocks commits its own transaction internally (full cross-block atomicity is out of scope — see the "Atomicity contract" comment below), so every failure mode that's deterministic from the request body + the folder's state at the start of the request (not a race) is checked upfront, before any block runs: a request like {merge_enabled: true, write_semantics: "replace_overlap", coverage_columns: ["bad_col"]} on a folder with existing subfolders fails on the pre-check with no side effect at all, instead of committing the semantics change and then 409-ing on merge_enabled. Similarly a rename that collides with a sibling name is caught before the semantics block runs, not after. Note the collection-schema subset check inside the semantics block still uses the CURRENT merge_database_id, which is None when merge_enabled is being turned on in this same request (the check is then skipped since there's no collection schema yet); a bad coverage column in that combination surfaces later as a per-file merge_error on the next merge rather than a 400 here.

patch/api/v1/file-folders/{folder_id}

Path parameters

folder_idstring uuid required

Request body

namestring nullable
merge_enabledboolean nullable
write_semantics'append' | 'replace_overlap' | 'replace_all' | 'full_delivery' nullable
coverage_columnsstring[] nullable
coverage_granularity'exact' | 'day' | 'month' | 'quarter' | 'year' nullable
batch_key_patternstring nullable
batch_sizeinteger nullable
batch_timeout_hoursnumber nullable

Response

Successful Response

idstring required
namestring required
parent_folder_idstring nullable
merge_enabledboolean required
schema_modestring required
merge_database_idstring nullable required
write_semanticsstring
coverage_columnsstring[] nullable
coverage_granularitystring
batch_key_patternstring nullable
batch_sizeinteger nullable
batch_timeout_hoursnumber nullable
sealed_batch_keystring nullable
member_countinteger
has_childrenboolean