Skip to main content
PUT
Update task status

Completing a task with a discarded save

When the requested statusSlug differs from the task’s current status and resolves to a status of type DONE, the platform first checks the task’s documents. If the most recent saved changes for one of them were discarded server-side and never redone, the transition is refused with 409 Conflict and nothing is written. The message names the affected documents by path (or by ID when a document has no path):
To clear the block, reopen each document the message names, redo the changes, and save again. A successful re-save — or any full-document save — releases it and the task completes normally.
Only the latest save per document counts, so a failure that has already been redone and saved does not block completion. Transitions to statuses of any other type are unaffected.
This endpoint also returns 409 Conflict for a stale changeSequence; the two cases share the CONFLICT code and are distinguished by the message.

Authorizations

x-api-key
string
header
required

API key for authentication. Create one from the Kodexa platform UI under Settings > Access Tokens.

Path Parameters

id
string<uuid>
required

Unique identifier (UUID) of the resource.

Body

application/json
statusSlug
string

Slug of the new task status.

Response

Updated task

A task represents a unit of work in a document review workflow, with an assignee, status, and due date.

assignee
object | null
required

A platform user represents a user account in the Kodexa platform.

assigneeId
string | null
required

ID of the user assigned to this task.

changeSequence
integer<int32>
required

Optimistic locking version number.

completedDate
string<date-time> | null
required

Date when the task was completed.

createdOn
string<date-time>
required

Timestamp when the task was created.

deleteUserEmail
string
required

Email of the user who deleted the task.

deleteUserId
string
required

ID of the user who deleted the task.

deleted
boolean
required

Whether the task has been soft-deleted.

deletedDate
string<date-time> | null
required

Timestamp when the task was soft-deleted.

description
string
required

Detailed description of the task.

Example:

"Review and validate all Q4 2025 invoices."

dueDate
string<date-time> | null
required

Due date for the task.

id
string
required

Unique identifier (UUID) for the task.

Example:

"a0eebc99-9c0b-4ef8-bb6d-6bb9bd380a11"

locked
boolean
required

Whether the task is locked for editing.

metadata
object
required

Task metadata including custom fields.

parentTask
unknown
required
parentTaskId
string | null
required

ID of the parent task (for sub-tasks).

plan
object | null
required
priority
integer<int32> | null
required

Priority level of the task (lower number = higher priority).

Example:

1

project
object | null
required

A project groups related document stores, assistants, tasks, and processing pipelines within an organization.

projectId
string | null
required

ID of the project this task belongs to.

properties
object | null
required

Task properties for UI state and configuration.

searchText
string
required

Full-text searchable representation of the task.

signal
object
required

Signal from human reviewer for plan-aware task completion.

taskActivities
object[] | null
required
team
object | null
required

A team groups users together for collaborative access control within projects.

teamId
string | null
required
template
object | null
required

A task template defines a reusable task configuration with default values.

templateId
string | null
required

ID of the task template used.

title
string
required

Title of the task.

Example:

"Review Q4 invoices"

updatedOn
string<date-time>
required

Timestamp when the task was last updated.

uuid
string
required

Secondary UUID identifier.

createdByActivityId
string | null
effectiveCreatedOn
string<date-time> | null

Document-arrival timestamp used for FIFO take-next ordering: the earliest created_on across the task's non-deleted document families, falling back to the task's own created_on when it has none. Maintained by the database; read-only.

lockedAt
string<date-time> | null
lockedById
string | null
statusSlug
string | null
taskGroup
object | null
taskGroupId
string | null