---
title: "listInsights"
method: GET
path: "/v1/dashboard/insights"
tags: ["Insights"]
---

# listInsights

`GET /v1/dashboard/insights`

List insights (saved charts) available to the user

## Query parameters

- `q` string
- `visualisation_id` VisualisationId[]
- `tags` string[]
- `tags_match` 'any' | 'all'
- `created_by` string
- `created_after` string, date-time
- `created_before` string, date-time
- `updated_after` string, date-time
- `updated_before` string, date-time
- `shared_with` string[]
- `owner` string[]
- `accessible_to` string
- `sort` 'created_at' | 'updated_at' | 'name' | 'title'
- `order` 'asc' | 'desc'
- `limit` integer
- `offset` integer

## Response `200`

List of insights available to the user

- object
  - `results` Insight[], required
    - `created_by` string — Id of the user who created the resource
    - `created_at` string, date-time
    - `updated_by` string — Id of the user who last updated the resource
    - `updated_at` string, date-time
    - `owner_org_id` string — Id of the organisation that owns the resource. Set at creation time and immutable.
    - `owners` string[] — User ids with full control over the resource (view, edit, delete and manage sharing). The creator is always an owner. There must always be at least one owner.
    - `shared_with` ShareGrant[] — Per-user sharing grants
      - `user_id` string, required — The id of the user the resource is shared with
      - `permission` 'view' | 'edit', required — Permission level granted to a user (or the whole organization) on a shared resource. `view` allows read-only access; `edit` additionally allows updating the content. Full control (delete and managing sharing) is reserved for owners.
    - `org_access` union — Optional organization-wide grant. When set, every user in the resource's organization is granted this permission level. `null` (or omitted) means the resource is not shared org-wide.
      - 'view' | 'edit'
      - unknown
    - `id` string, uuid — Unique identifier for an insight (a saved chart / visualisation)
    - `name` string, required — Human readable name of the insight
    - `description` string
    - `visualisation_id` 'kpi' | 'funnel' | 'toplist' | 'timechart' | 'pie' | 'bar' | 'entity_list' | 'markdown' | 'news_feed' | 'workflow', required — Unique identifier for a Visualisation
    - `visualisation_config` VisualisationConfig
      - `query` DatalakeQuery
        - `dataset` string
        - `measure` string
        - `dimensions` object[]
        - `filters` object[]
      - `options` object
    - `tags` string[] — Free-form labels for grouping and filtering insights
  - `pagination` Pagination, required — Offset-based pagination metadata for list responses
    - `total` integer, required — Total number of results matching the query (ignoring limit/offset)
    - `limit` integer, required — Page size used for this response
    - `offset` integer, required — Number of results skipped before this page
    - `has_more` boolean, required — Whether more results exist beyond this page

---

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