LucidLink Lab   ·  Not an official product

EventStream Viewer

Password required

This EventStream Viewer is password-protected. Enter the password to continue.

What is EventStream?

EventStream is an early-access, pre-GA capability. Access is currently limited to filespaces on Filespace V13 / client 3.9+.

EventStream is a centralized, ordered, durable event log for metadata operations, including create, delete, modify, move, hard-link, and unlink, across a LucidLink filespace. Historically, teams have aggregated each client’s local audit log and merged them by timestamp, an approach that can be hard to keep reliable across client crashes or clock skew. EventStream takes a different approach: the hub keeps one authoritative, ordered log per filespace that survives client crashes, and exposes it over a plain pull API, all while preserving LucidLink’s end-to-end zero-knowledge encryption. Event paths stay encrypted in transit and at rest; decryption happens client-side, via the LucidLink SDK’s WASM module, not on the hub.

How it’s used

  • Single source of truth. One hub-ordered log per filespace stands in for per-client audit aggregation.
  • Cursor-based pull. Page through history with a cursor (7-day retention), or request a “tail” cursor to start from now.
  • Smart aggregation. Bursts of rapid writes to the same file coalesce into a single MODIFIED event so consumers aren’t flooded with noise.
  • Rich metadata per event. Real actor identity, entry size, filesystem identifiers (inodeId, entryId), and path history (current + previous path on moves).
  • Two interfaces. The REST API this app talks to (GET /filespaces/{id}/events and /events/tail), or the TypeScript LucidSDK’s FilespaceClient.eventsManager for a higher-level client.

Example use cases for developers & integration partners

DAM/MAM ingestion triggers

React to FS_ENTRY_CREATED on a watch folder to auto-tag, transcode, or register new media in a digital asset manager the moment it lands, without polling the filesystem.

Audit & compliance pipelines

Feed create/modify/delete/move events into a compliance system as an authoritative, hub-ordered record. File reads aren’t captured.

Multi-site reconciliation dashboards

Give distributed post-production teams a live view of what changed, where, and by whom, across sites sharing a filespace.

Automated proxy/transcode kickoff

Kick off proxy generation or QC checks the instant a new deliverable is created or modified, using actorId and path metadata to route work.

Lost & Found monitoring

Surface orphaned files saved during conflict resolution so an integration can flag or re-file them.

Usage & storage analytics

Aggregate entry sizes and event volume over time per actor or directory for usage reporting, without needing snapshot access (EventStream data is excluded from snapshot mounts).

Access & compatibility, in brief

  • Requires Filespace V13 (client/product version 3.9+); no runtime flags needed, though legacy clients are rejected outright at link time on a V13 filespace.
  • Admin-only. Querying events requires Filespace Admin privileges; non-admin collaborator requests are rejected.
  • Default 7-day retention for historical replay via cursor pagination.
  • Not every filespace has it enabled; this app surfaces LucidLink’s own error (e.g. “Event stream is not supported for this filespace”) rather than guessing.

Sample API call

A direct request against the REST API, bypassing this app entirely, for the last few events on a filespace:

curl -H "Authorization: Bearer <your-service-account-key>" \
  "https://<your-api-host>/api/v1/filespaces/<filespace-id>/events?limit=2"

Response:

{
  "data": {
    "events": [
      {
        "id": "362e3d86-a665-521f-96aa-7747c2f314eb",
        "type": "FS_ENTRY_CREATED",
        "timestamp": "2026-09-03T12:39:58.952Z",
        "filespaceId": "<filespace-id>",
        "workspaceId": "<workspace-id>",
        "actor": { "actorId": "00000000-0000-0000-0000-000000000001" },
        "payload": { "path": "..." }
      }
    ]
  }
}

To start tailing from now instead of replaying history, grab a cursor first:

curl -H "Authorization: Bearer <your-service-account-key>" \
  "https://<your-api-host>/api/v1/filespaces/<filespace-id>/events/tail"

# { "data": { "cursor": "BEj-BgAAAAAA" } }

This viewer itself is an unofficial, hand-built LucidLink Lab client against a pre-GA API. It is not a LucidLink product, and it is not a guarantee that any of the above stays true as EventStream evolves toward GA.

Connect to EventStream

Point this at your LucidLink API endpoint and an admin token. Both are stored only in a local config.json next to this app; nothing is sent anywhere except LucidLink’s API.

Note on paths: EventStream event paths are end-to-end encrypted and decrypted client-side by the LucidLink SDK’s WASM module. This app talks to the plain REST API, so if your endpoint returns encrypted path blobs rather than plaintext, they’ll be shown as-is with a note that full decryption needs the official LucidSDK.

Choose a filespace

Looking for available filespaces…

Time Event Path Actor Size