---
title: "Updates the specified project status."
method: PUT
path: "/projectstatuses/{projectStatusId}"
tags: ["projectStatuses"]
---

# Updates the specified project status.

`PUT /projectstatuses/{projectStatusId}`

## Request

- Base URL: `https://api.awork.com/api/v1`
- URL: `https://api.awork.com/api/v1/projectstatuses/{projectStatusId}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/awork-io/apis/awork-io/docs/projectstatuses/:projectStatusId/put.ts> (a function with typed inputs; its response is checked against the schema)

Updates the specified project status and returns the saved status.
            <Check title="Required Permissions" icon="key">The user must be the project creator or have `project-master-data:write` permission.</Check>

## Path parameters

- `projectStatusId` string, uuid, required

## Request body

- ProjectStatusForm
  - `name` string, required: The name of the project status.
  - `type` string, required: Specifies the general type of this project status. Accepted values: 'progress', 'not-started', 'closed', 'stuck

## Response `200`

OK

- ProjectStatus
  - `id` string, uuid: The primary identifier of this project status.
  - `name` string, nullable: The name of the project status.
  - `type` string, nullable: The general type of this project status.
  - `isArchived` boolean: Indicates whether this status is archived.
  - `order` integer, nullable: The order of this status.
  - `createdOn` string, date-time: The date this entity was created.
  - `createdBy` string, uuid: The id of the user who created this entity.
  - `updatedOn` string, date-time: The date this entity was last modified.
  - `projectTemplateId` string, uuid, nullable: The id of the project template of the status.
  - `projectId` string, uuid, nullable: The id of the project the status belongs to.
  - `workflowId` string, uuid, nullable: The id of the workflow linked to this project status.
  - `updatedBy` string, uuid: The id of the user who last modified this entity.
  - `isExternal` boolean: True if the project status is coming from an external workspace (awork Connect).

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `404`: Not Found

## Changes

- **2026-10-06** `84f37b3c4cbc`: 1 info
  - added the optional property `isArchived` to the response with the `200` status
- **2026-09-17** `1556e0487867`: 1 warning, 1 info
  - deleted the `header` request parameter `Authorization`
  - the endpoint scheme security `oauth2` was added to the API
- **2026-09-12** `8e46cf415581`: 1 info
  - api operation id `PutProjectStatusById` removed and replaced with `projectStatuses_PutProjectStatusById`
- **2026-08-21** `a13e7c704262`: 2 warning
  - the `name` request property's maxLength was set to `255`
  - the `type` request property's maxLength was set to `25`

[Operation history](https://skmtc.dev/awork-io/apis/awork-io/changes/projectstatuses/:projectStatusId/put.md)

---

[API](https://skmtc.dev/awork-io/apis/awork-io.md) - [All operations](https://skmtc.dev/awork-io/apis/awork-io/llms.txt) - [OpenAPI document](https://skmtc.dev/awork-io/apis/awork-io/revisions/81151fac7e79?raw)
