> ## Documentation Index
> Fetch the complete documentation index at: https://www.adaline.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Dataset rows

# DatasetRowsClient

`adaline.datasets.rows` works with individual rows inside a dataset — list them, add new ones in batch, patch a single row's cell values, or delete a row.

## Access

```typescript theme={null}
import { Adaline } from '@adaline/client';

const adaline = new Adaline();
const rows = adaline.datasets.rows; // DatasetRowsClient
```

The class is also exported directly:

```typescript theme={null}
import { DatasetRowsClient } from '@adaline/client';
```

Types from `@adaline/api`:

```typescript theme={null}
import type {
  DatasetRow,
  DatasetRowInput,
  AddDatasetRowsResponse,
  ListDatasetRowsResponse,
  SortOrder,
} from '@adaline/api';
```

***

## list()

List rows in a dataset (paginated). Use `columns` to narrow which column values are returned — useful for large cell payloads.

```typescript theme={null}
list(options: {
  datasetId: string;
  columns?: string;
  sort?: SortOrder;
  createdAfter?: number;
  createdBefore?: number;
  limit?: number;
  cursor?: string;
}): Promise<ListDatasetRowsResponse>
```

### Parameters

| Name | Type | Required | Description |
| - | - | - | - |
| `datasetId` | `string` | Yes | Dataset identifier. |
| `columns` | `string` | No | Comma-separated list of column IDs or names. Omit to return all. |
| `sort` | `SortOrder` | No | `"createdAt:asc"` or `"createdAt:desc"`. |
| `createdAfter` | `number` | No | Unix milliseconds. |
| `createdBefore` | `number` | No | Unix milliseconds. |
| `limit` | `number` | No | Page size (default 50, max 200). |
| `cursor` | `string` | No | Cursor from a previous response. |

### Returns

`Promise<ListDatasetRowsResponse>` with `{ data: DatasetRow[]; pagination: Pagination }`. Each `DatasetRow.values` is a map of column ID → cell value.

### Example

```typescript theme={null}
const { data, pagination } = await adaline.datasets.rows.list({
  datasetId: 'dataset_abc123',
  columns: 'question,expected',
  sort: 'createdAt:desc',
  limit: 100,
});
```

***

## create()

Create one or more rows in a single batch (up to 100). Use `valuesBy` to control whether the keys inside each row's `values` object are column IDs or column names.

```typescript theme={null}
create(options: {
  datasetId: string;
  valuesBy?: 'columnId' | 'columnName';
  rows: DatasetRowInput[];
}): Promise<AddDatasetRowsResponse>
```

### Parameters

| Name | Type | Required | Description |
| - | - | - | - |
| `datasetId` | `string` | Yes | Dataset identifier. |
| `valuesBy` | `'columnId' \| 'columnName'` | No | How the keys inside each row's `values` object are interpreted. Defaults to `"columnId"`. |
| `rows` | `DatasetRowInput[]` | Yes | Array of row definitions, each with a `values` map. |

### Returns

`Promise<AddDatasetRowsResponse>` with `{ rows: DatasetRow[] }` — the newly created rows with server-assigned IDs.

### Example

```typescript theme={null}
const { rows } = await adaline.datasets.rows.create({
  datasetId: 'dataset_abc123',
  valuesBy: 'columnName',
  rows: [
    { values: { question: 'How do I reset my password?', expected: 'Link to password reset flow' } },
    { values: { question: 'How do I cancel my plan?', expected: 'Link to billing settings' } },
  ],
});

console.log(`Inserted ${rows.length} rows`);
```

***

## update()

Update the cell values on a single row. Cell values you don't include are left untouched.

```typescript theme={null}
update(options: {
  datasetId: string;
  rowId: string;
  valuesBy?: 'columnId' | 'columnName';
  row: DatasetRowInput;
}): Promise<DatasetRow>
```

### Returns

`Promise<DatasetRow>` — the updated row.

### Example

```typescript theme={null}
await adaline.datasets.rows.update({
  datasetId: 'dataset_abc123',
  rowId: 'row_def456',
  valuesBy: 'columnName',
  row: { values: { expected: 'Updated expected answer' } },
});
```

***

## delete()

Delete a single row from a dataset. Irreversible.

```typescript theme={null}
delete(options: { datasetId: string; rowId: string }): Promise<void>
```

### Example

```typescript theme={null}
await adaline.datasets.rows.delete({
  datasetId: 'dataset_abc123',
  rowId: 'row_def456',
});
```

***

## See Also

* [DatasetsClient](https://www.adaline.ai/docs/reference/sdk/v2/typescript/classes/datasets.md) — parent client
* [DatasetColumnsClient](https://www.adaline.ai/docs/reference/sdk/v2/typescript/classes/dataset-columns.md) — sibling sub-client for columns
* API reference: [Get rows](https://www.adaline.ai/docs/reference/api/v2/openapi/get-dataset-rows.md) · [Add rows](https://www.adaline.ai/docs/reference/api/v2/openapi/add-dataset-rows.md) · [Update row](https://www.adaline.ai/docs/reference/api/v2/openapi/update-dataset-row.md) · [Delete row](https://www.adaline.ai/docs/reference/api/v2/openapi/delete-dataset-row.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.