---
title: "Discard Your Approval Request"
method: PUT
path: "/timesheets/{timesheet_id}/discard-approval"
tags: ["Timesheets"]
---

# Discard Your Approval Request

`PUT /timesheets/{timesheet_id}/discard-approval`

## Request

- Base URL: `https://api.everhour.com`
- URL: `https://api.everhour.com/timesheets/{timesheet_id}/discard-approval`
- Auth: API key in header `X-Api-Key`
- TypeScript: <https://skmtc.dev/everhour/apis/everhour-api/docs/timesheets/:timesheet_id/discard-approval/put.ts> (a function with typed inputs; its response is checked against the schema)

Retract the caller's previously submitted approval request for a week. The week returns to draft state.

## Path parameters

- `timesheet_id` number, required

## Request body

- TimesheetApprovalRequest
  - `comment` string
  - `reviewer` number: User ID, must be admin in team
  - `sendNotification` boolean

## Response `200`

OK

- TimesheetApproval
  - `id` number: Timesheet ID
  - `user` number: User ID
  - `weekId` number
  - `reviewer` number: Reviewer User ID
  - `history` TimesheetApprovalHistory[]
    - `action` 'submitted' | 'rejected' | 'approved' | 'discarded'
    - `days` ApprovalHistoryDays
      - `monday` boolean
      - `tuesday` boolean
      - `wednesday` boolean
      - `thursday` boolean
      - `friday` boolean
      - `saturday` boolean
      - `sunday` boolean
    - `user` number: User ID
    - `comment` string
    - `createdAt` string: Datetime when action was created
  - `status` 'pending' | 'rejected' | 'approved' | 'partial_approved' | 'discarded'
  - `totalTime` integer, nullable: Total approved time in seconds.

## Other responses

- `401`: Unauthorized

---

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