# List project time entries

Retrieves a paginated list of time entries for a specific project.

Endpoint: GET /projects/{project_id}/time_entries
Version: v1
Security: AuthToken

## Path parameters:

  - `project_id` (integer, required)
    The ID of the project.

## Query parameters:

  - `from` (string)
    Get time entries that start on or after this date.
    Example: "2017-03-14"

  - `to` (string)
    Get time entries that end on or before this date.
    Example: "2017-03-21"

  - `with_suggestions` (boolean)
    If set to true, includes suggested (unconfirmed) time entries.

  - `sort_field` (string)
    Field to sort the return document.
    Enum: "created", "updated"

  - `sort_order` (string)
    Order to sort the results on.
    Enum: "ascending", "descending"

## Response 200 fields (application/json):

  - `data` (array)

  - `data.id` (integer)
    Unique identifier for the time entry.
    Example: 100000

  - `data.user_id` (integer, required)
    The ID of the user (licensed user only) associated with the time entry.
    Example: 123

  - `data.assignable_id` (integer, required)
    The ID of the assigned Project, Phase, or Leave Type.
    Example: 1001

  - `data.assignable_type` (string)
    The type of the assignable resource.
    Enum: "Project", "LeaveType"

  - `data.date` (string, required)
    The date of the time entry.
    Example: "2024-09-12"

  - `data.hours` (number, required)
    The number of hours confirmed. Can be null.

  - `data.is_suggestion` (boolean)
    Indicates if the time entry is a suggestion.
    Example: true

  - `data.scheduled_hours` (number,null)
    The number of scheduled hours for the time entry.
    Example: 8

  - `data.task` (string,null)
    The task category. Can be null.

  - `data.notes` (string,null)
    Additional notes for the time entry. Can be null.

  - `data.bill_rate` (number,null)
    The hourly rate for the time entered.
    Example: 150

  - `data.bill_rate_id` (integer,null)
    The ID of the billing rate.
    Example: 4

  - `data.created_at` (string)
    Timestamp when the time entry was created.
    Example: "2024-09-12T04:32:28Z"

  - `data.updated_at` (string)
    Timestamp when the time entry was last updated.
    Example: "2024-09-18T04:32:28Z"

  - `paging` (object)

  - `paging.per_page` (integer)
    The maximum number of items to show per response page.
    Example: 100

  - `paging.page` (integer)
    The current response page number.
    Example: 1

  - `paging.previous` (string,null)
    If you're on the first page, this value is null; otherwise the value is the path and query parameters to get the previous page of items.
    Example: "/api/v1/users?per_page=1000&page=1"

  - `paging.self` (string)
    The path and query parameters to get the current page of items.
    Example: "/api/v1/users?per_page=1000&page=2"

  - `paging.next` (string,null)
    If there are more items, this value is the path and query parameters to get the next page of items; otherwise, it's null.
    Example: "/api/v1/users?per_page=1000&page=3"

  - `paging.count` (integer,null)
    The total number of items in all the pages.


