Dozer logoDozer
Get started
Dozer Docs
Core

Timeline

Append and read human-readable events on any object — events, provenance, and timestamp touches.

Every object has a Timeline: an ordered stream of human-readable events recording what happened and why. Dozer writes run summaries and outcome notes here, so an object's history stays inspectable without reading a log.

Append one event:

{
  "name": "timeline_append",
  "arguments": {
    "project_id": "pr_northpit",
    "collection": "equipment",
    "object_id": "a60h-12",
    "event": "Pre-trip inspection completed.",
    "context": { "source": "external-agent" }
  }
}
curl -X POST "$DASH_BASE_URL/api/v1/data/event" \
  -H "Authorization: Bearer pat_..." \
  -d '{"project_id":"pr_northpit","collection":"equipment","object_id":"a60h-12","event":"Pre-trip inspection completed.","event_id":"evt_1"}'

timeline_query reads them back (always with a limit), and data_event / data_events_list are the lower-level pair. Arguments for all of them are in MCP Tools.

Provenance and idempotency

  • event carries the human-readable text. There is no event_text — the one field name is event.
  • event_id makes a write idempotent — reuse it to avoid duplicates.
  • context carries provenance (source, provider, model, integration, worker_run_id, prompt_id, prompt_version, badges, media) — the same provenance model as Data.
  • Touches — use context.touch.fields for standard timestamp/state touches such as last_live_data_at, last_stream_data_at, last_computed_data_at.

On this page

Dozer logoDozer

Ready to build? Connect an agent and go — no credit card needed to start.

Get startedSee our plans