---
id: SCR-PFM-QRY-007
title: Report catalog
route: '/console/{tenantId}/reports'
surface: console
product_area: platform
module: queries
revision: 1
status: draft
design_intent: proposed
implementation_evidence: observed
inference: []
source_sha:
  react-console: baf6dae382d6f41dce976c7f848667ccc37e076f
  services-platform: ad3f6a6582843008ed0f5a17b131878d15829af1
purpose: >-
  Discover available reports and dashboards, including built-in presentations, and manage permitted
  stored copies.
supports:
  - JNY-PFM-QRY-001
  - CAP-PFM-QRY-011
  - CAP-PFM-QRY-012
permission: platform.reports.read (console alias tools.reports.view)
entry_from:
  - main navigation (Reports & Dashboards)
exits_to:
  - '/console/{tenantId}/reports/{reportId}'
  - '/console/{tenantId}/reports/dashboardLab/{dashboardId}'
displays:
  - field: 'Presentation name, kind, creator, audience, update time and experimental designation.'
    source: 'listReports (scope all, mine, shared; kind; search)'
  - field: Console-provided built-in presentation entries under their configured visibility checks.
    source: console catalog seeds
actions:
  - label: Open
    operation_id: getReport
    permission: platform.reports.read
    confirm: false
  - label: Delete
    operation_id: deleteReport
    permission: platform.reports.use
    confirm: true
  - label: New Dashboard
    operation_id: createReport
    permission: platform.reports.use
    confirm: false
states:
  - catalog loading
  - no visible presentations
  - catalog request failed
  - viewer without modification access
validation:
  - BR-CAP-PFM-QRY-011-01
  - BR-CAP-PFM-QRY-011-02
  - BR-CAP-PFM-QRY-011-03
  - BR-CAP-PFM-QRY-011-13
  - BR-CAP-PFM-QRY-011-14
patterns:
  - Full layout (PageLayout default)
  - PageHeader
  - Table with Input search and ToggleGroup scopes
  - DropdownMenu row actions
  - DeleteReportDialog
  - NewDashboardDialog
component: components/reporting/catalog-screen.tsx
evidence:
  - >-
    react-console at baf6dae: app/(console)/console/[tenantId]/reports/page.tsx;
    components/reporting/catalog-screen.tsx; lib/reporting/catalog/*.ts
controls: [TC-AVL-005, TC-AZ-001, TC-AZ-002, TC-AZ-003, TC-AZ-004, TC-AZ-005, TC-DAT-001, TC-DAT-002, TC-DAT-003, TC-DAT-004, TC-DAT-005, TC-IAM-001, TC-IAM-002, TC-IAM-003, TC-IAM-004, TC-IAM-005, TC-IAM-006, TC-LOG-001, TC-LOG-004, TC-LOG-005, TC-MON-002, TC-PI-001, TC-PI-003, TC-PI-005, TC-TEN-001, TC-TEN-002, TC-TEN-003, TC-TEN-004, TC-VEN-001, TC-VEN-002, TC-VEN-003]
---

# Report catalog

## What the Screen Is For

Discover available reports and dashboards, including built-in presentations, and manage permitted stored copies.

## What It Shows and Lets People Do

The catalog combines server summaries with console-provided entries. Scope and search narrow the choices. Opening and removal follow report powers, while New Dashboard requires report-use access. Catalog visibility does not guarantee that all joined source data will execute.

## States and Errors

Load failure and an empty visible catalog have different feedback. Read-only users can open permitted entries while modification controls remain gated.

## Patterns It Must Respect

The full-width PageLayout hosts the existing catalog header, filters and presentation controls. Confirmed removal and unsaved-change behavior remain the existing component baseline.
