> ## 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.storages.object storages.base

<a id="camel.storages.object_storages.base" />

<a id="camel.storages.object_storages.base.BaseObjectStorage" />

## BaseObjectStorage

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

<a id="camel.storages.object_storages.base.BaseObjectStorage.object_exists" />

### object\_exists

```python theme={"system"}
def object_exists(self, file_path: PurePath):
```

Check if the object exists in the storage.

**Parameters:**

* **file\_path** (PurePath): The path to the object in the storage.

**Returns:**

bool: True if the object exists, False otherwise.

<a id="camel.storages.object_storages.base.BaseObjectStorage.canonicalize_path" />

### canonicalize\_path

```python theme={"system"}
def canonicalize_path(file_path: PurePath):
```

<a id="camel.storages.object_storages.base.BaseObjectStorage.put_file" />

### put\_file

```python theme={"system"}
def put_file(self, file_path: PurePath, file: File):
```

Put a file to the object storage.

**Parameters:**

* **file\_path** (PurePath): The path to the object in the storage.
* **file** (File): The file to be put.

<a id="camel.storages.object_storages.base.BaseObjectStorage.get_file" />

### get\_file

```python theme={"system"}
def get_file(self, file_path: PurePath):
```

Get a file from the object storage.

**Parameters:**

* **file\_path** (PurePath): The path to the object in the storage.

**Returns:**

File: The file object get from the storage.

<a id="camel.storages.object_storages.base.BaseObjectStorage.upload_file" />

### upload\_file

```python theme={"system"}
def upload_file(self, local_file_path: Path, remote_file_path: PurePath):
```

Upload a local file to the object storage.

**Parameters:**

* **local\_file\_path** (Path): The path to the local file to be uploaded.
* **remote\_file\_path** (PurePath): The path to the object in storage.

<a id="camel.storages.object_storages.base.BaseObjectStorage.download_file" />

### download\_file

```python theme={"system"}
def download_file(self, local_file_path: Path, remote_file_path: PurePath):
```

Download a file from the object storage to the local system.

**Parameters:**

* **local\_file\_path** (Path): The path to the local file to be saved.
* **remote\_file\_path** (PurePath): The path to the object in storage.

<a id="camel.storages.object_storages.base.BaseObjectStorage._put_file" />

### \_put\_file

```python theme={"system"}
def _put_file(self, file_key: str, file: File):
```

<a id="camel.storages.object_storages.base.BaseObjectStorage._get_file" />

### \_get\_file

```python theme={"system"}
def _get_file(self, file_key: str, filename: str):
```

<a id="camel.storages.object_storages.base.BaseObjectStorage._object_exists" />

### \_object\_exists

```python theme={"system"}
def _object_exists(self, file_key: str):
```

<a id="camel.storages.object_storages.base.BaseObjectStorage._upload_file" />

### \_upload\_file

```python theme={"system"}
def _upload_file(self, local_file_path: Path, remote_file_key: str):
```

<a id="camel.storages.object_storages.base.BaseObjectStorage._download_file" />

### \_download\_file

```python theme={"system"}
def _download_file(self, local_file_path: Path, remote_file_key: str):
```
