---
title: "List data lakes"
method: GET
path: "/api/v1/data-lakes"
tags: ["Data Lakes"]
---

# List data lakes

`GET /api/v1/data-lakes`

## Request

- Base URL: `https://your-deployment.example.com`
- URL: `https://your-deployment.example.com/api/v1/data-lakes`
- Auth: one of:
  - HTTP bearer
  - API key in header `x-api-key`

Lists the data lakes the caller can reach as a member: lakes they own, lakes shared with them through an organization or an access grant, public lakes, and the built-in lakes their plan entitles them to. Platform-administrator reach is deliberately NOT applied here, so an admin key lists its owner's own lakes rather than every lake on the platform. Only `draft` and `active` lakes are listed. Cursor-paginated (see the pagination convention): pass `next_cursor` back as `cursor` until it is `null`.

## Query parameters

- `limit` integer
- `cursor` string

## Response `200`

One page of lakes, ordered by `id`.

- ListDataLakesResponse200
  - `data` object[], required
    - `id` string, required
    - `name` string, required
    - `slug` string, required
    - `datalake_tag` string, required
    - `description` string, nullable, required
    - `organization_id` string, nullable, required
    - `is_public` boolean, required
    - `built_in` boolean, required
    - `status` 'draft' | 'active' | 'archiving' | 'archived' | 'unarchiving' | 'restoring' | 'deleting' | 'deleted' | 'purging', required
    - `file_count` integer, required
    - `total_size_bytes` number, required
    - `last_sync_at` string, nullable, required
    - `created_at` string, nullable, required
    - `updated_at` string, nullable, required
  - `next_cursor` string, nullable, required

## Other responses

- `401`: Missing or invalid credentials.
- `403`: The API key holds none of `datalake:read`, `datalake:write` or `datalake:query`, or Data Lakes are disabled on this deployment.
- `405`: The path does not serve this HTTP method.
- `422`: `limit` is out of range, or `cursor` is malformed or was issued by a different endpoint. A cursor is opaque: pass back exactly the `next_cursor` you were given.
- `429`: Per-user rate limit exceeded.

---

[API](https://skmtc.dev/bike4mind/apis/bike4mind-api.md) · [All operations](https://skmtc.dev/bike4mind/apis/bike4mind-api/llms.txt) · [OpenAPI document](https://skmtc.dev/bike4mind/apis/bike4mind-api/revisions/db47495b892f?raw)
