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

# Get project reports

`GET /api/v2/reports/project_reports`

Retrieve aggregated project report data grouped by configurable dimensions.

## Query parameters

- `sort` string[]
- `group` 'company' | 'created_at' | 'custom_fields' | 'last_activity_at' | 'month' | 'organization' | 'project' | 'project_manager' | 'project_status' | 'project_type' | 'quarter' | 'week' | 'year'
- `filter` union — Filter schema for `project_report` list endpoints — pass a single condition or a logical group.
  - FilterProjectReport — Available filter parameters for querying aggregated project report data.
    - `name` union — Filter by project name (text search).
      - Name — unresolved $ref
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `not_contain` Name — unresolved $ref
        - `contains` Name — unresolved $ref
        - `not_eq` Name — unresolved $ref
        - `eq` Name — unresolved $ref
    - `custom_fields` union — Filter by custom field values.
      - CustomFields — unresolved $ref
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `not_eq` CustomFields — unresolved $ref
        - `contains` CustomFields — unresolved $ref
        - `eq` CustomFields — unresolved $ref
        - `not_contain` CustomFields — unresolved $ref
    - `fuzzy_people` union — Filter by fuzzy person references (e.g. me, my_team).
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `not_contain` FuzzyPeople — unresolved $ref
        - `eq` FuzzyPeople — unresolved $ref
        - `not_eq` FuzzyPeople — unresolved $ref
        - `contains` FuzzyPeople — unresolved $ref
      - FuzzyPeople — unresolved $ref
    - `profit_margin` union — Filter by the project's profit margin across budgets.
      - ProfitMargin — unresolved $ref
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `contains` ProfitMargin — unresolved $ref
        - `not_eq` ProfitMargin — unresolved $ref
        - `not_contain` ProfitMargin — unresolved $ref
        - `eq` ProfitMargin — unresolved $ref
    - `fuzzy_dates` union — Filter by fuzzy date range expressions (e.g. this_week, last_month).
      - FuzzyDates — unresolved $ref
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `not_contain` FuzzyDates — unresolved $ref
        - `not_eq` FuzzyDates — unresolved $ref
        - `contains` FuzzyDates — unresolved $ref
        - `eq` FuzzyDates — unresolved $ref
    - `project_number` union — Filter by the project's number identifier.
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `contains` ProjectNumber — unresolved $ref
        - `not_eq` ProjectNumber — unresolved $ref
        - `not_contain` ProjectNumber — unresolved $ref
        - `eq` ProjectNumber — unresolved $ref
      - ProjectNumber — unresolved $ref
    - `status` union — Filter project report results by status.
      - Status — unresolved $ref
      - object — Filter operator object for status.
        - `eq` Status — unresolved $ref
        - `contains` Status — unresolved $ref
        - `not_eq` Status — unresolved $ref
        - `not_contain` Status — unresolved $ref
    - `number` union — Filter by project number (text search).
      - Number — unresolved $ref
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `eq` Number — unresolved $ref
        - `contains` Number — unresolved $ref
        - `not_eq` Number — unresolved $ref
        - `not_contain` Number — unresolved $ref
    - `project_color` union — Filter by the project's color label.
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `not_eq` ProjectColor — unresolved $ref
        - `eq` ProjectColor — unresolved $ref
        - `contains` ProjectColor — unresolved $ref
        - `not_contain` ProjectColor — unresolved $ref
      - ProjectColor — unresolved $ref
    - `workflow_id` union — Filter project report results by workflow id.
      - WorkflowId — unresolved $ref
      - object — Filter operator object for workflow id.
        - `eq` WorkflowId — unresolved $ref
        - `not_eq` WorkflowId — unresolved $ref
        - `contains` WorkflowId — unresolved $ref
        - `not_contain` WorkflowId — unresolved $ref
    - `cost` union — Filter by total cost across budgets.
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `eq` Cost — unresolved $ref
        - `not_contain` Cost — unresolved $ref
        - `contains` Cost — unresolved $ref
        - `not_eq` Cost — unresolved $ref
      - Cost — unresolved $ref
    - `person_id` union — Filter project report results by person id.
      - PersonId — unresolved $ref
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `not_contain` PersonId — unresolved $ref
        - `contains` PersonId — unresolved $ref
        - `not_eq` PersonId — unresolved $ref
        - `eq` PersonId — unresolved $ref
    - `parent_company_id` union — Filter by the parent company of the project's company.
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `not_contain` ParentCompanyId — unresolved $ref
        - `contains` ParentCompanyId — unresolved $ref
        - `not_eq` ParentCompanyId — unresolved $ref
        - `eq` ParentCompanyId — unresolved $ref
      - ParentCompanyId — unresolved $ref
    - `profit` union — Filter by total profit across open budgets.
      - Profit — unresolved $ref
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `not_contain` Profit — unresolved $ref
        - `not_eq` Profit — unresolved $ref
        - `eq` Profit — unresolved $ref
        - `contains` Profit — unresolved $ref
    - `for_tracking` union — Filter to active projects available for time tracking.
      - ForTracking — unresolved $ref
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `not_eq` ForTracking — unresolved $ref
        - `not_contain` ForTracking — unresolved $ref
        - `eq` ForTracking — unresolved $ref
        - `contains` ForTracking — unresolved $ref
    - `projected_revenue` union — Filter project report results by projected revenue.
      - object — Filter operator object for projected revenue.
        - `not_contain` ProjectedRevenue — unresolved $ref
        - `eq` ProjectedRevenue — unresolved $ref
        - `not_eq` ProjectedRevenue — unresolved $ref
        - `contains` ProjectedRevenue — unresolved $ref
      - ProjectedRevenue — unresolved $ref
    - `full_query` union — Search projects by full-text match across all searchable fields.
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `not_eq` FullQuery — unresolved $ref
        - `contains` FullQuery — unresolved $ref
        - `not_contain` FullQuery — unresolved $ref
        - `eq` FullQuery — unresolved $ref
      - FullQuery — unresolved $ref
    - `company_id` union — Filter by client company.
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `contains` CompanyId — unresolved $ref
        - `eq` CompanyId — unresolved $ref
        - `not_contain` CompanyId — unresolved $ref
        - `not_eq` CompanyId — unresolved $ref
      - CompanyId — unresolved $ref
    - `project_type` union — Filter by the project type (client or internal).
      - ProjectType — unresolved $ref
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `not_eq` ProjectType — unresolved $ref
        - `eq` ProjectType — unresolved $ref
        - `contains` ProjectType — unresolved $ref
        - `not_contain` ProjectType — unresolved $ref
    - `formulas` union — Filter project report results by formulas.
      - Formulas — unresolved $ref
      - object — Filter operator object for formulas.
        - `not_contain` Formulas — unresolved $ref
        - `contains` Formulas — unresolved $ref
        - `not_eq` Formulas — unresolved $ref
        - `eq` Formulas — unresolved $ref
    - `total_worked_time` union — Filter project report results by total worked time.
      - object — Filter operator object for total worked time.
        - `contains` TotalWorkedTime — unresolved $ref
        - `not_eq` TotalWorkedTime — unresolved $ref
        - `eq` TotalWorkedTime — unresolved $ref
        - `not_contain` TotalWorkedTime — unresolved $ref
      - TotalWorkedTime — unresolved $ref
    - `budget_id` union — Filter by the associated budget (deal).
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `eq` BudgetId — unresolved $ref
        - `not_contain` BudgetId — unresolved $ref
        - `contains` BudgetId — unresolved $ref
        - `not_eq` BudgetId — unresolved $ref
      - BudgetId — unresolved $ref
    - `query` union — Filter project report results by query.
      - Query — unresolved $ref
      - object — Filter operator object for query.
        - `not_eq` Query — unresolved $ref
        - `contains` Query — unresolved $ref
        - `not_contain` Query — unresolved $ref
        - `eq` Query — unresolved $ref
    - `estimated_time` union — Filter by total estimated time across budgets.
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `eq` EstimatedTime — unresolved $ref
        - `contains` EstimatedTime — unresolved $ref
        - `not_eq` EstimatedTime — unresolved $ref
        - `not_contain` EstimatedTime — unresolved $ref
      - EstimatedTime — unresolved $ref
    - `template` union — Filter project report results by template.
      - object — Filter operator object for template.
        - `not_eq` Template — unresolved $ref
        - `eq` Template — unresolved $ref
        - `contains` Template — unresolved $ref
        - `not_contain` Template — unresolved $ref
      - Template — unresolved $ref
    - `id` union — Filter project report results by id.
      - Id — unresolved $ref
      - object — Filter operator object for id.
        - `not_eq` Id — unresolved $ref
        - `contains` Id — unresolved $ref
        - `not_contain` Id — unresolved $ref
        - `eq` Id — unresolved $ref
    - `with_templates` union — When true, includes template projects in results (removes the default filter that excludes templates).
      - WithTemplates — unresolved $ref
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `contains` WithTemplates — unresolved $ref
        - `not_contain` WithTemplates — unresolved $ref
        - `not_eq` WithTemplates — unresolved $ref
        - `eq` WithTemplates — unresolved $ref
    - `pending_invoicing` union — Filter project report results by pending invoicing.
      - object — Filter operator object for pending invoicing.
        - `eq` PendingInvoicing — unresolved $ref
        - `contains` PendingInvoicing — unresolved $ref
        - `not_contain` PendingInvoicing — unresolved $ref
        - `not_eq` PendingInvoicing — unresolved $ref
      - PendingInvoicing — unresolved $ref
    - `created_at` union — Filter by creation date range (created_at).
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `not_eq` CreatedAt — unresolved $ref
        - `contains` CreatedAt — unresolved $ref
        - `eq` CreatedAt — unresolved $ref
        - `not_contain` CreatedAt — unresolved $ref
      - CreatedAt — unresolved $ref
    - `worked_time` union — Filter project report results by worked time.
      - WorkedTime — unresolved $ref
      - object — Filter operator object for worked time.
        - `contains` WorkedTime — unresolved $ref
        - `not_eq` WorkedTime — unresolved $ref
        - `eq` WorkedTime — unresolved $ref
        - `not_contain` WorkedTime — unresolved $ref
    - `responsible_id` union — Filter project report results by responsible id.
      - object — Filter operator object for responsible id.
        - `not_contain` ResponsibleId — unresolved $ref
        - `eq` ResponsibleId — unresolved $ref
        - `contains` ResponsibleId — unresolved $ref
        - `not_eq` ResponsibleId — unresolved $ref
      - ResponsibleId — unresolved $ref
    - `jump_query` union — Search projects using a jump (quick prefix) text search.
      - object — Operator object — supports eq, not_eq, contains, not_contain.
        - `eq` JumpQuery — unresolved $ref
        - `not_contain` JumpQuery — unresolved $ref
        - `contains` JumpQuery — unresolved $ref
        - `not_eq` JumpQuery — unresolved $ref
      - JumpQuery — unresolved $ref
    - `revenue` union — Filter project report results by revenue.
      - Revenue — unresolved $ref
      - object — Filter operator object for revenue.
        - `not_contain` Revenue — unresolved $ref
        - `not_eq` Revenue — unresolved $ref
        - `eq` Revenue — unresolved $ref
        - `contains` Revenue — unresolved $ref
    - `project_id` union — Filter project report results by project id.
      - ProjectId — unresolved $ref
      - object — Filter operator object for project id.
        - `eq` ProjectId — unresolved $ref
        - `contains` ProjectId — unresolved $ref
        - `not_eq` ProjectId — unresolved $ref
        - `not_contain` ProjectId — unresolved $ref
  - 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.

## Headers

- `X-Organization-Id` string, required

## Response `200`

Collection project 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)
