---
title: "Update a task"
method: PUT
path: "/psa/projects/{projectId}/tasks/{taskId}"
tags: ["Tasks"]
---

# Update a task

`PUT /psa/projects/{projectId}/tasks/{taskId}`

Update project task.

## Path parameters

- `projectId` string, required
- `taskId` string, required

## Request body

- UpdateProjectTask
  - `name` string, nullable
  - `description` string, nullable
  - `taskBillingType` 0 | 1 | 2
  - `assignedTo` string[], nullable
  - `startDate` string, date-time, nullable
  - `endDate` string, date-time, nullable
  - `estimatedHours` number, double, nullable
  - `phaseId` string, nullable

## Response `200`

OK

- BooleanResponse — class represents response.
  - `succeeded` boolean — Gets or sets a value indicating whether this Keka.API.Web.Core.Response`1 is succeeded.
  - `message` string, nullable — Gets or sets the message.
  - `errors` string[], nullable — Gets or sets the errors.
  - `data` boolean — Gets or sets the data.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden

---

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