List datasets
/v1/datasetsReturns a page of the datasets that belong to the organization behind your private key, newest first, with live item counts for each one.
Use it to find a datasetId before calling any other dataset endpoint,
or to build a catalogue picker in your own tooling.
Good to know
- Rows are a summary:
config,metadataandautoPublishare omitted. Call Retrieve dataset for the full record. - The
itemsblock is computed on every request from the catalogue and the ingest queue, so it is accurate but adds a little latency on very large accounts. pageandlimitare parsed as integers. A value that does not parse (for examplepage=abc) is rejected rather than defaulted. Values above200forlimitare rejected, not clamped.- The pagination block on this endpoint carries
page,limit,totalandhasMoreonly; there is nopagesfield.
Query parameters
21-based page number. Must be an integer of at least 1.
Datasets per page. Must be an integer between 1 and 200; larger values are rejected.
Response
Datasets on this page, newest first.
Unique id of the dataset.
Lifecycle state of a dataset.
- draft — newly created; not visible to search, chat or the widget.
- active — live. Any number of datasets can be active at once.
- archived — parked. Data is kept, items and sources are switched off.
draftactivearchivedDisplay name.
Free-text description. May be an empty string.
The dataset's config.targetGender, or null when detection is on.
menswomensWhen the dataset was created.
When the dataset record was last written.
Live counts of the records inside a dataset, split between processed items and the ingest queue.
Page metadata returned by *List datasets*. Unlike the shared Pagination shape it has no pages field.
The page that was returned (1-based).
Page size that was applied.
Total datasets in the organization.
Whether a following page exists.
Errors
21Every error is JSON with a single error string unless noted. Match on the status code; the message is for humans.
Organization not found. Please check the organizationId.The organization that owns the key no longer exists.
Page must be a positive integer greater than or equal to 1.page is below 1 or is not an integer (including values that fail to parse).
Limit must be a positive integer greater than or equal to 1.limit is below 1 or is not an integer (including values that fail to parse).
Limit cannot exceed 200 datasets per request.limit is greater than 200.
curl -X GET "https://stylor.ai/api/v1/datasets" \
-H "Authorization: Bearer $STYLOR_API_KEY"{
"datasets": [
{
"datasetId": "c9b3c6c0-9b0f-4f42-bf3f-2b7a6b1b9d31",
"status": "active",
"name": "Spring 2026",
"description": "Women's spring drop",
"targetGender": "womens",
"createdAt": "2026-03-02T09:14:31.208Z",
"updatedAt": "2026-08-19T16:40:02.911Z",
"items": {
"active": 1284,
"archived": 12,
"pending": 0,
"partial_update": 3,
"processing": 0,
"failed": 2
}
},
{
"datasetId": "5f1e9c1a-2d3b-4c8e-9a7f-0b6d4e2c1a99",
"status": "draft",
"name": "Menswear import",
"description": "",
"targetGender": null,
"createdAt": "2026-02-11T12:00:00.000Z",
"updatedAt": "2026-02-11T12:00:00.000Z",
"items": {
"active": 0,
"archived": 0,
"pending": 540,
"partial_update": 0,
"processing": 8,
"failed": 0
}
}
],
"pagination": {
"page": 1,
"limit": 10,
"total": 2,
"hasMore": false
}
}