> ## 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.

# Projects

# ProjectsClient

`adaline.projects` lists and manages the projects in your workspace. Every method is async.

## Access

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

adaline = Adaline()
projects = adaline.projects  # ProjectsClient
```

The class is also exported directly:

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

Types from `adaline_api`:

```python theme={null}
from adaline_api.models.project import Project
from adaline_api.models.update_project_request import UpdateProjectRequest
from adaline_api.models.list_projects_response import ListProjectsResponse
```

***

## list()

List all projects the API key has access to.

```python theme={null}
async def list() -> ListProjectsResponse
```

### Returns

[`ListProjectsResponse`](https://www.adaline.ai/docs/reference/api/v2/openapi/list-projects) with `{ data: list[Project] }`.

### Example

```python theme={null}
response = await adaline.projects.list()

for project in response.data:
    print(project.id, project.title)
```

***

## get()

Get a single project by ID.

```python theme={null}
async def get(*, project_id: str) -> Project
```

### Parameters

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `str` | Yes | Project identifier. |

### Example

```python theme={null}
project = await adaline.projects.get(project_id="project_abc123")
print(project.title, project.icon)
```

***

## update()

Update a project's title and/or icon. At least one field must be provided.

```python theme={null}
async def update(
    *,
    project_id: str,
    project: UpdateProjectRequest,
) -> Project
```

### Parameters

| Name | Type | Required | Description |
| - | - | - | - |
| `project_id` | `str` | Yes | Project identifier. |
| `project` | [`UpdateProjectRequest`](https://www.adaline.ai/docs/reference/api/v2/openapi/update-project) | Yes | Fields to update (`title?`, `icon?`). |

### Example

```python theme={null}
from adaline_api.models.update_project_request import UpdateProjectRequest

updated = await adaline.projects.update(
    project_id="project_abc123",
    project=UpdateProjectRequest(
        title="Renamed project",
        icon={"type": "emoji", "value": "✨"},
    ),
)
```

***

## See Also

* [Adaline class](https://www.adaline.ai/docs/reference/sdk/v2/python/classes/adaline.md)
* [PromptsClient](https://www.adaline.ai/docs/reference/sdk/v2/python/classes/prompts.md) — `list(project_id=...)` is the most common follow-up call
* API reference: [List projects](https://www.adaline.ai/docs/reference/api/v2/openapi/list-projects.md) · [Get project](https://www.adaline.ai/docs/reference/api/v2/openapi/get-project.md) · [Update project](https://www.adaline.ai/docs/reference/api/v2/openapi/update-project.md)


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