Skip to content

List User Datasets

GET
/v1/datasets/list
curl --request GET \
--url 'https://example.com/v1/datasets/list?dataset_type=lerobot_v2_1&limit=20&sort=name'

List published QDS datasets for exactly one authorized account.

The legacy artifact/job catalog is deliberately not consulted. QDS’s canonical dataset UUID is the stable public identity; source format is a persisted ingest fact, never inferred from filenames or another service.

dataset_type

Filter by the persisted QDS source format

string
nullable
Allowed values: lerobot_v2_1 lerobot_v3 mcap_ros2

Filter by the persisted QDS source format

account_id

Scope to this account (the dashboard’s active account). Membership is verified upstream; a non-member gets 403.

string | null format: uuid

Scope to this account (the dashboard’s active account). Membership is verified upstream; a non-member gets 403.

search

Search dataset path

string | null
<= 200 characters

Search dataset path

limit
integer
default: 20 >= 1 <= 100
cursor

Pagination cursor

string | null
<= 2048 characters

Pagination cursor

sort
string
default: name
Allowed value: name
x-api-key
string | null

Paginated list of user’s datasets

Media type application/json
PaginatedDatasetsResponse
object
items
Array<object>
DatasetItem
object
artifact_id
required

Artifact ID

string format: uuid
subtype
required

Dataset subtype (lerobot_v2_1, lerobot_v3, mcap_ros2)

string
artifact_subtype

Alias of subtype

string | null
path
required

Dataset path (org/name)

string
metadata
object
key
additional properties
any
jobs
Array<object>
JobLink
object
job_id
required
string format: uuid
direction
required

Input or output

string
published_at
required

Immutable timestamp of the first successful structured QDS publication

string format: date-time
qds

QDS catalog facts (P6a)

object
repo_id
string | null format: uuid
size_bytes

REAL logical bytes (file sizes sum)

integer | null
file_count
integer | null
dataset_id
string | null format: uuid
episode_count
integer | null
total_frames
integer | null
quality_avg

Mean of STORED episode quality scores

number | null
scored_episodes

How many episodes have a stored score

integer | null
page_info
required
PageInfo
object
has_next
required

Whether more items exist after this page

boolean
end_cursor

Cursor for the next page

string | null
total_count

Total matching items

integer | null
Example generated
{
"items": [
{
"artifact_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"subtype": "example",
"artifact_subtype": "example",
"path": "example",
"metadata": {},
"jobs": [
{
"job_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"direction": "example"
}
],
"published_at": "2026-04-15T12:00:00Z",
"qds": {
"repo_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"size_bytes": 1,
"file_count": 1,
"dataset_id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0",
"episode_count": 1,
"total_frames": 1,
"quality_avg": 1,
"scored_episodes": 1
}
}
],
"page_info": {
"has_next": true,
"end_cursor": "example",
"total_count": 1
}
}

Invalid or missing API key

Media type application/json
ErrorResponse

Standard error response.

object
detail
required

Error message describing what went wrong

string
Example generated
{
"detail": "example"
}

Invalid pagination parameters