---
title: "Get catalog"
method: GET
path: "/api/v1/projects/{projectUuid}/dataCatalog"
tags: ["Catalog"]
---

# Get catalog

`GET /api/v1/projects/{projectUuid}/dataCatalog`

Get catalog items

## Path parameters

- `projectUuid` string, required

## Query parameters

- `search` string
- `type` 'table' | 'field'
- `filter` 'tables' | 'dimensions' | 'metrics'

## Response `200`

Success

- object
  - `results` CatalogItem[], required
    - union
      - CatalogField — From T, pick a set of properties whose keys are in the union K
        - `name` string, required
        - `description` string
        - `label` string, required
        - `fieldType` 'metric' | 'dimension', required
        - `tableLabel` string, required
        - `requiredAttributes` RecordStringStringOrStringArray — Construct a type with a set of properties K of type T
        - `anyAttributes` RecordStringStringOrStringArray — Construct a type with a set of properties K of type T
        - `owner` CatalogOwner, required
          - `email` string, required
          - `lastName` string, required
          - `firstName` string, required
          - `userUuid` string, required
        - `spotlightDefaultFilter` MetricFilterRule — Filter rule for metrics, targeting fields by reference
          - `includeNull` boolean — For the `equals` operator on string fields, also match rows where the field is null (compiles to `field IN (...) OR field IS NULL`). Lets users combine null with selected values in a single "is" rule.
          - `values` AnyType[] — Values to filter by
            - unknown
          - `operator` 'isNull' | 'notNull' | 'equals' | 'notEquals' | 'startsWith' | 'endsWith' | 'include' | 'doesNotInclude' | 'lessThan' | 'lessThanOrEqual' | 'greaterThan' | 'greaterThanOrEqual' | 'inThePast' | 'notInThePast' | 'inTheNext' | 'inTheCurrent' | 'notInTheCurrent' | 'inBetween' | 'notInBetween' | 'inPeriodToDate', required
          - `id` string, required — Unique identifier for the filter
          - `target` object, required — Target field for the filter
            - `fieldRef` string, required — Field reference to filter on (e.g., 'table_name.field_name')
          - `settings` unknown
          - `disabled` boolean — Whether this filter is disabled
          - `required` boolean — Whether this filter is required
          - `caseSensitive` boolean — Overrides the field/explore case-sensitivity for this rule only. Used by internal features like autocomplete search that must always match case-insensitively regardless of the field's configured setting.
        - `spotlightDefaultSegment` string
        - `spotlightSegmentBy` string[]
        - `spotlightFilterBy` string[]
        - `searchRank` number, double
        - `aiHints` string[], nullable, required
        - `icon` union, required
          - EmojiIcon
            - `unicode` string, required
          - CustomIcon
            - `url` string, required
        - `verifiedChartUsage` number, double
        - `chartUsage` number, double
        - `categories` PickTagNameOrColorOrTagUuidOrYamlReference[], required
          - `name` string, required
          - `color` string, required
          - `tagUuid` string, required
          - `yamlReference` string, nullable, required
        - `tags` string[]
        - `tableGroupLabel` string
        - `tableName` string, required
        - `fieldValueType` union, required
          - 'percentile' | 'average' | 'count' | 'count_distinct' | 'sum' | 'sum_distinct' | 'average_distinct' | 'min' | 'max' | 'percent_of_previous' | 'percent_of_total' | 'running_total' | 'number' | 'median' | 'string' | 'date' | 'timestamp' | 'boolean'
          - 'string' | 'number' | 'timestamp' | 'date' | 'boolean'
        - `basicType` 'string' | 'number' | 'date' | 'timestamp' | 'boolean', required
        - `type` 'field', required
        - `catalogSearchUuid` string, required
      - CatalogTable — From T, pick a set of properties whose keys are in the union K
        - `name` string, required
        - `description` string
        - `label` string, required
        - `groupLabel` string
        - `requiredAttributes` RecordStringStringOrStringArray — Construct a type with a set of properties K of type T
        - `anyAttributes` RecordStringStringOrStringArray — Construct a type with a set of properties K of type T
        - `searchRank` number, double
        - `joinedTables` string[], nullable, required
        - `aiHints` string[], nullable, required
        - `icon` union, required
          - EmojiIcon
            - `unicode` string, required
          - CustomIcon
            - `url` string, required
        - `chartUsage` number, double
        - `categories` PickTagNameOrColorOrTagUuidOrYamlReference[], required
          - `name` string, required
          - `color` string, required
          - `tagUuid` string, required
          - `yamlReference` string, nullable, required
        - `tags` string[]
        - `type` 'table', required
        - `errors` InlineError[]
          - `message` string, required
          - `type` 'METADATA_PARSE_ERROR' | 'NO_DIMENSIONS_FOUND' | 'SKIPPED_JOIN' | 'MISSING_TABLE' | 'FIELD_ERROR' | 'SET_VALIDATION_ERROR' | 'INVALID_PARAMETER' | 'DUPLICATE_FIELD_NAME' | 'WAREHOUSE_COLUMN_ERROR', required
        - `catalogSearchUuid` string, required
  - `status` 'ok', required

## Other responses

- `default` — Error

---

[API](https://skmtc.net/lightdash/apis/lightdash-api.md) · [All operations](https://skmtc.net/lightdash/apis/lightdash-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/lightdash/lightdash-api/revisions/40c933755c9a/schema)
