> ## 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. Every method is async.

## Access

```python theme={null}
from adaline.main import Adaline

adaline = Adaline()
rows = adaline.datasets.rows  # DatasetRowsClient
```

The class is also exported directly:

```python theme={null}
from adaline.clients import DatasetRowsClient
```

Types from `adaline_api`:

```python theme={null}
from adaline_api.models.dataset_row import DatasetRow
from adaline_api.models.dataset_row_input import DatasetRowInput
from adaline_api.models.add_dataset_rows_response import AddDatasetRowsResponse
from adaline_api.models.list_dataset_rows_response import ListDatasetRowsResponse
```

***

## list()

List rows in a dataset (paginated).

```python theme={null}
async def list(
    *,
    dataset_id: str,
    columns: Optional[str] = None,
    sort: Optional[SortOrderInput] = None,
    created_after: Optional[int] = None,
    created_before: Optional[int] = None,
    limit: Optional[int] = None,
    cursor: Optional[str] = None,
) -> ListDatasetRowsResponse
```

### Parameters

| Name | Type | Required | Description |
| - | - | - | - |
| `dataset_id` | `str` | Yes | Dataset identifier. |
| `columns` | `Optional[str]` | No | Comma-separated column IDs or names. Omit to return all. |
| `sort` | `Optional[SortOrderInput]` | No | Sort order. |
| `created_after` / `created_before` | `Optional[int]` | No | Unix millisecond bounds. |
| `limit` | `Optional[int]` | No | Page size (default 50, max 200). |
| `cursor` | `Optional[str]` | No | Cursor from a previous response. |

### Returns

[`ListDatasetRowsResponse`](https://www.adaline.ai/docs/reference/api/v2/openapi/get-dataset-rows) with `{ data: list[DatasetRow]; pagination: Pagination }`.

### Example

```python theme={null}
response = await adaline.datasets.rows.list(
    dataset_id="dataset_abc123",
    columns="question,expected",
    sort="createdAt:desc",
    limit=100,
)
```

***

## create()

Create one or more rows in a single batch (up to 100).

```python theme={null}
async def create(
    *,
    dataset_id: str,
    rows: List[DatasetRowInput],
    values_by: Optional[str] = None,  # "columnId" or "columnName"
) -> AddDatasetRowsResponse
```

### Parameters

| Name | Type | Required | Description |
| - | - | - | - |
| `dataset_id` | `str` | Yes | Dataset identifier. |
| `rows` | `List[DatasetRowInput]` | Yes | Row definitions, each with a `values` map. |
| `values_by` | `Optional[str]` | No | `"columnId"` (default) or `"columnName"`. |

### Returns

[`AddDatasetRowsResponse`](https://www.adaline.ai/docs/reference/api/v2/openapi/add-dataset-rows) with `{ rows: list[DatasetRow] }`.

### Example

```python theme={null}
from adaline_api.models.dataset_row_input import DatasetRowInput

response = await adaline.datasets.rows.create(
    dataset_id="dataset_abc123",
    values_by="columnName",
    rows=[
        DatasetRowInput(values={"question": "How do I reset my password?", "expected": "Link to reset"}),
        DatasetRowInput(values={"question": "How do I cancel my plan?", "expected": "Link to billing"}),
    ],
)

print(f"Inserted {len(response.rows)} rows")
```

***

## update()

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

```python theme={null}
async def update(
    *,
    dataset_id: str,
    row_id: str,
    row: DatasetRowInput,
    values_by: Optional[str] = None,
) -> DatasetRow
```

### Example

```python theme={null}
from adaline_api.models.dataset_row_input import DatasetRowInput

await adaline.datasets.rows.update(
    dataset_id="dataset_abc123",
    row_id="row_def456",
    values_by="columnName",
    row=DatasetRowInput(values={"expected": "Updated expected answer"}),
)
```

***

## delete()

Delete a single row from a dataset.

```python theme={null}
async def delete(*, dataset_id: str, row_id: str) -> None
```

***

## See Also

* [DatasetsClient](https://www.adaline.ai/docs/reference/sdk/v2/python/classes/datasets.md) — parent client
* [DatasetColumnsClient](https://www.adaline.ai/docs/reference/sdk/v2/python/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.