# List project assignments

Returns the assignments for the matching project.

> Note: To include subtask completion/total counts for each assignment, specify the fields=subtask_counts query parameter setting.

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

## Header parameters:

  - `Content-Type` (string, required)
    Enum: "application/json"

## Path parameters:

  - `project_id` (integer, required)
    Unique identifier for the resource instance.
    Example: 1234567

## Query parameters:

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

  - `page` (integer)
    The response page to return.
    Example: 2

  - `from` (string)
    Filter on assignments that end on or after this date.

  - `to` (string)
    Filter on assignments that start on or before this date.

  - `with_phases` (boolean)
    If true, include assignments to phases. Otherwise, exclude them.

  - `fields` (string)
    A comma-separate list of project assignment-related attributes to include in the response.

Supported fields: subtask_counts
    Example: "subtask_counts"

## Response 200 fields (application/json):

  - `paging` (object, required)

  - `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.

  - `data` (array, required) — one of:
    - Assignment - percent-based allocation:
      - `allocation_mode` (string, required)
        This indicates that a percentage of the resource's time is allocated to the corresponding assignment.
        Enum: "percent"
      - `percent` (number, required)
        The percentage of time the resource is allocated to the corresponding assignment. 

Note: This property is only present when allocation_mode is "percent".
        Example: 0.2
      - `id` (integer)
        The unique identifier for the assignment.
        Example: 889
      - `user_id` (integer)
        The ID of the user this assignment belongs to.
        Example: 5612
      - `assignable_id` (integer)
        The ID of the project, phase, or leave type to which the the assignment applies.
        Example: 1234
      - `starts_at` (string, required)
        The assignment's effective start date.
        Example: "2025-09-17"
      - `ends_at` (string, required)
        The assignment's effective end date.
        Example: "2025-12-17"
      - `repetition_id` (integer,null)
        A unique identifier for a series of repeating assignments. If the assignment is part of a repeating series, this is the parent assignment's unique ID. Otherwise, it's null.

Note: This ID is the same for all assignments within the same repeating series.
        Example: 886
      - `created_at` (string)
        The time of creation.
        Example: "2025-08-27T12:00:00Z"
      - `updated_at` (string)
        The time of the last update.
        Example: "2025-08-27T12:00:00Z"
      - `all_day_assignment` (boolean)
        Example: true
      - `resource_request_id` (integer,null)
      - `bill_rate` (number,null)
        The cost value.
        Example: 100
      - `bill_rate_id` (integer,null)
        Example: 58776516
      - `status` (any,null)
      - `status_option_id` (integer,null)
        The ID of the status option associated with the assignment.
        Example: 1234567890
      - `description` (string)
        Describes the assignment.
      - `note` (boolean,null)
        Calls out ancillary information about the assignment.
    - Assignment - fixed-hours-based allocation:
      - `allocation_mode` (string, required)
        This indicates that a fixed number of the resource's hours is allocated to the corresponding assignment.
        Enum: "fixed_hours"
      - `fixed_hours` (number, required)
        The number of hours the resource is allocated to a corresponding assignment. 

Note: This property is only present when allocation_mode is "fixed_hours".
        Example: 20
      - `id` (integer)
        The unique identifier for the assignment.
        Example: 889
      - `user_id` (integer)
        The ID of the user this assignment belongs to.
        Example: 5612
      - `assignable_id` (integer)
        The ID of the project, phase, or leave type to which the the assignment applies.
        Example: 1234
      - `starts_at` (string, required)
        The assignment's effective start date.
        Example: "2025-09-17"
      - `ends_at` (string, required)
        The assignment's effective end date.
        Example: "2025-12-17"
      - `repetition_id` (integer,null)
        A unique identifier for a series of repeating assignments. If the assignment is part of a repeating series, this is the parent assignment's unique ID. Otherwise, it's null.

Note: This ID is the same for all assignments within the same repeating series.
        Example: 886
      - `created_at` (string)
        The time of creation.
        Example: "2025-08-27T12:00:00Z"
      - `updated_at` (string)
        The time of the last update.
        Example: "2025-08-27T12:00:00Z"
      - `all_day_assignment` (boolean)
        Example: true
      - `resource_request_id` (integer,null)
      - `bill_rate` (number,null)
        The cost value.
        Example: 100
      - `bill_rate_id` (integer,null)
        Example: 58776516
      - `status` (any,null)
      - `status_option_id` (integer,null)
        The ID of the status option associated with the assignment.
        Example: 1234567890
      - `description` (string)
        Describes the assignment.
      - `note` (boolean,null)
        Calls out ancillary information about the assignment.
    - Assignment - hours-per-day-based allocation:
      - `allocation_mode` (string, required)
        This indicates that a number of the resource's daily hours is allocated to the corresponding assignment.
        Enum: "hours_per_day"
      - `hours_per_day` (number, required)
        The number of hours per day that the resource is allocated to a corresponding assignment. 

Note: This property is only present when allocation_mode is "hours_per_day".
        Example: 6
      - `id` (integer)
        The unique identifier for the assignment.
        Example: 889
      - `user_id` (integer)
        The ID of the user this assignment belongs to.
        Example: 5612
      - `assignable_id` (integer)
        The ID of the project, phase, or leave type to which the the assignment applies.
        Example: 1234
      - `starts_at` (string, required)
        The assignment's effective start date.
        Example: "2025-09-17"
      - `ends_at` (string, required)
        The assignment's effective end date.
        Example: "2025-12-17"
      - `repetition_id` (integer,null)
        A unique identifier for a series of repeating assignments. If the assignment is part of a repeating series, this is the parent assignment's unique ID. Otherwise, it's null.

Note: This ID is the same for all assignments within the same repeating series.
        Example: 886
      - `created_at` (string)
        The time of creation.
        Example: "2025-08-27T12:00:00Z"
      - `updated_at` (string)
        The time of the last update.
        Example: "2025-08-27T12:00:00Z"
      - `all_day_assignment` (boolean)
        Example: true
      - `resource_request_id` (integer,null)
      - `bill_rate` (number,null)
        The cost value.
        Example: 100
      - `bill_rate_id` (integer,null)
        Example: 58776516
      - `status` (any,null)
      - `status_option_id` (integer,null)
        The ID of the status option associated with the assignment.
        Example: 1234567890
      - `description` (string)
        Describes the assignment.
      - `note` (boolean,null)
        Calls out ancillary information about the assignment.

  - `data.subtask_counts` (object)

  - `data.subtask_counts.completed` (integer)
    Number of finished subtasks.

  - `data.subtask_counts.total` (integer)
    Total number of subtasks.


