Skip to main content
PATCH
Update a task of a case. Send status to close or reopen it, due_at to move its deadline, assignee to hand it to someone else. At least one field is required.

Statuses

done and dismissed both close the task and stamp completed_at. Setting open or in_progress on a closed task reopens it and clears completed_at. This works on any team-side task of the case, including the ones Penbox created itself — so your integration can close a Penbox follow-up once your side has done the work. Tasks assigned to a contact are read-only through the API: they close when the contact submits the form Penbox sent them. Updating one returns 403, and so does moving a team-side task onto a contact.
There is no delete. Removing a task stays a manual action inside Penbox. Use dismissed for “this no longer needs doing”.
The task must belong to the case in the path. A task id from another case returns a 404.

Authorizations

Authorization
string
header
required

API token (starts with pnbx_). Create at https://app.penbox.io/workspace/settings/api. Include as: Authorization: Bearer {token}

Path Parameters

id
string<uuid>
required

Case UUID

taskId
string<uuid>
required

Task UUID

Body

application/json
status
enum<string>

The task status. done and dismissed both close it.

Available options:
open,
in_progress,
done,
dismissed
Example:

"done"

due_at
string<date-time> | null

New due date, or null to clear it.

assignee
object | null

The workspace member the task is assigned to, resolved by email. Silent members resolve too. Pass null to leave the task unassigned.

Response

Task updated

id
string<uuid>

Task UUID

created_at
string<date-time>

When the task was created

case
object

The case this task belongs to

type
string

The kind of task. manual for every task created through the API. Tasks Penbox creates by itself carry their own key, such as fill_form, review or follow_up.

Example:

"manual"

title
string | null

What has to be done. Empty on some Penbox-created tasks, which Penbox labels from their type in the reader language.

description
string | null

Optional detail

status
enum<string>

Current task status

Available options:
open,
in_progress,
done,
dismissed
due_at
string<date-time> | null

Due date

completed_at
string<date-time> | null

When the task was closed

step_key
string | null

The case step that spawned the task, when Penbox created it

assignee
object | null

Who has to close the task. null when unassigned.