Skip to content

notes

Classes

NotesClient

NotesClient(client: OWUIClientBase)

Bases: ResourceBase

Client for the Notes endpoints.

Source code in src/owui_client/client_base.py
def __init__(self, client: OWUIClientBase):
    self._client = client

Functions

get_notes
get_notes() -> List[NoteItemResponse]

Get all notes visible to the user.

This endpoint returns a list of notes that the user has permission to view. If the user is an admin, they can see all notes. Otherwise, they can see their own notes and notes shared with them.

Returns:

Type Description
List[NoteItemResponse]

A list of NoteItemResponse objects.

Source code in src/owui_client/routers/notes.py
async def get_notes(self) -> List[NoteItemResponse]:
    """
    Get all notes visible to the user.

    This endpoint returns a list of notes that the user has permission to view.
    If the user is an admin, they can see all notes.
    Otherwise, they can see their own notes and notes shared with them.

    Returns:
        A list of `NoteItemResponse` objects.
    """
    return await self._request(
        "GET",
        "/v1/notes/",
        model=NoteItemResponse,
    )
search_notes
search_notes(
    query: Optional[str] = None,
    view_option: Optional[str] = None,
    permission: Optional[str] = None,
    order_by: Optional[str] = None,
    direction: Optional[str] = None,
    page: Optional[int] = 1,
) -> NoteListResponse

Search for notes.

Parameters:

Name Type Description Default
query Optional[str]

Search query string.

None
view_option Optional[str]

View option filter (e.g., 'created', 'shared').

None
permission Optional[str]

Permission filter (e.g., 'read', 'write').

None
order_by Optional[str]

Field to order by.

None
direction Optional[str]

Sort direction ('asc', 'desc').

None
page Optional[int]

Page number (default 1).

1

Returns:

Type Description
NoteListResponse

NoteListResponse: List of notes matching the search criteria.

Source code in src/owui_client/routers/notes.py
async def search_notes(
    self,
    query: Optional[str] = None,
    view_option: Optional[str] = None,
    permission: Optional[str] = None,
    order_by: Optional[str] = None,
    direction: Optional[str] = None,
    page: Optional[int] = 1,
) -> NoteListResponse:
    """
    Search for notes.

    Args:
        query: Search query string.
        view_option: View option filter (e.g., 'created', 'shared').
        permission: Permission filter (e.g., 'read', 'write').
        order_by: Field to order by.
        direction: Sort direction ('asc', 'desc').
        page: Page number (default 1).

    Returns:
        `NoteListResponse`: List of notes matching the search criteria.
    """
    params = {}
    if query:
        params["query"] = query
    if view_option:
        params["view_option"] = view_option
    if permission:
        params["permission"] = permission
    if order_by:
        params["order_by"] = order_by
    if direction:
        params["direction"] = direction
    if page:
        params["page"] = page

    return await self._request(
        "GET",
        "/v1/notes/search",
        model=NoteListResponse,
        params=params,
    )
create_note
create_note(form_data: NoteForm) -> Optional[NoteModel]

Create a new note.

Parameters:

Name Type Description Default
form_data NoteForm

The data for the new note.

required

Returns:

Type Description
Optional[NoteModel]

The created note, or None if creation failed.

Source code in src/owui_client/routers/notes.py
async def create_note(self, form_data: NoteForm) -> Optional[NoteModel]:
    """
    Create a new note.

    Args:
        form_data: The data for the new note.

    Returns:
        The created note, or None if creation failed.
    """
    return await self._request(
        "POST",
        "/v1/notes/create",
        model=Optional[NoteModel],
        json=form_data.model_dump(),
    )
get_note_by_id
get_note_by_id(id: str) -> Optional[NoteModel]

Get a specific note by its ID.

Parameters:

Name Type Description Default
id str

The unique identifier of the note.

required

Returns:

Type Description
Optional[NoteModel]

The requested note, or None if not found or not accessible.

Source code in src/owui_client/routers/notes.py
async def get_note_by_id(self, id: str) -> Optional[NoteModel]:
    """
    Get a specific note by its ID.

    Args:
        id: The unique identifier of the note.

    Returns:
        The requested note, or None if not found or not accessible.
    """
    return await self._request(
        "GET",
        f"/v1/notes/{id}",
        model=Optional[NoteModel],
    )
update_note_by_id
update_note_by_id(
    id: str, form_data: NoteForm
) -> Optional[NoteModel]

Update an existing note.

Parameters:

Name Type Description Default
id str

The unique identifier of the note to update.

required
form_data NoteForm

The updated data for the note. Note that 'title' is required.

required

Returns:

Type Description
Optional[NoteModel]

The updated note, or None if update failed.

Source code in src/owui_client/routers/notes.py
async def update_note_by_id(
    self, id: str, form_data: NoteForm
) -> Optional[NoteModel]:
    """
    Update an existing note.

    Args:
        id: The unique identifier of the note to update.
        form_data: The updated data for the note. Note that 'title' is required.

    Returns:
        The updated note, or None if update failed.
    """
    return await self._request(
        "POST",
        f"/v1/notes/{id}/update",
        model=Optional[NoteModel],
        json=form_data.model_dump(),
    )
delete_note_by_id
delete_note_by_id(id: str) -> bool

Delete a note by its ID.

Parameters:

Name Type Description Default
id str

The unique identifier of the note to delete.

required

Returns:

Type Description
bool

True if deletion was successful, False otherwise.

Source code in src/owui_client/routers/notes.py
async def delete_note_by_id(self, id: str) -> bool:
    """
    Delete a note by its ID.

    Args:
        id: The unique identifier of the note to delete.

    Returns:
        True if deletion was successful, False otherwise.
    """
    return await self._request(
        "DELETE",
        f"/v1/notes/{id}/delete",
        model=bool,
    )