---
title: "Update Timesheet"
method: POST
path: "/tsa/v2/timesheets/{id}:update"
tags: ["Timesheet Approval"]
---

# Update Timesheet

`POST /tsa/v2/timesheets/{id}:update`

## Request

- Base URL: `https://your-subdomain.deputy.deputy.com/api`
- URL: `https://your-subdomain.deputy.deputy.com/api/tsa/v2/timesheets/{id}:update`
- Auth: API key in header `OAuth`

Update a Timesheet.

## Path parameters

- `id` integer, required

## Request body

- TimesheetUpdateRequestTimesheetUpdateRequestBody
  - `setProperties` TsaTimesheetPropertyRequest
    - `startTime` string, int64: unix epoch timestamp, seconds
    - `endTime` string, int64: unix epoch timestamp, seconds
    - `operationalUnitId` integer: operational unit (area) ID
    - `setBreaks` TsaTimesheetBreaksRequest
      - `breaks` ModelTimesheetBreak[]: passing an empty array here will delete all breaks for the timesheet.
        - `duration` integer
        - `startTimeOffset` integer
        - `breakType` 'NO_TYPE' | 'MEAL_BREAK' | 'REST_BREAK'
      - `totalDurationMealBreak` integer: total duration of meal break in minutes
    - `employeeId` integer
    - `leaveRuleId` integer: leave rule (leave type) ID
    - `employeeComment` string: employee comment for the timesheet
  - `setAnswers` TsaTimesheetQuestionSubmitAnswersRequest
    - `answers` TsaTimesheetQuestionAnswerSubmission[]: omitted answers will be assumed null.
      - `name` string
      - `employeeAnswer` string
  - `setChildTimesheets` TsaTimesheetChildrenRequest
    - `childTimesheets` TsaChildTimesheetRequest[]
      - `operationalUnitId` integer
      - `startTime` string, int64
      - `endTime` string, int64

## Response `200`

A successful response.

- TsaTimesheetUpdateResponse
  - `data` Tenanttsav2modelTimesheet
    - `id` integer
    - `employeeId` integer
    - `startTime` string, int64
    - `endTime` string, int64
    - `operationalUnitId` integer
    - `breaks` ModelTimesheetBreak[]
      - `duration` integer
      - `startTimeOffset` integer
      - `breakType` 'NO_TYPE' | 'MEAL_BREAK' | 'REST_BREAK'
    - `employeeComment` string
    - `discarded` boolean
    - `timeApproved` boolean
    - `payRuleApproved` boolean
    - `rosterId` integer
    - `issueFlags` ModelIssueFlag[]
    - `progress` 'PROGRESS_UNSPECIFIED' | 'PROGRESS_UPCOMING' | 'PROGRESS_LATE' | 'PROGRESS_ABSENT' | 'PROGRESS_ON_SHIFT' | 'PROGRESS_NO_ISSUES' | 'PROGRESS_ISSUES' | 'PROGRESS_TIME_APPROVED' | 'PROGRESS_APPROVED' | 'PROGRESS_AUTO_APPROVED' | 'PROGRESS_EXPORTED' | 'PROGRESS_PAID' | 'PROGRESS_DISCARDED'
    - `payReturns` Tenanttsav2modelPayReturn[]
      - `payRuleId` integer
      - `hours` number, float
      - `cost` number, float
  - `success` boolean

---

[API](https://skmtc.dev/deputy/apis/deputy-v2-api.md) - [All operations](https://skmtc.dev/deputy/apis/deputy-v2-api/llms.txt) - [OpenAPI document](https://skmtc.dev/deputy/apis/deputy-v2-api/revisions/78f0278f4608?raw)
