Timelines let you define custom views over your todos (e.g. "Work focus", "Weekend tasks") with filters such as base timeline, tags, creators, buckets, date range, status, and sort. Use Create Timeline to define a new timeline, Get Timelines to list or fetch one, and Update Timeline to change name, description, color, visibility, or filters. The Kaizen Todos block can then use a timeline ID to fetch todos for that view.
Block Types
| Block Type | Purpose |
|---|---|
kaizen_create_timeline | Create a custom timeline with name, description, color, visibility, and filters. |
kaizen_get_timelines | Fetch the user's custom timelines (list all or one by id/shareId). |
kaizen_update_timeline | Update an existing custom timeline (name, description, color, visibility, or filters). |
Built-in presets (Home, Following, Personal) are not returned by Get Timelines and cannot be updated.
Create Timeline (kaizen_create_timeline)
Creates a custom timeline. Use the output timelineId in Kaizen Todos or Update Timeline.
Input Fields
| Field | Type | Description |
|---|---|---|
name | string | Timeline name (required). |
description | string | Optional description (max 500 chars). |
color | string | Color for the timeline (preset hex). |
isPublic | boolean | Make timeline public (shareable link). |
baseTimeline | string | Starting source: home, following, personal, all. Default: home. |
includedTags / excludedTags | array | Tag IDs to include or exclude. |
includedCreatorIds / excludedCreatorIds | array | Creator user IDs to include or exclude. |
includedBucketIds / excludedBucketIds | array | Bucket IDs to include or exclude. |
includedTodoIds / excludedTodoIds | array | Todo IDs to include or exclude. |
dateFilter, startDate, endDate | string | Date range filter. |
status, visibility, priority | string | Status, visibility, priority filters. |
sortBy, sortOrder | string | Sort (e.g. createdAt, asc/desc). |
Outputs
| Output | Type | Description |
|---|---|---|
success | boolean | Whether the create succeeded. |
timelineId | string | ID of the created timeline. Use in Kaizen Todos: <block_id.timelineId>. |
timeline | object | The created timeline object. |
Get Timelines (kaizen_get_timelines)
Fetches custom timelines. Omit timelineId to list all; set it to fetch one by ID or share ID.
Input Fields
| Field | Type | Description |
|---|---|---|
timelineId | string | Optional. Omit for all custom timelines; set to timeline ID or share ID to fetch one. |
Outputs
| Output | Type | Description |
|---|---|---|
timelines | array | Array of timeline objects (all or single when timelineId was set). |
timelineIds | array | Array of timeline IDs. Use with Update Timeline or Kaizen Todos. |
count | number | Number of timelines returned. |
timeline | object | When fetching one: the full timeline object. |
timelineId | string | When fetching one: its ID. |
shareId | string | When fetching one public timeline: its share ID. |
filterSummary | string | When fetching one: human-readable filter summary. |
creator | object | When fetching one: creator info if available. |
includedTodoIds / excludedTodoIds | array | When fetching one: todo IDs to include/exclude from timeline filters. |
Update Timeline (kaizen_update_timeline)
Updates an existing custom timeline. Only custom timelines can be updated; built-in ones cannot.
Input Fields
| Field | Type | Description |
|---|---|---|
timelineId | string | Custom timeline to update (from Create/Get or selector). |
name | string | New name (1–255 chars). Leave empty to keep current. |
description | string | New description. Leave empty to keep current. |
color | string | New color. Leave empty to keep current. |
isPublic | boolean | Update visibility. Leave empty to keep current. |
| Filter fields | various | Same as Create Timeline. Leave all filter fields empty/default to keep current filters; setting any filter replaces the entire filter set. |
Outputs
| Output | Type | Description |
|---|---|---|
success | boolean | Whether the update succeeded. |
timeline | object | The updated timeline object. |
When updating a timeline, leave filter fields empty if you do not want to change filters. Setting any filter field replaces all filters on the timeline.
When to Use Each Block
- Create Timeline — When you need a new named view (e.g. "Work focus") with specific filters. Use the output
timelineIdin Kaizen Todos to fetch todos for that timeline. - Get Timelines — To list all custom timelines (e.g. for a condition or loop) or to fetch one by ID/share ID and use its
filterSummary,includedTodoIds, orexcludedTodoIdsdownstream. - Update Timeline — To rename a timeline, change its description/color/visibility, or replace its filters. Chain after Get Timelines or Create Timeline using
<block_id.timelineId>.
Referencing Outputs
Use timeline IDs from Create or Get in the Kaizen Todos block:
# After Create Timeline
- type: kaizen_todos
inputs:
timelineId: "<create_timeline_1.timelineId>"
# After Get Timelines (one timeline)
- type: kaizen_update_timeline
inputs:
timelineId: "<get_timelines_1.timelineId>"
name: "Updated name"