> ## Documentation Index
> Fetch the complete documentation index at: https://docs.qobra.co/llms.txt
> Use this file to discover all available pages before exploring further.

# get_dashboard

Return one dashboard's full detail: its tile layout and the reports it shows.

The natural follow-up to `list_dashboards` when you need to understand an
existing dashboard — not just which reports it groups, but how they are laid out
and what each report is built on. On top of the `list_dashboards` row it adds
`visualizations` (the flat list of chart / pivot tiles), `layout` (their
arrangement, row by row) and `reports` (the full detail of every distinct
report the tiles render — the data table each is built on, its type, who can
view it, and its available visualization types).

Dashboards have no per-dashboard sharing — you either see all of the company's
dashboards or none, depending on your reporting access. A dashboard you can't
reach is reported as not found.

## Parameters

<Accordion title="Body" defaultOpen>
  <ParamField body="dashboard" type="string" required>
    The dashboard to read. Accepts its name (case- and accent-insensitive
    substring) or its ObjectId. A name matching no — or more than one —
    dashboard raises a clear error; pass the id to disambiguate.
  </ParamField>
</Accordion>

## Response

<Accordion title="Body" defaultOpen>
  <ResponseField name="id" type="string" />

  <ResponseField name="resource_url" type="string">
    Deep link to open this dashboard in the Qobra web app.
  </ResponseField>

  <ResponseField name="name" type="string" />

  <ResponseField name="description" type="string" />

  <ResponseField name="updated_at" type="string" />

  <ResponseField name="visualizations" type="object[]">
    The chart / pivot-table tiles the dashboard shows, each referencing the
    report it is built on.

    <Expandable title="object properties">
      <ResponseField name="visualization_id" type="string">
        Stable id of this tile. The layout rows reference tiles by this id, so
        it is how you place a tile in the dashboard's arrangement.
      </ResponseField>

      <ResponseField name="report_id" type="string">
        Id of the report this tile renders. Null for a tile not backed by a
        report.
      </ResponseField>

      <ResponseField name="name" type="string">
        The tile's display name (usually the report's name).
      </ResponseField>

      <ResponseField name="type" type="string">
        One of: `chart`, `pivot_table`.
      </ResponseField>
    </Expandable>
  </ResponseField>

  <ResponseField name="layout" type="object[]">
    The dashboard's tile arrangement, top to bottom — each row lists the tiles
    placed on it, left to right. This is how the visualizations are laid out on
    the page.

    <Expandable title="object properties">
      <ResponseField name="visualization_ids" type="string[]">
        The visualization\_ids sitting side by side on this row, in left-to-right
        order. Cross-reference each id with the matching entry in the
        dashboard's 'visualizations' to know which report tile it is.
      </ResponseField>
    </Expandable>
  </ResponseField>

  <ResponseField name="reports" type="object[]">
    Full detail of every distinct report the dashboard's tiles are built on: the
    reporting data table each is built on, its type, who can view it, and which
    visualization types it offers. Deduplicated — a report shown as both a chart
    and a pivot table appears once.

    <Expandable title="object properties">
      <ResponseField name="report_id" type="string" />

      <ResponseField name="resource_url" type="string">
        Deep link to open this report in the Qobra web app.
      </ResponseField>

      <ResponseField name="report_name" type="string" />

      <ResponseField name="report_type" type="string">
        What the report is built on: statement (payout statements) or record
        (the rows of a data table — the specific table is named in
        reporting\_table). One of: `statement`, `record`.
      </ResponseField>

      <ResponseField name="description" type="string" />

      <ResponseField name="reporting_table" type="string">
        Name of the reporting data table the report is built on.
      </ResponseField>

      <ResponseField name="section" type="object">
        The section the report is filed under (id and name), or null when
        unfiled.

        <Expandable title="object properties">
          <ResponseField name="section_id" type="string" />

          <ResponseField name="section_name" type="string" />
        </Expandable>
      </ResponseField>

      <ResponseField name="access" type="object">
        Who can view the report, split into roles and users. Each entry carries
        its id, name, and access level. Only returned to callers with write
        access on reports; null for read-only callers.

        <Expandable title="object properties">
          <ResponseField name="roles" type="object[]">
            <Expandable title="object properties">
              <ResponseField name="role_id" type="string" />

              <ResponseField name="role_name" type="string" />

              <ResponseField name="role_access" type="string">
                One of: `read`, `write`, `delete`.
              </ResponseField>

              <ResponseField name="sharing_access" type="string">
                One of: `read`, `write`, `delete`.
              </ResponseField>
            </Expandable>
          </ResponseField>

          <ResponseField name="users" type="object[]">
            <Expandable title="object properties">
              <ResponseField name="user_id" type="string" />

              <ResponseField name="user_name" type="string" />

              <ResponseField name="sharing_access" type="string">
                One of: `read`, `write`, `delete`.
              </ResponseField>
            </Expandable>
          </ResponseField>
        </Expandable>
      </ResponseField>
    </Expandable>
  </ResponseField>
</Accordion>
