AlmondTill/G3N API

NewTaskInput

input type

Create-input for a Task. The tenant is derived SERVER-SIDE; ⚠ the caption IS the task's title and is REQUIRED at the boundary (the CsCase stance — an unnamed task is meaningless). Assignees/teams/labels validate in-tenant + ACTIVE; refs validate in-tenant + non-doomed; linkedFromTaskId validates COMPLETED-only. The TASKBOOK inbox rows for the birth sets mint in the SAME transaction.

Fields

FieldTypeRequiredNotes
captionStringnoOptional: when omitted the per-type default applies — NONE — the CsCase divergence class: the caption IS the task title, and an omitted caption refuses VALIDATION/INVALID at the boundary instead of defaulting; when supplied it must be non-blank.
descriptionStringnoThe task's brief (≤8192).
priorityStringnoDefaults 'normal' when omitted.
reportToIDnoIn-tenant + ACTIVE User at set.
assigneeUserIdsID [ID!]no≤8 distinct in-tenant ACTIVE Users; omit = unassigned (the inbox open state).
teamIdsID [ID!]no≤4 distinct in-tenant ACTIVE Teams.
labelIdsID [ID!]no≤16 distinct in-tenant ACTIVE TaskLabels.
dueAtStringnoISO-8601 instant.
constructRefsTaskConstructRefInput [TaskConstructRefInput!]no≤16 distinct (type,id) refs — in-tenant + non-doomed at write (ref-only).
linkedFromTaskIdIDnoThe COMPLETED task this one reopens. IMMUTABLE.

Used by