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

# Camel.datahubs.base

<a id="camel.datahubs.base" />

<a id="camel.datahubs.base.BaseDatasetManager" />

## BaseDatasetManager

```python theme={"system"}
class BaseDatasetManager(ABC):
```

Abstract base class for dataset managers.

<a id="camel.datahubs.base.BaseDatasetManager.create_dataset" />

### create\_dataset

```python theme={"system"}
def create_dataset(self, name: str, **kwargs: Any):
```

Creates a new dataset.

**Parameters:**

* **name** (str): The name of the dataset.
* **kwargs** (Any): Additional keyword arguments.

**Returns:**

str: The URL of the created dataset.

<a id="camel.datahubs.base.BaseDatasetManager.list_datasets" />

### list\_datasets

```python theme={"system"}
def list_datasets(
    self,
    username: str,
    limit: int = 100,
    **kwargs: Any
):
```

Lists all datasets for the current user.

**Parameters:**

* **username** (str): The username of the user whose datasets to list.
* **limit** (int): The maximum number of datasets to list. (default::obj:`100`)
* **kwargs** (Any): Additional keyword arguments.

**Returns:**

List\[str]: A list of dataset ids.

<a id="camel.datahubs.base.BaseDatasetManager.delete_dataset" />

### delete\_dataset

```python theme={"system"}
def delete_dataset(self, dataset_name: str, **kwargs: Any):
```

Deletes a dataset.

**Parameters:**

* **dataset\_name** (str): The name of the dataset to delete.
* **kwargs** (Any): Additional keyword arguments.

<a id="camel.datahubs.base.BaseDatasetManager.add_records" />

### add\_records

```python theme={"system"}
def add_records(
    self,
    dataset_name: str,
    records: List[Record],
    filepath: str = 'records/records.json',
    **kwargs: Any
):
```

Adds records to a dataset.

**Parameters:**

* **dataset\_name** (str): The name of the dataset.
* **records** (List\[Record]): A list of records to add to the dataset.
* **filepath** (str): The path to the file containing the records. (default::obj:`"records/records.json"`)
* **kwargs** (Any): Additional keyword arguments.

<a id="camel.datahubs.base.BaseDatasetManager.update_records" />

### update\_records

```python theme={"system"}
def update_records(
    self,
    dataset_name: str,
    records: List[Record],
    filepath: str = 'records/records.json',
    **kwargs: Any
):
```

Updates records in a dataset.

**Parameters:**

* **dataset\_name** (str): The name of the dataset.
* **records** (List\[Record]): A list of records to update in the dataset.
* **filepath** (str): The path to the file containing the records. (default::obj:`"records/records.json"`)
* **kwargs** (Any): Additional keyword arguments.

<a id="camel.datahubs.base.BaseDatasetManager.list_records" />

### list\_records

```python theme={"system"}
def list_records(
    self,
    dataset_name: str,
    filepath: str = 'records/records.json',
    **kwargs: Any
):
```

Lists records in a dataset.

**Parameters:**

* **dataset\_name** (str): The name of the dataset.
* **filepath** (str): The path to the file containing the records. (default::obj:`"records/records.json"`)
* **kwargs** (Any): Additional keyword arguments.

<a id="camel.datahubs.base.BaseDatasetManager.delete_record" />

### delete\_record

```python theme={"system"}
def delete_record(
    self,
    dataset_name: str,
    record_id: str,
    filepath: str = 'records/records.json',
    **kwargs: Any
):
```

Deletes a record from the dataset.

**Parameters:**

* **dataset\_name** (str): The name of the dataset.
* **record\_id** (str): The ID of the record to delete.
* **filepath** (str): The path to the file containing the records. (default::obj:`"records/records.json"`)
* **kwargs** (Any): Additional keyword arguments.
