Task Model

Configuring Task Data Model #

This guide outlines the configuration of a Task data model.

The Task data model defines the structure for importing tasks from an external source.

Task Properties #

The following table lists all available properties for the Task data model, their descriptions, and whether they are required.

Property Name Description Required Data Type / Expected Values
id Task identifier. Yes Varies (e.g., integer, UUID, text)
title Task title. Yes Text
created_at Timestamp when the task was created. Yes Timestamp (e.g., NOW(), 'YYYY-MM-DD'::date)
content Detailed description of the task. No Text
account_ids An array of account identifiers associated with this task. No jsonb_build_array('id1', 'id2')
assignee_emails An array of user emails (workspace users) assigned to this task. No jsonb_build_array('email1@example.com', 'email2@example.com')
is_done Indicates if the task is completed. No "true" / "false"
in_progress Indicates if the task is currently in progress. No "true" / "false"
due_at Timestamp when the task is due. No Timestamp (e.g., 'YYYY-MM-DD HH:MI:SS'::timestamptz)
expires_at Timestamp when the task expires. No Timestamp (e.g., 'YYYY-MM-DD HH:MI:SS'::timestamptz)
priority The priority level of the task. No "high" / "medium" / "low"

Minimal Setup Query #

To define a basic Task data model, you must include the required properties: id, title, and created_at. You can use a PostgreSQL query like the example below for a minimal setup.

SELECT
  1 AS id,
  'test task model' AS title,
  '2025-08-12'::date AS created_at;

This query provides the absolute minimum required properties. You can expand it to include any of the optional properties listed above with appropriate default values or dynamic data as needed. The property names from your query will be used as section headings in the UI, so consider naming them descriptively.