StorageFolder
class encord.storage.StorageFolder(api_client, orm_folder)
Initializes a StorageFolder
instance.
Parameters:
api_client
(ApiClient
): The API client used to interact with the backend.orm_folder
(orm_storage.StorageFolder
): The ORM model of the storage folder.
property uuid: UUID
Gets the unique identifier (UUID) of the folder.
Return Type:
UUID
property parent_uuid: Optional[UUID]
Gets the UUID of the parent folder, if any.
Return Type:
Optional[UUID]
property parent: Optional[StorageFolder]
Gets the parent folder as a StorageFolder
object, if any.
**Return Type:**
Optional[StorageFolder]
property name: str
Gets the name of the folder.
Return Type:
str
property description: str
Gets the description of the folder.
Return Type:
str
property client_metadata: Optional[Dict[str, Any]]
Gets the parsed client metadata of the folder if available.
Return Type:
Optional[Dict[str, Any]]
list_items
list_items(search, is_in_dataset, item_types, order)
Lists all in the folder.
Parameters:
- search (Optional[str]): Search string to filter items by name.
- is_in_dataset (Optional[bool]): Filter items by whether they are linked to any Dataset.
- item_types (Optional[List[StorageItemType]]): Filter items by type.
- order (orm_storage.FoldersSortBy): Sort order.
- get_signed_urls (bool): If True, signed URLs for all items are returned.
- desc (bool): If True, items are sorted in descending order.
- page_size (int): Number of items returned per page.
Return type:
IterableStorageItem
Returns:
An iterable of all Storage items in the folder.
delete
delete()
Deletes the folder.
upload_image
upload_image(file_path, title, client_metadata, cloud_upload_settings)
Uploads an image to the folder.
Parameters:
- file_path (Union[Path, str]): Path to the image file.
- title (Optional[str]): The title of the image.
- client_metadata (Optional[Dict[str, Any]]): Custom metadata you can supply for the image.
- cloud_upload_settings (CloudUploadSettings): Settings for cloud upload.
Return type:
UUID
Returns:
The UUID of the newly created image item.
Raises:
AuthorizationError
: If the user is not authorized to access the folder.EncordException
: If the image could not be uploaded.
upload_video
upload_video(file_path, title, client_metadata, video_metadata, cloud_upload_settings)
Uploads a video file to a folder in Encord Storage.
Parameters:
- file_path (Union[Path, str]): Path to the video file (e.g., '/home/user/data/video.mp4').
- title (Optional[str]): Optional title for the video. If not specified, the file name is used as the title.
- client_metadata (Optional[Dict[str, Any]]): Custom metadata you can supply for the video.
- video_metadata (Optional[CustomerProvidedVideoMetadata]): video_metadata for video files; if provided, frame synchronization checks are skipped.
- cloud_upload_settings (CloudUploadSettings): Settings for uploading data into the cloud.
Return Type:
UUID
Returns:
The UUID of the newly created video item.
Raises:
AuthorizationError
: If the user lacks authorization to access the folder.EncordException
: If the video could not be uploaded, e.g., due to an unsupported format.
create_dicom_series
create_dicom_series(file_paths, title, client_metadata, cloud_upload_settings)
Uploads a series of DICOM files to a folder in Encord storage.
Parameters:
- file_paths (List[str]): A list of paths to the DICOM files.
- title (Optional[str]): Optional title for the DICOM series. If not specified, a title is randomly generated.
- client_metadata (Optional[Dict[str, Any]]): Custom metadata you can supply for the DICOM series.
- cloud_upload_settings (CloudUploadSettings): Settings for uploading data into the cloud.
Returns:
The UUID of the newly created DICOM series item.
Return type:
UUID
Raises:
AuthorizationError
: If the user lacks authorization to access the folder.EncordException
: If the DICOM series could not be uploaded, e.g., due to an unsupported format.
create_image_group
create_image_group(file_paths, title, client_metadata, cloud_upload_settings)
Creates an image group in Encord storage, used for non-sequential images that are logically connected.
Parameters:
- file_paths (List[str]): List of paths to images.
- title (Optional[str]): Optional title for the image group. If not specified, a title is randomly generated.
- client_metadata (Optional[Dict[str, Any]]): Custom metadata you can supply for the image sequence.
- cloud_upload_settings (CloudUploadSettings): Settings for uploading data into the cloud.
Returns:
The UUID of the newly created image group item.
Return type:
UUID
Raises:
AuthorizationError
: If the user lacks authorization to access the folder.EncordException
: If the images could not be uploaded, e.g., due to an unsupported format.
create_image_sequence
create_image_sequence(file_paths, title, client_metadata, cloud_upload_settings)
Creates an image sequence in Encord storage, used for sequential images.
Parameters:
- file_paths (List[str]): List of paths to images.
- title (Optional[str]): Optional title for the image sequence. If not specified, a title is randomly generated.
- client_metadata (Optional[Dict[str, Any]]): Custom metadata you can supply for the image sequence.
- cloud_upload_settings (CloudUploadSettings): Settings for uploading data into the cloud.
Returns:
The UUID of the newly created image sequence item.
Return type:
UUID
Raises:
AuthorizationError
: If the user lacks authorization to access the folder.EncordException
: If the images could not be uploaded, e.g., due to an unsupported format.
Here are the SDK reference entries for the methods you provided in the style of the initial example:
add_private_data_to_folder_start
add_private_data_to_folder_start(integration_id, private_files, ignore_errors)
Starts the process of adding private cloud data to a folder in Encord storage.
Parameters:
- integration_id (str): Identifier for the integration under which the data is being uploaded.
- private_files (Union[str, Dict, Path, TextIO]): The private files to be uploaded. This can be a path, a dictionary of file data, or a text stream.
- ignore_errors (bool, optional): If True, continues processing when errors are encountered. Default value is
False
.
Returns:
The UUID of the upload job.
Return Type:
UUID
add_private_data_to_folder_get_result
add_private_data_to_folder_get_result(upload_job_id, timeout_seconds)
Retrieves the result of an upload job to add private data to a folder.
Parameters:
- upload_job_id (UUID): The UUID of the upload job.
- timeout_seconds (int, optional): The maximum time in seconds to wait for the upload job to complete. Defaults to 604800 seconds (7 days).
Returns:
The state of the upload job, which includes status and any errors encountered.
Return type:
orm_storage.UploadLongPollingState
list_subfolders
list_subfolders(search, dataset_synced, order, desc, page_size)
Lists the subfolders of the current folder.
Parameters:
- search (Optional[str], optional): Search string to filter folders by name.
- dataset_synced (Optional[bool], optional): Filter folders based on whether they are synced with a dataset.
- order (FoldersSortBy): Order in which to sort the folders. Defaults to
FoldersSortBy.NAME
. - desc (optional bool): If True, items are sorted in descending order.
- page_size (int, optional): Number of folders to return per page. Defaults to 100.
Returns:
An iterable of StorageFolder
objects.
Return type:
Iterable[StorageFolder]
get_summary
get_summary()
Gets a summary of the folder.
Returns:
A summary of the folder, including total size, number of items, and other relevant information.
Return type:
StorageFolderSummary
update
update()
Updates the properties of the folder.
Parameters:
- name (Optional[str], optional): The new name of the folder.
- description (Optional[str], optional): The new description of the folder.
- client_metadata (Optional[Dict[str, Any]], optional): New metadata to associate with the folder.
move_to_folder
move_to_folder(target_folder)
Moves the folder to another folder, or to the root level.
Parameters:
- target_folder (Optional[Union["StorageFolder", UUID]], optional): The target folder or its UUID. If None, the folder is moved to the root level.
move_items_to_folder
move_items_to_folder(target_folder, items_to_move)
Moves items to another folder.
Parameters:
- target_folder (Union["StorageFolder", UUID]): The target folder or its UUID.
- items_to_move (List[Union[UUID, "StorageItem"]]): List of items to move, specified by their UUIDs or StorageItem objects.
delete_storage_items
delete_storage_items(item_uuids, remove_unused_frames)
Deletes specified items from the folder.
Parameters:
- item_uuids (List[UUID]): List of UUIDs of the items to delete.
- remove_unused_frames (bool, optional): If True unused frames associated with deleted items are also removed. Defaults to True.
refetch_data
refetch_data()
Refetches the data for the folder from Encord storage.