Skip to main content
Mastra 1.0 is available 🎉 Read announcement

dataset.listExperiments()

Added in: @mastra/core@1.4.0

Lists all experiments (runs) for this dataset with pagination.

Usage example
Direct 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})`);
}

Parameters
Direct link to Parameters

page?:

number
Page number. Defaults to `0`.

perPage?:

number
Number of experiments per page. Defaults to `20`.

Returns
Direct 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`.
On this page