Skip to content

The file journal records every mutation performed against a workspace’s files. Use these endpoints to query the audit log with cursor-based pagination, inspect storage health and pruning state, and force pending writes to be flushed and fsynced to disk.

Query file mutation journal entries with optional filters. Supports cursor-based pagination via after_id.

NameInTypeRequiredDescription
pathquerystringNoFilter entries by path prefix
opquerystringNoFilter by operation type(s), comma-separated (e.g. write,delete)
sincequerystringNoFilter entries since timestamp (RFC3339 or Unix ms)
limitqueryintegerNoMax entries to return (default 100)
after_idqueryintegerNoCursor: return entries with id > after_id (default 0)
{
"count": 3,
"has_more": true,
"next_after_id": 100042,
"entries": [
{
"id": 100040,
"ts": 1719840000000,
"op": "write",
"path": "docs/report.md",
"seq": 42,
"size_before": 4096,
"size_after": 8192,
"before": "5d41402abc4b2a76b9719d911017c592",
"after": "e3b0c44298fc1c1f3a2bd49ad9b6e3ab",
"blob": true,
"blob_before": true,
"blob_after": true
},
{
"id": 100041,
"ts": 1719840060000,
"op": "delete",
"path": "tmp/scratch.txt"
},
{
"id": 100042,
"ts": 1719840120000,
"op": "chmod",
"path": "scripts/deploy.sh",
"old_mode": "0644",
"new_mode": "0755"
}
]
}
Terminal window
curl -X GET "https://api.hoody.com/api/v1/journal?path=docs/&op=write,delete&limit=50&after_id=100000" \
-H "Authorization: Bearer <token>"

Returns storage statistics for the journal system including entry counts, blob storage usage, writer health, and pruning info.

This endpoint takes no parameters.

{
"total_entries": 1247,
"total_blobs": 892,
"total_blob_bytes": 5242880,
"total_storage_bytes": 6291456,
"writer_healthy": true,
"entries_skipped_total": 0,
"parse_failures": 0,
"skipped_overflow": 0,
"newest_entry_ts": 1719840000000,
"pruned_before_date": "2024-06-01"
}
Terminal window
curl -X GET "https://api.hoody.com/api/v1/journal/stats" \
-H "Authorization: Bearer <token>"

Forces all pending journal entries to be written and fsynced to disk. Returns 200 with flushed=true if all entries were durably persisted, or 503 with flushed=false if flush failed or entries were lost.

This endpoint takes no parameters.

{
"flushed": true
}
Terminal window
curl -X POST "https://api.hoody.com/api/v1/journal/flush" \
-H "Authorization: Bearer <token>"