---
title: "Retrieve timesheet details by ID"
method: GET
path: "/v1/timesheets/{timesheetId}"
tags: ["timesheet"]
---

# Retrieve timesheet details by ID

`GET /v1/timesheets/{timesheetId}`

## Request

- Base URL: `https://api.usemultiplier.com`
- URL: `https://api.usemultiplier.com/v1/timesheets/{timesheetId}`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/usemultiplier/apis/multiplier-public-rest-api/docs/v1/timesheets/:timesheetId/get.ts> (a function with typed inputs; its response is checked against the schema)

Get detailed information about a specific timesheet including all time entries.

This endpoint allows you to:
- Retrieve complete timesheet information
- View all daily time entries with work times and break times
- Access time summary broken down by day type and hours type
- See approval status and timestamps

Returns comprehensive timesheet data including individual entries for each day,
work time periods, break time periods, overtime calculations, and approval information.

## Path parameters

- `timesheetId` string, required

## Query parameters

- `employeeId` string, uuid, required

## Response `200`

Timesheet details retrieved successfully

- V1TimesheetsTimesheetIdGetResponse
  - `timesheetId` string, required: Unique identifier for the timesheet
  - `employeeId` string: Unique identifier for the timesheet
  - `startDate` string, date, required: Start date of the timesheet period
  - `endDate` string, date, required: End date of the timesheet period
  - `status` 'OPEN' | 'PARTIALLY_SUBMITTED' | 'SUBMITTED' | 'APPROVED' | 'REJECTED' | 'UNKNOWN', required: Current status of the timesheet
  - `comment` string: Comment on the timesheet
  - `totalDays` integer: Total number of days in the period
  - `totalSubmittedDays` integer: Number of days with submitted entries
  - `totalApprovedDays` integer: Number of days with approved entries
  - `totalRejectedDays` integer: Number of days with rejected entries
  - `cutOffDate` string, date: Cut-off date for timesheet submission
  - `timeValueInputMethod` 'START_TIME_END_TIME' | 'TOTAL_HOURS' | 'UNKNOWN': Method used for time entry input
  - `totalTimeSummary` V1TimesheetsTimesheetIdGetResponseTotalTimeSummary
    - `totalTimeInMinutes` integer: Total time tracked in minutes
    - `totalLateTimeInMinutes` integer: Total late time in minutes
    - `summaryItems` V1TimesheetsTimesheetIdGetResponseSummaryItem[]: Time summary broken down by day type and hours type
      - `dayType` 'NOT_APPLICABLE' | 'REGULAR_DAY' | 'REST_DAY' | 'REGULAR_HOLIDAY' | 'SPECIAL_HOLIDAY' | 'OPTIONAL_HOLIDAY' | 'REST_DAY_REGULAR_HOLIDAY' | 'REST_DAY_SPECIAL_HOLIDAY' | 'WEEKEND' | 'FULL_DAY_LEAVE' | 'PARTIAL_LEAVE' | 'ABSENT' | 'COMP_OFF' | 'UNKNOWN': Type of day
      - `hoursType` 'REGULAR_HOURS' | 'OVERTIME_HOURS' | 'OVERTIME_AT_NIGHT_HOURS' | 'NIGHT_SHIFT_HOURS' | 'UNKNOWN': Type of hours
      - `totalTimeInMinutes` integer: Total time for this combination in minutes
  - `entries` V1TimesheetsTimesheetIdGetResponseEntry[]: Individual timesheet entries for each day
    - `entryId` string: Unique identifier for the entry
    - `date` string, date: Date of the entry
    - `status` 'PARTIALLY_CREATED' | 'PENDING' | 'SUBMITTED' | 'APPROVED' | 'REJECTED' | 'PAID' | 'REVOKED' | 'PAYROLL_INGESTED' | 'UNKNOWN': Status of the entry
    - `dayType` 'NOT_APPLICABLE' | 'REGULAR_DAY' | 'REST_DAY' | 'REGULAR_HOLIDAY' | 'SPECIAL_HOLIDAY' | 'OPTIONAL_HOLIDAY' | 'REST_DAY_REGULAR_HOLIDAY' | 'REST_DAY_SPECIAL_HOLIDAY' | 'WEEKEND' | 'FULL_DAY_LEAVE' | 'PARTIAL_LEAVE' | 'ABSENT' | 'COMP_OFF' | 'UNKNOWN': Type of day
    - `regularTimeInMinutes` integer: Regular working time in minutes
    - `overtimeTotalInMinutes` integer: Total overtime in minutes
    - `overtimeAtNightInMinutes` integer: Overtime at night in minutes
    - `nightShiftTimeInMinutes` integer: Night shift time in minutes
    - `lateTimeInMinutes` integer: Late time in minutes
    - `workTimes` V1TimesheetsTimesheetIdGetResponseTimeRange[]: Work time periods for the day
      - `startTime` string, time: Start time in HH:mm:ss format
      - `endTime` string, time: End time in HH:mm:ss format
    - `breakTimes` V1TimesheetsTimesheetIdGetResponseTimeRange[]: Break time periods for the day
      - `startTime` string, time: Start time in HH:mm:ss format
      - `endTime` string, time: End time in HH:mm:ss format
    - `isPaidLeave` boolean: Whether this day is paid leave
    - `comment` string: Comment for the entry
    - `submittedOn` string, date-time: When the entry was submitted
    - `approvedOn` string, date-time: When the entry was approved
    - `rejectedOn` string, date-time: When the entry was rejected
  - `submittedOn` string, date-time: When the timesheet was submitted
  - `approvedOn` string, date-time: When the timesheet was approved
  - `createdOn` string, date-time: When the timesheet was created
  - `updatedOn` string, date-time: When the timesheet was last updated

## Other responses

- `400`: Invalid request parameters
- `401`: Authentication required
- `403`: Forbidden - insufficient permissions
- `404`: Resource not found
- `422`: Unprocessable entity - validation error
- `500`: Internal server error
- `503`: Service unavailable - upstream dependency error

## Changes

- **2026-10-19** `da31bb6ec00d`: 2 info
  - api tag `timesheet` added
  - api tag `Timesheet` removed
- **2026-08-18** `59cd6443fdbf`: 2 info
  - api tag `Timesheet` added
  - api tag `timesheet` removed

[Operation history](https://skmtc.dev/usemultiplier/apis/multiplier-public-rest-api/changes/v1/timesheets/:timesheetId/get.md)

---

[API](https://skmtc.dev/usemultiplier/apis/multiplier-public-rest-api.md) - [All operations](https://skmtc.dev/usemultiplier/apis/multiplier-public-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/usemultiplier/apis/multiplier-public-rest-api/revisions/da31bb6ec00d?raw)
