---
title: "Update an approval request"
method: PATCH
path: "/v1/workspaces/{workspaceId}/approval-requests/{approvalRequestId}"
tags: ["Approval"]
---

# Update an approval request

`PATCH /v1/workspaces/{workspaceId}/approval-requests/{approvalRequestId}`

## Path parameters

- `workspaceId` string, required — Represents workspace identifier across the system.
- `approvalRequestId` string, required — Represents an approval request identifier across the system.

## Request body

- UpdateApprovalRequest
  - `note` string — Additional notes for the approval request.
  - `state` 'PENDING' | 'APPROVED' | 'WITHDRAWN_SUBMISSION' | 'WITHDRAWN_APPROVAL' | 'REJECTED', required — Specifies the approval state to set.

## Response `200`

OK

- ApprovalRequestDtoV1 — Represents a valid approval request data transfer object.
  - `creator` ApprovalRequestCreatorDtoV1 — Represents approval request creator object.
    - `userEmail` string — Represents user email.
    - `userId` string — Represents user identifier across the system.
    - `userName` string — Represents user name.
  - `dateRange` DateRangeDto — Represents date range object.
    - `end` string, date-time
    - `start` string, date-time
  - `id` string — Represents approval request identifier across the workspace.
  - `owner` ApprovalRequestOwnerDtoV1 — Represents approval request owner object.
    - `startOfWeek` 'MONDAY' | 'TUESDAY' | 'WEDNESDAY' | 'THURSDAY' | 'FRIDAY' | 'SATURDAY' | 'SUNDAY' — Represents a day of the week.
    - `timeZone` string — Represents time zone.
    - `userId` string — Represents user identifier across the system.
    - `userName` string — Represents user name.
  - `status` ApprovalRequestStatusDtoV1 — Represents approval request status object.
    - `note` string — Represents an approval requesst note.
    - `state` 'PENDING' | 'APPROVED' | 'WITHDRAWN_SUBMISSION' | 'WITHDRAWN_APPROVAL' | 'REJECTED' — Represents approval state enum.
    - `updatedAt` string, date-time — Represents a date in yyyy-MM-ddThh:mm:ssZ format.
    - `updatedBy` string — Represents user identifier across the system.
    - `updatedByUserName` string — Represents user name.
  - `type` string — Represents approval request type.
  - `workspaceId` string — Represents workspace identifier across the system.

## Changes

- **2026-08-20** `a5b636acbcd8` — 16 info
  - the `note` request property default value `` was added
  - the `state` request property default value `` was added
  - the `id` response's property default value `` was added for the status `200`
  - the `note` response's property default value `` was added for the status `200`
  - …12 more

[Change history](https://skmtc.dev/clockify/apis/clockify-api/changes/v1/workspaces/:workspaceId/approval-requests/:approvalRequestId/patch.md)

---

[API](https://skmtc.dev/clockify/apis/clockify-api.md) · [All operations](https://skmtc.dev/clockify/apis/clockify-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/clockify/clockify-api/revisions/a5b636acbcd8/schema)
