---
title: "Create user time entry"
method: POST
path: "/users/{user_id}/time_entries"
tags: ["time entries"]
---

# Create user time entry

`POST /users/{user_id}/time_entries`

Creates a new time entry for a user. The `user_id` in the URL must match the `user_id` in the request body if it's supplied.

>**Note:** When creating time entries, a valid `user_id`, `assignable_id`, `date` and `hours` must be supplied. Assignable ID can be `assignable_id`, `project_id` or `leave_type_id`.

You can optionally specify values for task and notes, which must be fewer than 256 characters in length. If you know a valid `bill_rate_id` matching the user and project of the time entry, you can specify that at the time of creating a time entry as well.

## Path parameters

- `user_id` integer, required

## Request body

- TimeEntryCreateRequest
  - `user_id` integer, required — User ID (licensed user only).
  - `assignable_id` integer, required — Project, Phase or Leave type ID.
  - `date` string, date, required — The date.
  - `hours` number, required — Number of hours confirmed.
  - `task` string, nullable — A task category.
  - `notes` string, nullable — A note.
  - `bill_rate_id` integer, nullable — The rate ID reference.

## Response `200`

The time entry was created successfully.

- TimeEntry
  - `id` integer — Unique identifier for the time entry.
  - `user_id` integer, required — The ID of the user (licensed user only) associated with the time entry.
  - `assignable_id` integer, required — The ID of the assigned Project, Phase, or Leave Type.
  - `assignable_type` 'Project' | 'LeaveType' — The type of the assignable resource.
  - `date` string, date, required — The date of the time entry.
  - `hours` number, float, required — The number of hours confirmed. Can be null.
  - `is_suggestion` boolean — Indicates if the time entry is a suggestion.
  - `scheduled_hours` number, float, nullable — The number of scheduled hours for the time entry.
  - `task` string, nullable — The task category. Can be null.
  - `notes` string, nullable — Additional notes for the time entry. Can be null.
  - `bill_rate` number, float, nullable — The hourly rate for the time entered.
  - `bill_rate_id` integer, nullable — The ID of the billing rate.
  - `created_at` string, date-time — Timestamp when the time entry was created.
  - `updated_at` string, date-time — Timestamp when the time entry was last updated.

## Other responses

- `404` — Bad request. The time couldn't be created. The `user_id` was not found. Invalid input or missing parameters.

---

[API](https://skmtc.net/smartsheet/apis/resource-management-openapi-reference.md) · [All operations](https://skmtc.net/smartsheet/apis/resource-management-openapi-reference/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/smartsheet/resource-management-openapi-reference/versions/e4c439ac13f2/schema)
