---
title: "Get time reports"
method: GET
path: "/api/v2/reports/time_reports"
tags: ["Reports"]
---

# Get time reports

`GET /api/v2/reports/time_reports`

Retrieve aggregated time report data grouped by configurable dimensions.

## Query parameters

- `sort` string[]
- `group` 'billing_type' | 'budget' | 'company' | 'date' | 'day' | 'event' | 'future' | 'job_role' | 'manager' | 'month' | 'organization' | 'people_custom_fields' | 'person' | 'project' | 'quarter' | 'service' | 'service_type' | 'stage_type' | 'subsidiary' | 'week' | 'year'
- `filter` union — Filter schema for `new_time_report` list endpoints — pass a single condition or a logical group.
  - object — A logical filter group — combine multiple conditions with the `$op` operator.
    - `$op` 'or' | 'and', required — Logical operator combining conditions in this group. `or` matches records satisfying any condition; `and` requires all conditions to match.
  - FilterNewTimeReport — Available filter parameters for querying the time report.
    - `person_id` union — Filter by specific person.
      - PersonId — unresolved $ref
      - object — Filter operator object for person id.
        - `not_contain` PersonId — unresolved $ref
        - `contains` PersonId — unresolved $ref
        - `eq` PersonId — unresolved $ref
        - `not_eq` PersonId — unresolved $ref
    - `company_id` union — Filter by client company.
      - CompanyId — unresolved $ref
      - object — Filter operator object for company id.
        - `not_contain` CompanyId — unresolved $ref
        - `not_eq` CompanyId — unresolved $ref
        - `contains` CompanyId — unresolved $ref
        - `eq` CompanyId — unresolved $ref
    - `date` union — Filter by specific date. Accepts a date string or filter operators.
      - Date — unresolved $ref
      - object — Filter operator object for date.
        - `eq` Date — unresolved $ref
        - `not_eq` Date — unresolved $ref
        - `contains` Date — unresolved $ref
        - `not_contain` Date — unresolved $ref
    - `role_id` union — Filter by the person's role.
      - RoleId — unresolved $ref
      - object — Filter operator object for role id.
        - `not_contain` RoleId — unresolved $ref
        - `eq` RoleId — unresolved $ref
        - `not_eq` RoleId — unresolved $ref
        - `contains` RoleId — unresolved $ref
    - `year` union — Deprecated: filter by a specific year (use date range filters instead).
      - object — Filter operator object for year.
        - `not_contain` Year — unresolved $ref
        - `not_eq` Year — unresolved $ref
        - `eq` Year — unresolved $ref
        - `contains` Year — unresolved $ref
      - Year — unresolved $ref
    - `service_id` union — Filter by the associated service.
      - ServiceId — unresolved $ref
      - object — Filter operator object for service id.
        - `eq` ServiceId — unresolved $ref
        - `not_eq` ServiceId — unresolved $ref
        - `not_contain` ServiceId — unresolved $ref
        - `contains` ServiceId — unresolved $ref
    - `event_id` union — Filter by absence category (event) ID.
      - object — Filter operator object for event id.
        - `not_contain` EventId — unresolved $ref
        - `eq` EventId — unresolved $ref
        - `contains` EventId — unresolved $ref
        - `not_eq` EventId — unresolved $ref
      - EventId — unresolved $ref
    - `service_type_id` union — Filter by the associated service type.
      - object — Filter operator object for service type id.
        - `not_eq` ServiceTypeId — unresolved $ref
        - `not_contain` ServiceTypeId — unresolved $ref
        - `eq` ServiceTypeId — unresolved $ref
        - `contains` ServiceTypeId — unresolved $ref
      - ServiceTypeId — unresolved $ref
    - `subsidiary_id` union — Filter by subsidiary (workplace) ID.
      - SubsidiaryId — unresolved $ref
      - object — Filter operator object for subsidiary id.
        - `contains` SubsidiaryId — unresolved $ref
        - `not_eq` SubsidiaryId — unresolved $ref
        - `not_contain` SubsidiaryId — unresolved $ref
        - `eq` SubsidiaryId — unresolved $ref
    - `quarter` union — Deprecated: filter by a specific quarter (use date range filters instead).
      - Quarter — unresolved $ref
      - object — Filter operator object for quarter.
        - `not_eq` Quarter — unresolved $ref
        - `eq` Quarter — unresolved $ref
        - `not_contain` Quarter — unresolved $ref
        - `contains` Quarter — unresolved $ref
    - `bookings_custom_fields` union — Filter by custom field values on the associated booking.
      - object — Filter operator object for bookings custom fields.
        - `contains` BookingsCustomFields — unresolved $ref
        - `not_eq` BookingsCustomFields — unresolved $ref
        - `eq` BookingsCustomFields — unresolved $ref
        - `not_contain` BookingsCustomFields — unresolved $ref
      - BookingsCustomFields — unresolved $ref
    - `billing_type` union — Filter by billing type of the associated service.
      - object — Filter operator object for billing type.
        - `not_contain` BillingType — unresolved $ref
        - `eq` BillingType — unresolved $ref
        - `contains` BillingType — unresolved $ref
        - `not_eq` BillingType — unresolved $ref
      - BillingType — unresolved $ref
    - `after` union — Filter by the report end date (exclusive upper bound). Accepts a date string or filter operators.
      - object — Filter operator object for after.
        - `not_contain` After — unresolved $ref
        - `not_eq` After — unresolved $ref
        - `contains` After — unresolved $ref
        - `eq` After — unresolved $ref
      - After — unresolved $ref
    - `person_type` union — Filter by person type (employee, contractor, etc.).
      - PersonType — unresolved $ref
      - object — Filter operator object for person type.
        - `contains` PersonType — unresolved $ref
        - `eq` PersonType — unresolved $ref
        - `not_contain` PersonType — unresolved $ref
        - `not_eq` PersonType — unresolved $ref
    - `stage_type` union — Filter by the budget's deal stage type (e.g. active, delivered).
      - object — Filter operator object for stage type.
        - `contains` StageType — unresolved $ref
        - `not_contain` StageType — unresolved $ref
        - `not_eq` StageType — unresolved $ref
        - `eq` StageType — unresolved $ref
      - StageType — unresolved $ref
    - `project_type` union — Filter by project type (billable or internal).
      - object — Filter operator object for project type.
        - `eq` ProjectType — unresolved $ref
        - `not_contain` ProjectType — unresolved $ref
        - `contains` ProjectType — unresolved $ref
        - `not_eq` ProjectType — unresolved $ref
      - ProjectType — unresolved $ref
    - `budget_tags` union — Filter by tags on the associated budget.
      - object — Filter operator object for budget tags.
        - `eq` BudgetTags — unresolved $ref
        - `contains` BudgetTags — unresolved $ref
        - `not_contain` BudgetTags — unresolved $ref
        - `not_eq` BudgetTags — unresolved $ref
      - BudgetTags — unresolved $ref
    - `bookings_after` union — Filter to time entries for bookings that end on or after this date.
      - object — Filter operator object for bookings after.
        - `not_contain` BookingsAfter — unresolved $ref
        - `contains` BookingsAfter — unresolved $ref
        - `not_eq` BookingsAfter — unresolved $ref
        - `eq` BookingsAfter — unresolved $ref
      - BookingsAfter — unresolved $ref
    - `budget_id` union — Filter by budget (deal) ID.
      - BudgetId — unresolved $ref
      - object — Filter operator object for budget id.
        - `not_eq` BudgetId — unresolved $ref
        - `not_contain` BudgetId — unresolved $ref
        - `eq` BudgetId — unresolved $ref
        - `contains` BudgetId — unresolved $ref
    - `project_id` union — Filter by the associated project.
      - ProjectId — unresolved $ref
      - object — Filter operator object for project id.
        - `not_contain` ProjectId — unresolved $ref
        - `eq` ProjectId — unresolved $ref
        - `contains` ProjectId — unresolved $ref
        - `not_eq` ProjectId — unresolved $ref
    - `before` union — Filter by the report start date (inclusive lower bound). Accepts a date string or filter operators.
      - Before — unresolved $ref
      - object — Filter operator object for before.
        - `eq` Before — unresolved $ref
        - `contains` Before — unresolved $ref
        - `not_eq` Before — unresolved $ref
        - `not_contain` Before — unresolved $ref
    - `week` union — Deprecated: filter by a specific week (use date range filters instead).
      - object — Filter operator object for week.
        - `not_eq` Week — unresolved $ref
        - `eq` Week — unresolved $ref
        - `not_contain` Week — unresolved $ref
        - `contains` Week — unresolved $ref
      - Week — unresolved $ref
    - `person_tags` union — Filter by tags on the associated person.
      - object — Filter operator object for person tags.
        - `not_contain` PersonTags — unresolved $ref
        - `contains` PersonTags — unresolved $ref
        - `eq` PersonTags — unresolved $ref
        - `not_eq` PersonTags — unresolved $ref
      - PersonTags — unresolved $ref
    - `day` union — Deprecated: filter by a specific day (use date range filters instead).
      - object — Filter operator object for day.
        - `eq` Day — unresolved $ref
        - `not_eq` Day — unresolved $ref
        - `not_contain` Day — unresolved $ref
        - `contains` Day — unresolved $ref
      - Day — unresolved $ref
    - `future` union — Filter to include future or past data. When true, includes future scheduled data.
      - Future — unresolved $ref
      - object — Filter operator object for future.
        - `not_contain` Future — unresolved $ref
        - `not_eq` Future — unresolved $ref
        - `contains` Future — unresolved $ref
        - `eq` Future — unresolved $ref
    - `job_role_id` union
      - object
        - `eq` JobRoleId — unresolved $ref
        - `not_contain` JobRoleId — unresolved $ref
        - `not_eq` JobRoleId — unresolved $ref
        - `contains` JobRoleId — unresolved $ref
      - JobRoleId — unresolved $ref
    - `formulas` union — Filter using report formula expressions for computed metrics.
      - object — Filter operator object for formulas.
        - `contains` Formulas — unresolved $ref
        - `eq` Formulas — unresolved $ref
        - `not_eq` Formulas — unresolved $ref
        - `not_contain` Formulas — unresolved $ref
      - Formulas — unresolved $ref
    - `people_custom_fields` union — Filter by custom field values on the associated person.
      - PeopleCustomFields — unresolved $ref
      - object — Filter operator object for people custom fields.
        - `eq` PeopleCustomFields — unresolved $ref
        - `not_contain` PeopleCustomFields — unresolved $ref
        - `not_eq` PeopleCustomFields — unresolved $ref
        - `contains` PeopleCustomFields — unresolved $ref
    - `bookings_before` union — Filter to time entries for bookings that start on or before this date.
      - BookingsBefore — unresolved $ref
      - object — Filter operator object for bookings before.
        - `not_eq` BookingsBefore — unresolved $ref
        - `contains` BookingsBefore — unresolved $ref
        - `not_contain` BookingsBefore — unresolved $ref
        - `eq` BookingsBefore — unresolved $ref
    - `role_type` union — Filter by the role type category of the person who tracked time.
      - RoleType — unresolved $ref
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `contains` RoleType — unresolved $ref
        - `not_contain` RoleType — unresolved $ref
        - `not_eq` RoleType — unresolved $ref
        - `eq` RoleType — unresolved $ref
    - `month` union — Deprecated: filter by a specific month (use date range filters instead).
      - object — Filter operator object for month.
        - `contains` Month — unresolved $ref
        - `not_contain` Month — unresolved $ref
        - `eq` Month — unresolved $ref
        - `not_eq` Month — unresolved $ref
      - Month — unresolved $ref

## Headers

- `X-Organization-Id` string, required

## Response `200`

Collection new time report

---

[API](https://skmtc.dev/productive/apis/api-documentation.md) · [All operations](https://skmtc.dev/productive/apis/api-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/productive/api-documentation/revisions/bbf5057edf0d/schema)
