roboto.fs#
Submodules#
Package Contents#
- class roboto.fs.AbortTransactionsRequest(/, **data)#
Bases:
pydantic.BaseModelRequest payload for aborting file upload transactions.
Used to cancel ongoing file upload transactions, typically when uploads fail or are no longer needed. This cleans up any reserved resources and marks associated files as no longer pending.
- Parameters:
data (Any)
- transaction_ids: list[str]#
List of transaction IDs to abort.
- class roboto.fs.BeginSignedUrlUploadRequest(/, **data)#
Bases:
pydantic.BaseModelRequest payload to begin a single file upload with a signed URL.
Used for simpler upload scenarios where a pre-signed URL is preferred over temporary credentials. The returned URL can be used directly for uploading the file content.
- Parameters:
data (Any)
- association: roboto.association.Association#
The entity this file will be associated with (e.g., dataset, topic).
- file_path: str#
Destination path for the file within the association.
- file_size: int#
Size of the file in bytes.
- origination: str | None = None#
Optional description of the upload source.
- class roboto.fs.BeginSignedUrlUploadResponse(/, **data)#
Bases:
pydantic.BaseModelResponse from beginning a single file upload.
Contains the upload ID for completing the transaction and a pre-signed URL that can be used to upload the file content directly.
- Parameters:
data (Any)
- upload_id: str#
Unique identifier for this upload transaction.
- upload_url: str#
Pre-signed URL for uploading the file content.
- class roboto.fs.BeginUploadRequest(/, **data)#
Bases:
pydantic.BaseModelRequest payload to begin a batch file upload transaction.
Used to initiate a multi-file upload transaction for any association type (dataset, topic, etc.). Returns a transaction ID and upload mappings that specify where each file should be uploaded.
- Parameters:
data (Any)
- association: roboto.association.Association#
The entity these files will be associated with (e.g., dataset, topic).
- device_id: str | None = None#
Optional identifier of the device that generated this data.
- origination: str#
Description of the upload source (e.g., ‘roboto-sdk v1.0.0’).
- resource_manifest: dict[str, int]#
Dictionary mapping destination file paths to file sizes in bytes.
- class roboto.fs.BeginUploadResponse(/, **data)#
Bases:
pydantic.BaseModelResponse from beginning a batch upload transaction.
Contains the transaction ID needed for subsequent progress reporting and completion calls, plus mappings from file paths to their upload URIs.
- Parameters:
data (Any)
- transaction_id: str#
Unique identifier for this upload transaction.
- upload_mappings: dict[str, str]#
Dictionary mapping file paths to their S3 upload URIs.
- class roboto.fs.DownloadableFile#
Bases:
TypedDictA file to be downloaded from the Roboto Platform.
- bucket_name: str#
Name of the bucket where the file is stored.
- destination_path: pathlib.Path#
Local path where the file should be saved.
- source_uri: str#
//bucket/key’).
- Type:
Full URI of the file in cloud storage (e.g., ‘s3
- class roboto.fs.FileService(roboto_client=None, object_store_registry=None)#
Application service for performing upload and download to the Roboto Platform.
Agnostic to object store provider.
- Parameters:
roboto_client (Optional[roboto.http.RobotoClient])
object_store_registry (Optional[roboto.fs.object_store.StoreRegistry])
- download(files, association, caller_org_id=None, on_progress=None)#
Download files from the Roboto Platform.
- Parameters:
files (collections.abc.Sequence[roboto.fs.download_session.DownloadableFile]) – Sequence of files to download, each with source_uri and destination_path.
association (roboto.association.Association) – Association of the files to download.
caller_org_id (Optional[str]) – Optional organization ID for cross-org access.
on_progress (Optional[roboto.fs.object_store.OnProgress]) – Optional callback to be periodically called with the number of bytes downloaded.
- Return type:
None
- upload(files, association, destination_paths={}, batch_size=_DEFAULT_UPLOAD_BATCH_SIZE, device_id=None, caller_org_id=None, on_progress=None)#
- Parameters:
files (collections.abc.Iterable[pathlib.Path])
association (roboto.association.Association)
destination_paths (collections.abc.Mapping[pathlib.Path, str])
batch_size (int)
device_id (Optional[str])
caller_org_id (Optional[str])
on_progress (Optional[roboto.fs.object_store.OnProgress])
- Return type:
list[str]
- class roboto.fs.ReportUploadProgressRequest(/, **data)#
Bases:
pydantic.BaseModelRequest payload for reporting file upload progress.
Used to notify the platform about the completion status of individual files within a batch upload transaction. This enables progress tracking and partial completion handling for large file uploads.
- Parameters:
data (Any)
- manifest_items: list[str]#
List of file URIs that have completed upload.
- class roboto.fs.RobotoCredentials(/, **data)#
Bases:
pydantic.BaseModelCredentials returned from the Roboto Platform
- Parameters:
data (Any)
- access_key_id: str#
- bucket: str#
- expiration: datetime.datetime#
- is_expired()#
- Return type:
bool
- region: str#
- required_prefix: str#
- secret_access_key: str#
- session_token: str#
- to_dict()#
- Return type:
dict[str, Any]
- to_object_store_credentials()#
- Return type: