Breakthrough Datasets
albert.collections.btdataset
AlbertPaginator
AlbertPaginator(
*,
path: str,
mode: PaginationMode,
session: AlbertSession,
deserialize: Callable[
[Iterable[dict]], Iterable[ItemType]
],
params: dict[str, str] | None = None,
)
Bases: Iterator[ItemType]
Helper class for pagination through Albert endpoints.
Two pagination modes are possible:
- Offset-based via by the offset query parameter
- Key-based via by the startKey query parameter and 'lastKey' response field
A custom deserialize function is provided when additional logic is required to load
the raw items returned by the search listing, e.g., making additional Albert API calls.
Source code in src/albert/core/pagination.py
AlbertSession
AlbertSession(
*,
base_url: str,
token: str | None = None,
auth_manager: AlbertClientCredentials
| AlbertSSOClient
| None = None,
retries: int | None = None,
)
Bases: Session
A session that has a base URL, which is prefixed to all request URLs.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
base_url
|
str
|
The base URL to prefix to all relative request paths (e.g., "https://app.albertinvent.com"). |
required |
token
|
str | None
|
A static JWT token for authentication. Ignored if |
None
|
auth_manager
|
AlbertClientCredentials | AlbertSSOClient
|
An authentication manager used to dynamically fetch and refresh tokens.
If provided, it overrides |
None
|
retries
|
int
|
The number of automatic retries on failed requests (default is 3). |
None
|
Methods:
| Name | Description |
|---|---|
request |
|
Source code in src/albert/core/session.py
request
Source code in src/albert/core/session.py
BTDataset
Bases: BaseResource
file_name
class-attribute
instance-attribute
file_name: str | None = Field(
default=None, alias="fileName"
)
id
class-attribute
instance-attribute
id: BTDatasetId | None = Field(
default=None, alias="albertId"
)
references
class-attribute
instance-attribute
BTDatasetCollection
BTDatasetCollection(*, session: AlbertSession)
Bases: BaseCollection
BTDatasetCollection is a collection class for managing Breakthrough dataset entities.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
session
|
AlbertSession
|
The Albert session instance. |
required |
Attributes:
| Name | Type | Description |
|---|---|---|
base_path |
str
|
The base path for btdataset API requests. |
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
session
|
AlbertSession
|
The Albert session instance. |
required |
Methods:
| Name | Description |
|---|---|
create |
Create a new BTDataset. |
delete |
Delete a BTDataset by ID. |
get_all |
Get all items from the BTDataset collection. |
get_by_id |
Get a BTDataset by ID. |
update |
Update a BTDataset. |
Source code in src/albert/collections/btdataset.py
create
Create a new BTDataset.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
dataset
|
BTDataset
|
The BTDataset record to create. |
required |
Returns:
| Type | Description |
|---|---|
BTDataset
|
The created BTDataset. |
Source code in src/albert/collections/btdataset.py
delete
delete(*, id: BTDatasetId) -> None
Delete a BTDataset by ID.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
BTDatasetId
|
The ID of the BTDataset to delete. |
required |
Returns:
| Type | Description |
|---|---|
None
|
|
Source code in src/albert/collections/btdataset.py
get_all
get_all(
*,
limit: int = 100,
name: str | None = None,
start_key: str | None = None,
created_by: str | None = None,
) -> Iterator[BTDataset]
Get all items from the BTDataset collection.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
limit
|
int
|
Number of items to return per page, default 100 |
100
|
name
|
str
|
Name of the dataset to filter by, default None |
None
|
start_key
|
str
|
The starting key for pagination, default None |
None
|
created_by
|
str
|
The user who created the dataset, default None |
None
|
Returns:
| Type | Description |
|---|---|
Iterator[BTDataset]
|
An iterator of elements returned by the BTDataset listing. |
Source code in src/albert/collections/btdataset.py
get_by_id
get_by_id(*, id: BTDatasetId) -> BTDataset
Get a BTDataset by ID.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
id
|
BTDatasetId
|
The Albert ID of the BTDataset. |
required |
Returns:
| Type | Description |
|---|---|
BTDataset
|
The retrived BTDataset. |
Source code in src/albert/collections/btdataset.py
update
Update a BTDataset.
The provided dataset must be registered with an Albert ID.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
dataset
|
BTDataset
|
The BTDataset with updated fields. |
required |
Returns:
| Type | Description |
|---|---|
BTDataset
|
The updated BTDataset object. |
Source code in src/albert/collections/btdataset.py
BaseCollection
BaseCollection(*, session: AlbertSession)
BaseCollection is the base class for all collection classes.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
session
|
AlbertSession
|
The Albert API Session instance. |
required |