Event Timeline

Timeline
⚲

Reading the timeline…

No events yet

The engine is answering, this account just has nothing stored. Write one with New event, or send it with POST /v1/events — either way it appears here the moment the engine stores it.

Nothing matches

The engine searched this whole account — not just what is on screen — and found no event matching that. Try a shorter term, or clear the search.

Could not read the timeline

This account's events. One column per event family — the first segment of the type. No connector lines: the engine relates no two events yet, so a line would be an invention. Hover a node for its label, click it for the same detail panel the list opens.

Connect to the engine

There is no login yet — doc 08 puts the identity layer after this phase. Until then the timeline talks to the ingest Worker with an API key you paste here.

The Worker's origin, no path. http://localhost:8787 for wrangler dev.
Minted by npm run provision. Needs events.read to show the timeline, and events.write as well to write events here.
The key is kept in this browser's localStorage and travels on every request. A read-only key (provision --read-only) is the safe one to paste here; a key that can also write is a key anything running in this browser can write with. That is the trade the New event button costs, and it is worth making only in a browser you trust.

New event

Written here, posted to POST /v1/events — the same door a webhook or the email Worker knocks on. Nothing about it is special once it is queued.

Free text, invented as you go. No template to declare first.
Blank means now. Backdate it for something that already happened — fill the date and the time, a half-typed one is not a date.
One short sentence — this is the line the timeline shows. An email or phone number in it is masked before it is stored, unless you seal it below.
Comma-separated, lowercase. They are what the timeline filters on, and they are stored in clear on purpose.
Flat values only. Tick the lock on a param and it is encrypted with this account's key — still searchable by exact value, never readable here.
A 200 means queued, not stored. The row arrives on a later poll, normally within a second or two — the timeline waits for it and says when it lands.