Skip to content

audit operations

The exact fields each audit.* operation takes and returns.

Every op is POST /v1/<op> over HTTP and the MCP tool loom_<op>. The identity fields (org, namespace, agent, user_id, session_id) are filled from the token and the MCP session when a transport can; for an HTTP call with no token on a single-user server, the install's org on every op but code.* and tracker.* (which keep their plane's), and on some ops its namespace and agent; see identities and namespaces. The operations index explains role, kind and the MCP all listing. Unknown input fields are served and named in ignored_args.

audit.list

Query the audit log (tamper-evident per-row hashes).

POST /v1/audit.list · MCP loom_audit_list · role viewer · read · not listed under the MCP all toolset

Input field Type Default Meaning
org str required The tenant (first element of the identity tuple).
namespace str \| None None None: every namespace the caller may read; naming one it cannot read gives an empty page.
event_type str \| None None exact match
since datetime \| None None only rows ts >= since
limit int 50 At most this many rows per page, newest first; 1 to 500.
cursor str \| None None opaque token from prior page
fields list[str] \| None None The output fields the caller reads (a whitelist resolved against the row model; an unknown name is a 422); unset, every field.
Output field Type Meaning
rows list[AuditListRow] The page of audit rows, newest first (ties broken by request_id).
next_cursor str \| None Pass back as cursor for the next, older page; None when this page is the last.