Close Checklist

Completes a close checklist task

Changed on

Marks the task as prepared, recorded as completed by the connected user at the current time. Requires an OAuth connection made by a named user; API keys are rejected with HTTP 403 because they do not act as a user. A task that is already completed is rejected with HTTP 409 so an earlier preparer's record is never overwritten. Returns the updated task.

post/close-checklists/{period}/tasks/{task_id}/complete

Request

Path parameters

periodstring yearMonth required

The checklist's accounting month in ISO-8601 format (YYYY-MM).

task_idstring uuid required

UUID of the checklist task, from list-close-checklist-tasks.

Response

OK

idstring uuid required
namestring required
notesstring

Free-text notes on the task.

due_datestring date
accounting_areastring
status'NOT_STARTED' | 'IN_REVIEW' | 'COMPLETE' required

NOT_STARTED: the preparer has not completed the task. IN_REVIEW: completed, but at least one reviewer has not signed off (or, with no reviewers assigned, nobody has reviewed it yet). COMPLETE: completed and every reviewer has signed off.

preparer_idstring uuid

User id of the assigned preparer.

completed_bystring uuid

User id of the person who completed the task. Absent for an early task whose recorded preparer is not a user id.

completed_atstring

When the task was completed, as a local date-time in the organization's timezone.

reviewed_bystring uuid

User id of the final review sign-off.

reviewed_atstring

When the final review sign-off happened, as a local date-time in the organization's timezone.

link_urlsstring[] required
attachment_idsstring[] required

Ids of documents attached to the task.

Example response

{
  "name": "Collect accruals from department heads",
  "accounting_area": "Accruals",
  "completed_at": "2026-10-03T14:05:00",
  "reviewers": [
    {
      "signed_off_at": "2026-10-04T09:30:00"
    }
  ],
  "reviewed_at": "2026-10-04T09:30:00"
}

Changes