---
title: "Check the health of the lake catalog"
method: GET
path: "/v4/admin/lake/health"
tags: ["v4", "Admin"]
---

# Check the health of the lake catalog

`GET /v4/admin/lake/health`

## Query parameters

- `teamIds` union[], nullable — Scope the report to these teams' catalogs
  - union
    - string, uuid
    - string

## Response `200`

Success

- SuccessResponseDuckLakeHealthReport
  - `success` true, required — Flag for it request was successful
  - `data` DuckLakeHealthReport, required
    - `environment` string, required — Environment the report was generated for
    - `timestamp` string, date-time, required — Timestamp of report generation
    - `totalTeams` integer, required — Total number of teams with ducklake catalogs
    - `healthyCount` integer, required — Number of healthy teams
    - `warningCount` integer, required — Number of teams with warnings
    - `criticalCount` integer, required — Number of teams in critical state
    - `teams` DuckLakeTeamHealth[], required — Per-team health details, sorted by severity
      - `teamSchema` string, required — Postgres schema name for the team
      - `teamId` union, required — Team UUID extracted from schema name
        - string, uuid
        - string
      - `teamDomain` string, nullable — Domain name for the team
      - `integrationId` union — DuckLake integration ID for this team
        - string, uuid
        - string
      - `dataFiles` integer, required — Row count in ducklake_data_file table
      - `snapshots` integer, required — Row count in ducklake_snapshot table
      - `columnStats` integer, required — Row count in ducklake_file_column_stats table
      - `deleteFiles` integer, required — Count of delete files still referenced by a live (non-expired) snapshot
      - `severity` 'healthy' | 'warning' | 'critical', required
      - `healthScore` integer, required — Numeric health score (higher = worse)
  - `meta` ResponseMeta
    - `requestId` string — Unique request identifier for tracing
    - `timestamp` string, date-time — Response timestamp (UTC)
    - `durationMs` integer, nullable — Request processing time in milliseconds

## Other responses

- `401` — Auth Invalid Token
- `403` — Forbidden Insufficient Permissions
- `422` — Validation Failed
- `426` — Business Quota Exceeded
- `500` — Internal Error

---

[API](https://skmtc.dev/definite/apis/defapi.md) · [All operations](https://skmtc.dev/definite/apis/defapi/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/definite/defapi/revisions/5ea378187147/schema)
