Skip to main content
Base path: /api/workspaces/{workspaceId}/tasks. Ids are UUIDs.

Create a task

title is the only required field. publishMode is "immediate" | "scheduled" | "manual" (default "manual"); "scheduled" additionally requires publishAt (ISO timestamp). requiresReview defaults to true and is forced true for Viewer-role callers. Returns 201 with the bare task object.

List tasks

Returns a bare JSON array (offset pagination, limit 1–100). Each task includes its contentItems and an isOverdue flag. The status filter accepts todo, working, review, approved, published, deleted, failed. A task’s status field can additionally be publishing while a publish is in flight (not filterable).

Approve, reject, publish

Approve requires the task to be in review. The response includes willPublishAt"immediately", "manual", or the scheduled timestamp — telling you what happens next. Reject accepts an optional { "comment": "…" }, returns the task to todo, bumps revisionCount, and keeps the assignee — the same worker revises. Rejecting an approved task also clears the approval (the “revise” flow). Publish publishes an approved task now — the manual-mode trigger.