Skip to main content
A Task always has the same set of fields. The association field varies depending on type. The four examples below cover every possible shape.

Example: todo task

A standalone to-do has no association. The chat_id field and association are both null.

Example: chat task

Linked to a chat. association.chat_id and the top-level chat_id mirror each other.

Example: message task

Linked to a specific message inside a chat. association.chat_id is the chat the message belongs to (denormalized for convenience).

Example: ticket task

Linked to a ticket. association.chat_id is the chat the ticket lives in.

Attributes

string
Server-generated. Stable identifier for the task (e.g. task-00000000000000a1).
string
Human-readable summary. 1–500 characters.
string
What this task is attached to. One of todo, chat, message, ticket. Defaults to todo. Immutable after creation.
string
Workflow state. One of open, inprogress, closed. Defaults to open.
number
Numeric priority. One of 1, 2, 3. 1 is the highest. Defaults to 1.
string | null
Email of an org member, or null if unassigned.
string
Email of the org member who created the task, or the literal string "api" if not specified on create. Immutable after creation.
string | null
Email of whoever last modified the task, or "api".
string
ISO 8601 formatted timestamp when the task was created. Immutable.
string
ISO 8601 formatted timestamp. Auto-updated on every PATCH.
string | null
ISO 8601 timestamp for when the task is due. null if no deadline.
string | null
ISO 8601 timestamp for when a reminder should fire. null if no reminder.
string | null
Free-form additional context.
string | null
Derived from the association at create time. Populated for chat, message, and ticket tasks; null for todo.
object | null
Structured reference to the linked resource. null for todo tasks. Immutable after creation.
object | null
Auto-managed completion record. Populated when the task is closed.