---
title: "List Datasets"
method: GET
path: "/v1/datasets"
tags: ["Datasets"]
---

# List Datasets

`GET /v1/datasets`

This endpoint returns a list of configured datasets. The response can be formatted as **JSON** or **CSV**,
and additional filters can be applied using query parameters.

Use `status=true` query parameter to include the current status of each dataset in the response.
Possible status values: `initializing`, `ready`, `disabled`, `error`, `refreshing`, `shuttingdown`.
When `status=true` and a dataset is in `Error`, the response also includes:
- `error`: structured code object with `category`, `type`, and stable `code`
- `error_message`: user-visible details

## Query parameters

- `status` boolean
- `format` 'json' | 'csv'
- `source` string, nullable

## Response `200`

List of datasets. When `status=true` is specified, each dataset includes `status` and error metadata (`error`, `error_message`) when applicable.

- DatasetInfo — Dataset information returned by the `/v1/datasets` endpoint.
  - `acceleration_enabled` boolean, required — Whether acceleration is enabled for the dataset
  - `error` ComponentError
    - `category` 'dataset' | 'model' | 'worker' | 'runtime', required
    - `code` string, required — Stable machine-readable code (`{category}.{type}`), e.g. `dataset.auth`.
    - `type` 'auth' | 'connection' | 'timeout' | 'validation' | 'not_found' | 'permission' | 'rate_limit' | 'internal' | 'unknown', required
  - `error_message` string, nullable — An optional error message describing why the dataset entered an error state. Only populated when `status=true`, the dataset status is `Error`, and an error message was recorded. This value is intended for user-visible display.
  - `from` string, required — The source where the dataset is located (e.g., `postgres:syncs`)
  - `name` string, required — The name of the dataset
  - `properties` object — Custom properties for the dataset
  - `replication_enabled` boolean, required — Whether replication is enabled for the dataset
  - `status` union — Represents the status of a component (e.g. dataset, model, etc). The `Error` variant optionally carries a human-readable error message describing what caused the component to enter the error state. Use [`ComponentStatus::error`] for an error without a message, or [`ComponentStatus::error_with_message`] to include one.
    - 'Initializing' — The component is initializing and not yet ready
    - 'Ready' — The component is ready to accept connections
    - 'Disabled' — The component is disabled and not running
    - object — An error occurred in the component, with an optional error message
      - `Error` string, nullable, required — An error occurred in the component, with an optional error message
    - 'Refreshing' — The component is in the process of refreshing its state
    - 'ShuttingDown' — The component is in the process of shutting down
    - 'NotLoaded' — The component is configured but not loaded yet

## Other responses

- `500` — Internal server error occurred while processing datasets

---

[API](https://skmtc.dev/spiceai/apis/runtime.md) · [All operations](https://skmtc.dev/spiceai/apis/runtime/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/spiceai/runtime/revisions/fb597a4eaa56/schema)
