---
title: "Create TimeSheet"
method: POST
path: "/v1/timesheets"
tags: ["Timesheets"]
---

# Create TimeSheet

`POST /v1/timesheets`

## Request

- Base URL: `https://api.avionte.com/front-office`
- URL: `https://api.avionte.com/front-office/v1/timesheets`
- Auth: one of:
  - API key in header `x-api-key`
  - HTTP bearer

Creates a new TimeSheet.

## Headers

- `RequestId` string, uuid: Unique request identifier in UUID format used to correlate request data to log entries and events.
- `FrontOfficeTenantId` integer
- `Tenant` string

## Request body

- TimeSheetDto
  - `id` integer: The identifier for the timesheet.
  - `placementId` integer, required: The identifier for the placement. It allows the timesheet to be correlated with the talent to whom the time belongs.
  - `weekWorked` string, date-time, required: The week ending date. This is just a date stamp, no time should be included.
  - `dailyTime` TimeEntryDto[], required: A list of time entries and their details.
    - `dayWorked` string, date-time, required: The date for the time entry. This should be just a date stamp. No time should be included.
    - `timeIn` string: The start time of the day.
    - `timeOut` string: The end time of the day.
    - `breakOut` string: The break start time.
    - `breakIn` string: The break end time.
    - `breakUnit` number: The break unit.
    - `additionalTimeEntry` AdditionalTimeEntryDto[]: List of additional time entry.
      - `additionalTransactionTypeId` integer, required: Additional pay code except Reg, OT and DT.
      - `punchIn` string: The start time of the day.
      - `punchOut` string: The end time of the day.
      - `unit` number: The number of pay and/or bill units for the time entry. Usually units are hours. Optional when TimeIn and TimeOut is passed.
      - `payRate` number: Pay Rate for the additional pay code. Used if placement is missing setup for additional transaction type.
      - `billRate` number: Bill Rate for the additional pay code. Used if placement is missing setup for additional transaction type.
    - `dayWorkedCalulated` string, date-time
  - `status` string, required: The status of the timesheet. Accepted Values are: Saved, Submitted and Approved.
  - `timeSheetNote` TimeSheetNoteDto
    - `date` string, date-time, required: The Date for the TimeSheet note. This is just a date stamp, no time should be included.
    - `userId` integer, required: The Author for the TimeSheet note.
    - `note` string, required: The note for the TimeSheet.

## Response `201`

The created TimeSheet.

- TimeSheetDto
  - `id` integer: The identifier for the timesheet.
  - `placementId` integer, required: The identifier for the placement. It allows the timesheet to be correlated with the talent to whom the time belongs.
  - `weekWorked` string, date-time, required: The week ending date. This is just a date stamp, no time should be included.
  - `dailyTime` TimeEntryDto[], required: A list of time entries and their details.
    - `dayWorked` string, date-time, required: The date for the time entry. This should be just a date stamp. No time should be included.
    - `timeIn` string: The start time of the day.
    - `timeOut` string: The end time of the day.
    - `breakOut` string: The break start time.
    - `breakIn` string: The break end time.
    - `breakUnit` number: The break unit.
    - `additionalTimeEntry` AdditionalTimeEntryDto[]: List of additional time entry.
      - `additionalTransactionTypeId` integer, required: Additional pay code except Reg, OT and DT.
      - `punchIn` string: The start time of the day.
      - `punchOut` string: The end time of the day.
      - `unit` number: The number of pay and/or bill units for the time entry. Usually units are hours. Optional when TimeIn and TimeOut is passed.
      - `payRate` number: Pay Rate for the additional pay code. Used if placement is missing setup for additional transaction type.
      - `billRate` number: Bill Rate for the additional pay code. Used if placement is missing setup for additional transaction type.
    - `dayWorkedCalulated` string, date-time
  - `status` string, required: The status of the timesheet. Accepted Values are: Saved, Submitted and Approved.
  - `timeSheetNote` TimeSheetNoteDto
    - `date` string, date-time, required: The Date for the TimeSheet note. This is just a date stamp, no time should be included.
    - `userId` integer, required: The Author for the TimeSheet note.
    - `note` string, required: The note for the TimeSheet.

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Access Denied
- `404`: Not found
- `405`: Unsupported method
- `406`: Unsupported format(s) indicated by Accept header
- `415`: Unsupported format(s) indicated by the Content-Type header
- `429`: Too many requests
- `500`: An unexpected error occurred
- `502`: Service Unavailable
- `504`: Gateway Timeout

---

[API](https://skmtc.dev/avionte/apis/bold-front-office-api.md) - [All operations](https://skmtc.dev/avionte/apis/bold-front-office-api/llms.txt) - [OpenAPI document](https://skmtc.dev/avionte/apis/bold-front-office-api/revisions/bd5996cbaa0f?raw)
