M16 · REST API reference

Every endpoint in the repository surface, one page.

M16 ships 111 pre-built REST endpoints organized into 7 functional areas. Repository lifecycle, file and folder operations, per-action sharing, deal parties, Q&A workflow, and all the cross-cutting utilities behind them. Skim any area below.

At a glance

111 endpoints. One consistent surface.

Everything is POST + JSON body — no verb quirks, no per-endpoint conventions to remember. The same request/response envelope your team already uses everywhere else in the CleenUI API.

111
endpoints across the repository surface
7
functional areas (repos, files, folders, parties, Q&A, mgmt, cross-cut)
2
postures share one API — general file mgmt + secure data room
POST
the only method — consistent JSON body across every endpoint
Repositories

Repositories.

Lifecycle of a repository — the container for all files, folders, and (for deal rooms) parties + Q&A. Every M16 workflow starts here.

12 endpoints
POST/repository/saveCreate or update a repository.
POST/repository/detailGet the details of a single repository.
POST/repository/filterGet a page of repositories the caller can access.
POST/repository/renameRename a repository.
POST/repository/cloneCreate a copy of a repository.
POST/repository/archiveArchive a repository.
POST/repository/restoreRestore a deleted repository.
POST/repository/deleteDelete a repository.
POST/repository/purgePermanently delete a repository.
POST/repository/transferTransfer ownership of a repository to another user.
POST/repository/template/saveSave a repository’s folder structure as a template.
POST/repository/template/filterGet a page of repository templates.
Files

Files.

File-level operations — upload, version, share, lock, watermark, and legally hold. Every file record carries its own activity log and version history.

33 endpoints
POST/repository/file/saveCreate or update a file record.
POST/repository/file/detailGet the details of a single file.
POST/repository/file/filterGet a page of the files in a folder.
POST/repository/file/renameRename a file.
POST/repository/file/cloneCreate a copy of a file.
POST/repository/file/moveMove a file to another folder.
POST/repository/file/replaceReplace the contents of a file with a new version.
POST/repository/file/downloadDownload a file.
POST/repository/file/deleteDelete a file.
POST/repository/file/restoreRestore a deleted file.
POST/repository/file/purgePermanently delete a file.
POST/repository/file/upload/initStart uploading a file.
POST/repository/file/upload/completeFinish uploading a file.
POST/repository/file/version/filterGet a page of the saved versions of a file.
POST/repository/file/version/detailGet the details of one saved version of a file.
POST/repository/file/version/restoreRestore an older version of a file.
POST/repository/file/version/deleteDelete one saved version of a file.
POST/repository/file/share/saveGrant or update access to a file.
POST/repository/file/share/detailGet the details of one file share.
POST/repository/file/share/filterGet a page of the people and parties with access to a file.
POST/repository/file/share/deleteRemove someone’s access to a file.
POST/repository/file/link/saveCreate or update the public link for a file.
POST/repository/file/link/detailGet the public link for a file.
POST/repository/file/link/deleteTurn off the public link for a file.
POST/repository/file/lock/saveLock a file for editing.
POST/repository/file/lock/deleteUnlock a file.
POST/repository/file/hold/savePlace a legal hold on a file.
POST/repository/file/hold/deleteRemove a legal hold from a file.
POST/repository/file/star/saveAdd a file to the caller’s starred items.
POST/repository/file/star/deleteRemove a file from the caller’s starred items.
POST/repository/file/index/saveSet the document index number of a file.
POST/repository/file/watermark/detailGet what is needed to display a watermarked file.
POST/repository/file/activity/filterGet a page of the activity history for one file.
Folders

Folders.

Folder operations mirror the file surface — CRUD, move/clone, share with inheritance, star, permission preview, and per-folder activity.

23 endpoints
POST/repository/folder/saveCreate or update a folder.
POST/repository/folder/detailGet the details of a single folder.
POST/repository/folder/filterGet a page of the folders inside a folder.
POST/repository/folder/pathGet the breadcrumb trail for a folder.
POST/repository/folder/renameRename a folder.
POST/repository/folder/cloneCreate a copy of a folder.
POST/repository/folder/moveMove a folder to another folder.
POST/repository/folder/downloadStart a download of a folder.
POST/repository/folder/deleteDelete a folder and everything inside it.
POST/repository/folder/restoreRestore a deleted folder and its contents.
POST/repository/folder/purgePermanently delete a folder and everything inside it.
POST/repository/folder/share/saveGrant or update access to a folder.
POST/repository/folder/share/detailGet the details of one folder share.
POST/repository/folder/share/filterGet a page of the people and parties with access to a folder.
POST/repository/folder/share/deleteRemove someone’s access to a folder.
POST/repository/folder/share/inheritTurn inherited access on or off for a folder.
POST/repository/folder/link/saveCreate or update the public link for a folder.
POST/repository/folder/link/detailGet the public link for a folder.
POST/repository/folder/link/deleteTurn off the public link for a folder.
POST/repository/folder/permission/detailGet the caller’s effective permissions on a folder.
POST/repository/folder/star/saveAdd a folder to the caller’s starred items.
POST/repository/folder/star/deleteRemove a folder from the caller’s starred items.
POST/repository/folder/activity/filterGet a page of the activity history for one folder.
Deal parties

Deal parties.

Data-room only. Parties are company-level access units (buyer, investor, lender) that contain individual members. All party endpoints are gated by the data-room posture.

7 endpoints
POST/repository/party/saveCreate or update a deal party.
POST/repository/party/detailGet the details of a single deal party.
POST/repository/party/filterGet a page of the parties in a deal repository.
POST/repository/party/deleteRemove a party from a deal repository.
POST/repository/party/member/saveAdd or update a member of a deal party.
POST/repository/party/member/filterGet a page of the members of a deal party.
POST/repository/party/member/deleteRemove a member from a deal party.
Q&A workflow

Q&A workflow.

Data-room only. Structured question-and-answer routing with triage, internal drafts, and audience-controlled publish. Q&A history is preserved even when threads are withheld or withdrawn.

5 endpoints
POST/repository/qa/saveCreate or update a question or answer.
POST/repository/qa/detailGet a single question and its answers.
POST/repository/qa/filterGet a page of the deal question-and-answer list.
POST/repository/qa/deleteDelete a question from the deal question-and-answer list.
POST/repository/qa/exportStart an export of the deal question-and-answer list.
Repository management

Repository management.

Repository-level policy: sharing at the repo root, NDAs, legal holds, mime-type allow-lists, watermark configuration, document index, storage usage, and background job status.

21 endpoints
POST/repository/share/saveGrant or update access to a repository.
POST/repository/share/detailGet the details of one repository share.
POST/repository/share/filterGet a page of the people and parties with access to a repository.
POST/repository/share/deleteRemove someone’s access to a repository.
POST/repository/permission/detailGet the caller’s effective permissions on a repository.
POST/repository/nda/saveAttach a non-disclosure agreement to a repository.
POST/repository/nda/detailGet the non-disclosure agreement for a repository.
POST/repository/nda/acceptAccept the non-disclosure agreement for a repository.
POST/repository/hold/savePlace a legal hold on a repository.
POST/repository/hold/deleteRemove a legal hold from a repository.
POST/repository/mime-type/associateAllow one or more file types to be uploaded to a repository.
POST/repository/mime-type/disassociateStop allowing one or more file types to be uploaded to a repository.
POST/repository/watermark/saveSave the watermark settings of a repository.
POST/repository/watermark/detailGet the watermark settings of a repository.
POST/repository/index/saveSave the document index of a repository.
POST/repository/index/detailGet the document index of a repository.
POST/repository/index/exportStart an export of the document index.
POST/repository/storage/detailGet how much storage a repository is using.
POST/repository/activity/filterGet a page of the repository activity history.
POST/repository/activity/exportStart an export of the repository activity history.
POST/repository/job/detailCheck the status of a background job for a repository.
Cross-cutting

Cross-cutting.

Utility endpoints that span files and folders — bulk operations, cross-repo search, the caller’s starred items, trash management, closing binder export, and public share-link resolution.

10 endpoints
POST/repository/bulk/deleteDelete several repository items at once.
POST/repository/bulk/downloadStart a download of several repository items at once.
POST/repository/bulk/moveMove several repository items at once.
POST/repository/bulk/restoreRestore several deleted repository items at once.
POST/repository/search/filterSearch for files and folders inside a repository.
POST/repository/star/filterGet a page of the caller’s starred items.
POST/repository/trash/filterGet a page of the items in the repository trash.
POST/repository/trash/emptyPermanently delete everything in the repository trash.
POST/repository/closing/exportStart an export of the deal closing binder.
POST/public/share-link/resolveOpen a public share link.

Want a walkthrough of any endpoint?

Book a 30-minute review and we’ll trace any operation end to end — from React component to stored procedure — using your team’s actual use case.