---
title: "Signs off a close checklist task as reviewer"
method: POST
path: "/close-checklists/{period}/tasks/{task_id}/sign-off"
tags: ["Close Checklist"]
---

# Signs off a close checklist task as reviewer

`POST /close-checklists/{period}/tasks/{task_id}/sign-off`

## Request

- Base URL: `https://api.rillet.com`
- URL: `https://api.rillet.com/close-checklists/{period}/tasks/{task_id}/sign-off`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/rillet/apis/rillet-accounting-api/docs/close-checklists/:period/tasks/:task_id/sign-off/post.ts> (a function with typed inputs; its response is checked against the schema)

Records the connected user's review sign-off on a completed task. Requires an OAuth connection made by a
named user; API keys are rejected with HTTP 403. The task must be completed first (HTTP 409 otherwise).
Only a reviewer on the task who has not signed off yet may sign off (HTTP 403 otherwise); when the
organization enforces an ordered reviewer queue, it must also be their turn. A fully signed-off task is
rejected with HTTP 409. Returns the updated task.

## Path parameters

- `period` string, yearMonth, required
- `task_id` string, uuid, required

## Response `200`

OK

- CloseChecklistTask
  - `id` string, uuid, required
  - `name` string, required
  - `notes` string: Free-text notes on the task.
  - `due_date` string, date
  - `accounting_area` string
  - `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_id` string, uuid: User id of the assigned preparer.
  - `completed_by` string, uuid: User id of the person who completed the task. Absent for an early task whose recorded preparer is not a user id.
  - `completed_at` string: When the task was completed, as a local date-time in the organization's timezone.
  - `reviewers` CloseChecklistTaskReviewer[], required: The ordered reviewer queue. Reviewers sign off in this order when the organization enforces it.
    - `user_id` string, uuid, required
    - `order` integer, required: Position in the reviewer queue, starting at 1.
    - `signed_off_at` string: When this reviewer signed off, as a local date-time in the organization's timezone. Absent until they sign off.
  - `reviewed_by` string, uuid: User id of the final review sign-off.
  - `reviewed_at` string: When the final review sign-off happened, as a local date-time in the organization's timezone.
  - `link_urls` string[], required
  - `attachment_ids` string[], required: Ids of documents attached to the task.

## Other responses

- `default`: Error

## Changes

- **2026-11-03** `c393d0102005`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/rillet/apis/rillet-accounting-api/changes/close-checklists/:period/tasks/:task_id/sign-off/post.md)

---

[API](https://skmtc.dev/rillet/apis/rillet-accounting-api.md) - [All operations](https://skmtc.dev/rillet/apis/rillet-accounting-api/llms.txt) - [OpenAPI document](https://skmtc.dev/rillet/apis/rillet-accounting-api/revisions/c393d0102005?raw)
