---
title: "Complete a user task"
method: POST
path: "/public/v1/tasks/{taskId}/complete"
tags: ["User Tasks"]
---

# Complete a user task

`POST /public/v1/tasks/{taskId}/complete`

Marks a task as completed. Only a user assigned to the task can complete it. Requires a USER API key.

## Path parameters

- `taskId` number, nullable

## Response `200`

Completed task

- PublicUserTask
  - `id` number, required
  - `content` string, required
  - `due_date` string, nullable
  - `completed` boolean, required
  - `completed_at` string, nullable
  - `created_at` string, required
  - `updated_at` string, required
  - `created_by` object, nullable
    - `id` number, required
    - `name` string, nullable
    - `email` string, nullable
  - `completed_by` object, nullable
    - `id` number, required
    - `name` string, nullable
    - `email` string, nullable
  - `assignees` object[], required — Assigned users
    - `id` number, required
    - `name` string, nullable
    - `email` string, nullable
  - `related` object, nullable — Linked object record, if the task is attached to one (else null).
    - `object_name` string, nullable — Object the task is linked to (the slug used in /objects commands).
    - `object_label` string, nullable
    - `row_id` string, nullable

## Other responses

- `400` — Bad Request (not an assignee, or already completed)

---

[API](https://skmtc.net/getfrontline/apis/public-api.md) · [All operations](https://skmtc.net/getfrontline/apis/public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/getfrontline/public-api/versions/9d33b6aad674/schema)
