Personalization
albert.collections.personalization.PersonalizationCollection
Bases: BaseCollection
Manage user personalization records in the Albert platform.
Personalization records store per-user preferences such as starred projects, hidden rows, and saved filters. Records always belong to a user: records created or listed without an explicit user belong to the current user.
This collection is accessed as client.personalization.
Example
from albert import Albert
from albert.resources.personalization import Personalization, PersonalizationCategory
client = Albert()
record = client.personalization.create(
personalization=Personalization(
category=PersonalizationCategory.STARRED_PROJECTS,
saved_id="PRO123",
saved_name="Weatherproof Coatings 2026",
)
)
print(record.id)
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
session
|
AlbertSession
|
The authenticated Albert session used for API calls. |
required |
Attributes:
| Name | Type | Description |
|---|---|---|
base_path |
str
|
The base API route for personalization requests. |
Methods:
| Name | Description |
|---|---|
create |
Create a new personalization record for the current user. |
get_by_id |
Get a single personalization record by its ID. |
get_all |
Get personalization records, with optional filters. |
delete |
Delete a personalization record by its ID. |
Source code in src/albert/collections/personalization.py
create
create(
*, personalization: Personalization
) -> Personalization
Create a new personalization record for the current user.
Example
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
personalization
|
Personalization
|
The record to create. Requires |
required |
Returns:
| Type | Description |
|---|---|
Personalization
|
The created record, populated with its assigned ID. |
Source code in src/albert/collections/personalization.py
get_by_id
get_by_id(*, id: str) -> Personalization
Get a personalization record by its ID.
Example
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The ID of the record to retrieve (format |
required |
Returns:
| Type | Description |
|---|---|
Personalization
|
The fully populated record. |
Source code in src/albert/collections/personalization.py
get_all
get_all(
*,
category: PersonalizationCategory | None = None,
sub_category: str | None = None,
user_id: str | None = None,
max_items: int | None = None,
) -> Iterator[Personalization]
Get personalization records, with optional filters.
When user_id is not given, records of the current user are returned.
Example
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
category
|
PersonalizationCategory
|
Only return records in this category. |
None
|
sub_category
|
str
|
Only return records in this subcategory. Requires |
None
|
user_id
|
str
|
Only return records belonging to this user. Defaults to the current user. |
None
|
max_items
|
int
|
Maximum number of records to return in total. If None, returns all matching records. |
None
|
Returns:
| Type | Description |
|---|---|
Iterator[Personalization]
|
An iterator of matching records. |
Raises:
| Type | Description |
|---|---|
ValueError
|
If |
Source code in src/albert/collections/personalization.py
delete
delete(*, id: str) -> None
Delete a personalization record by its ID.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
str
|
The ID of the record to delete (format |
required |
Returns:
| Type | Description |
|---|---|
None
|
|