dataset.listExperiments()
Added in: @mastra/core@1.4.0
Lists all experiments (runs) for this dataset with pagination.
Usage exampleDirect link to Usage example
import { Mastra } from "@mastra/core";
const mastra = new Mastra({ /* storage config */ });
const dataset = await mastra.datasets.get({ id: "dataset-id" });
const { experiments, pagination } = await dataset.listExperiments({ page: 0, perPage: 10 });
for (const exp of experiments) {
console.log(`${exp.id}: ${exp.status} (${exp.succeededCount}/${exp.totalItems})`);
}
ParametersDirect link to Parameters
page?:
number
Page number. Defaults to `0`.
perPage?:
number
Number of experiments per page. Defaults to `20`.
ReturnsDirect link to Returns
result:
Promise<object>
Paginated experiment list.
object
experiments:
Experiment[]
Array of experiment records.
Experiment
id:
string
Unique experiment ID.
name?:
string
Display name.
description?:
string
Description.
metadata?:
Record<string, unknown>
Arbitrary metadata.
datasetId:
string
ID of the parent dataset.
datasetVersion:
number | null
Dataset version used for the experiment.
targetType:
'agent' | 'workflow' | 'scorer' | 'processor'
Type of target used.
targetId:
string
ID of the target used.
status:
'pending' | 'running' | 'completed' | 'failed'
Current status of the experiment.
totalItems:
number
Total number of items.
succeededCount:
number
Number of successful items.
failedCount:
number
Number of failed items.
skippedCount:
number
Number of skipped items.
startedAt:
Date | null
When the experiment started.
completedAt:
Date | null
When the experiment completed.
createdAt:
Date
When the experiment record was created.
updatedAt:
Date
When the experiment record was last updated.
pagination:
PaginationInfo
Pagination metadata with `total`, `page`, `perPage`, and `hasMore`.