# List Timeline Activities

`lawmatics_list-timeline-activities` · Lawmatics MCP tool · Timeline Activities

List timeline activities from Lawmatics with optional pagination, filtering, and sorting. Timeline activities are audit-log events on a matter's or contact's history. Filter by matter_id, contact_id, type, event, or created_at; each activity links its actor (owner), tracked record, and recipient. Prefer a filter when possible — the unfiltered firm-wide list is slow on large accounts and may time out.

## Input

- **page** `integer` (> 0) — Page number (1-based)
- **filter** `object` — Optional single-field filter; one filter at a time
  - **field** `string` (required, enum: "matter_id", "contact_id", "type", "event", "created_at") — Field to filter on: matter_id / contact_id (numeric ids), type (activity-type class), event (event key like 'note.create'), or created_at (date)
  - **operator** `string` (enum: "=", "!=", "<", "<=", ">", ">=", "like", "ilike", "null", "not_null") — Comparison operator. Omit to use the Lawmatics per-field default (= for ids/dates, ilike for strings). Use = for matter_id/contact_id and a range operator (e.g. >) for created_at
  - **value** `string` (required) — Value to compare against (ignored for null / not_null operators)
- **sortBy** `string` (enum: "id", "created_at", "updated_at") — Column to sort by
- **sortOrder** `string` (enum: "asc", "desc") — Sort direction; ascending or descending

## Output

- **timelineActivities** `array` (required) — Timeline activities on this page of results
  - **[]** `object`
    - **id** `string` (required) — Lawmatics timeline activity ID
    - **activityKey** `string` (required) — Event identifier for the activity (e.g. "note.create", "prospect.update")
    - **activityType** `string` (required) — Activity-type class (e.g. "note", "TimelineActivity::Prospect")
    - **detailKeys** `any` (required) — Activity detail payload; shape varies by activity type — an object with body/name for note events, or an array of objects for others. Null when the activity carries no detail
    - **parentId** `string | null` (required) — ID of the parent activity this one is nested under; null when it has no parent
    - **createdAt** `string | null` (required) — When the activity occurred, as an ISO 8601 timestamp; null when the API omits it for this activity
    - **updatedAt** `string | null` (required) — When the activity was last updated, as an ISO 8601 timestamp; null when the API omits it
    - **owner** `object | null` (required) — Who performed the activity (the acting user, firm, or application); null when unattributed
      - **id** `string` (required) — ID of the referenced Lawmatics record
      - **type** `string` (required) — Record type of the reference (e.g. "user", "firm", "note", "prospect", "contact")
    - **tracked** `object | null` (required) — The record the activity is about (e.g. the note or task that changed); null when none is tracked
      - **id** `string` (required) — ID of the referenced Lawmatics record
      - **type** `string` (required) — Record type of the reference (e.g. "user", "firm", "note", "prospect", "contact")
    - **recipient** `object | null` (required) — The contact or matter the activity pertains to; null when none applies
      - **id** `string` (required) — ID of the referenced Lawmatics record
      - **type** `string` (required) — Record type of the reference (e.g. "user", "firm", "note", "prospect", "contact")
- **pagination** `object` (required) — Pagination metadata derived from the API `meta` envelope
  - **totalPages** `number` (required) — Total number of pages available
  - **limitPerPage** `number` (required) — Maximum timeline activities returned per page
  - **totalEntries** `number` (required) — Total number of timeline activities across all pages
