Kaizen

Kaizen Update Todo

Batch-update todos with partial field updates (title, notes, priority, visibility, tags, buckets, schedule, location, links, sub tasks, completion options) and optional AI Optimize

The Kaizen Update Todo block updates one or more todos with partial field changes. Only provided fields are applied; leave fields empty to keep existing values. You can also enable AI Optimize to have the block suggest improvements (title, notes, priority, sub tasks, tags, schedule, etc.); AI suggestions are merged with any values you set, and your values take precedence on conflict.

Block Type

kaizen_update_todo

Input Fields

Todo Selection

FieldDescription
todoIdsComma-separated todo IDs or block reference like <block_id.todoIds>. In the block UI this is the Todos selector; the API accepts an array of IDs.

Use the <block_id.todoIds> syntax to reference todos from a Kaizen Todos or other block. Example: <kaizen_todos_1.todoIds>

Update Fields (all optional — leave empty to keep current)

FieldOptions / FormatDescription
titlestring (1–500 chars)New title
notesstringNew notes. Omit to keep; send null to clear.
priority"", LOW, MEDIUM, HIGH, URGENTNew priority. Use "" to keep current; use Clear to remove.
visibility"", PUBLIC, PRIVATE, FOLLOWERSNew visibility. Use "" to keep current
tagIds / tagsComma-separated tag IDs, or array of tag IDs/namesTags to set (replaces existing). In the block UI use the tag selector; API accepts tags (array). Leave empty to keep current.
bucketIdsComma-separated or array of bucket IDsBuckets to set (replaces existing). Leave empty to keep current.
ScheduleSee belowStart/end date and time, timezone; or clear schedule.
locationObject: { latitude, longitude, title?, address? }Location. Leave empty to keep; use Clear Location to remove.
linksArray of { url, title?, description? }Links (replaces existing). Leave empty to keep current.
subTodosArray of { title, description?, isRequired? }Sub tasks (replaces existing). Leave empty to keep current.
conditionsForCompletionObject: requireAllSubTodos, minSubTodosRequired, withComment, workflow, etc.Completion conditions. Leave empty to keep current.
mediaIdsArray of media attachment IDsMedia attachments. Leave empty to keep; [] to clear.
skipErrorsboolean (default: true)If true, continue updating other todos when one fails. Recommended for batch updates.

Schedule fields (block exposes separate inputs; API accepts a single schedule object):

  • scheduleStartDate, scheduleEndDateYYYY-MM-DD
  • scheduleStartTime, scheduleEndTimeHH:mm
  • scheduleTimezone — IANA timezone (e.g. America/New_York)
  • Clear Schedule — removes schedule from selected todos

AI Optimize

When you enable AI Optimize in the block, the block fetches each todo, calls an AI model for the options you turned on, then merges AI suggestions with any fields you provided. Your values always override AI suggestions when both are present.

OptionDescription
Improve titleAI improves the title for clarity and actionability.
Improve notesAI improves or expands the notes.
Improvement modeHow AI improves title/notes: Clarity, Priority, Context, or All.
Generate sub tasksAI suggests 2–10 sub tasks (maxSubTodos caps the count).
Suggest priorityAI suggests priority from content and context.
Suggest visibilityAI suggests visibility (e.g. PRIVATE for personal).
Suggest tagsAI suggests tags.
Suggest bucketsAI suggests bucket IDs when context is clear.
Replace tags/buckets (vs append)If on, AI suggestions replace existing tags/buckets; if off, they are appended.
Optimize scheduleAI infers schedule from notes/title.
Suggest linksAI suggests relevant URLs (docs, references).
Optimize completion conditionsAI recommends requireAllSubTodos / minSubTodosRequired from sub tasks.

AI options are optional. You can set only the manual fields, only AI options, or both; when both are set, the final patch is merged with user values winning on conflict.

Outputs

OutputTypeDescription
successbooleanWhether the operation succeeded (all requested todos updated).
updatedCountnumberNumber of todos updated
resultsarrayPer-todo result { todoId, success, error? }
messagestringHuman-readable summary
failureSummarystringWhen some todos failed: list of todoId – error for each failure. Omitted when all succeeded.

Common Use Cases

Update Title and Priority from Fetch

inputs:
  todoIds: "<fetch_todos.todoIds>"
  title: "Updated title"
  priority: HIGH

Set Tags Only (Keep Everything Else)

inputs:
  todoIds: "<kaizen_todos_1.todoIds>"
  tagIds: "tag-id-1,tag-id-2"

Clear Priority (Keep Current in UI)

inputs:
  todoIds: "<kaizen_todos_1.todoIds>"
  priority: ""

Batch Update with Skip Errors

When updating many todos, enable Skip Errors so one failure does not stop the rest. Check results or failureSummary for failures.

inputs:
  todoIds: "<kaizen_todos_1.todoIds>"
  priority: HIGH
  skipErrors: true

AI Optimize: Improve Title and Suggest Priority

Enable AI: Improve title and AI: Suggest priority in the block. Leave other fields empty to let AI suggest, or set e.g. title to override AI for that field only.

inputs:
  todoIds: "<kaizen_todos_1.todoIds>"
  # Optional overrides (AI still runs for other options):
  # title: "My custom title"
  # priority: HIGH
# In the block UI, turn on: AI: Improve title, AI: Suggest priority

Referencing Outputs

Reference todo IDs from upstream blocks:

todoIds: "<kaizen_todos_1.todoIds>"

Or use a manual comma-separated list when not chaining from another block.

Complete Workflow Example

# 1. Fetch incomplete todos
- type: kaizen_todos
  name: Fetch Todos
  inputs:
    collectionFilter: library
    completionStatus: NOT_COMPLETED
    limit: 5

# 2. Update their priority to HIGH
- type: kaizen_update_todo
  name: Set High Priority
  inputs:
    todoIds: "<fetch_todos.todoIds>"
    priority: HIGH
On this page

On this page

Start building today
Trusted by over 60,000 builders.
Build Agentic workflows visually on a drag-and-drop canvas or with natural language.
Get started