StorageFolder Objects
uuid
UUID- The UUID of the folder.
parent_uuid
Optional[UUID]- The UUID of the parent folder, or None if there is no parent.
parent
Optional[StorageFolder]- The parent StorageFolder object, or None if there is no parent.
name
str- The name of the folder.
description
str- The description of the folder.
client_metadata
path_to_root
List[PathElement]- A list of PathElement objects representing the path to the root.
folder_type
StorageFolderType-CLOUD_LINKEDfor a cloud-synced folder,GENERICfor a regular folder (see also is_cloud_synced).
is_cloud_synced
bool-Trueif the folder is a cloud-synced (CLOUD_LINKED) folder,Falsefor a regular folder.
integration_hash
Optional[UUID]- The UUID of the cloud integration for a cloud-synced folder, orNonefor a regular folder.
remote_url
Optional[str]- The remote URL for a cloud-synced folder, orNonefor a regular folder.
list_items
searchOptional[str] - Search string to filter items by name.is_in_datasetOptional[bool] - Filter items by whether they are linked to any dataset.TrueandFalseselect only linked and only unlinked items, respectively.Noneincludes all items regardless of their dataset links.item_typesOptional[List[StorageItemType]] - Filter items by type.orderFoldersSortBy - Sort order. Defaults to FoldersSortBy.NAME.get_signed_urlsbool - Whether to get signed URLs for the items. Defaults to False.include_client_metadatabool - Optionally include client metadata into the result of this query. Defaults to True.resolve_client_metadata_locallybool - Has no effect unlessinclude_client_metadatais set. When true, the SDK downloads the metadata client-side instead of the server embedding it directly in the response. Use this to prevent server timeouts for projects with large client metadata.descbool - Sort in descending order. Defaults to False.page_sizeint - Number of items to return per page. Default if not specified is 100. Maximum value is 1000.
Iterable[StorageItem]- Iterable of items in the folder.
delete
upload_image
file_pathUnion[Path, str] - Path to the image file (e.g., ‘/home/user/data/image.png’).titleOptional[str] - The image title. If unspecified, this will be the file name.client_metadataOptional[Dict[str, Any]] - Optional arbitrary metadata to be associated with the image. Should be a dictionary that is JSON-serializable.cloud_upload_settingsCloudUploadSettings - Settings for uploading data into the cloud. Change this object to overwrite the default values.
UUID- The UUID of the newly created image item.
AuthorizationError- If the user is not authorized to access the folder.EncordException- If the image could not be uploaded, e.g., due to being in an unsupported format.
upload_video
file_pathUnion[Path, str] - Path to the video file (e.g., ‘/home/user/data/video.mp4’).titleOptional[str] - The video title. If unspecified, this will be the file name. This title should include an extension. For example, “encord_video.mp4”.client_metadataOptional[Dict[str, Any]] - Optional arbitrary metadata to be associated with the video. Should be a dictionary that is JSON-serializable.video_metadataOptional[CustomerProvidedVideoMetadata] - Optional media metadata for a video file; if provided, Encord service will skip frame synchronization checks and will use the values specified here to render the video in the label editor.cloud_upload_settingsCloudUploadSettings - Settings for uploading data into the cloud. Change this object to overwrite the default values.
UUID- The UUID of the newly created video item.
AuthorizationError- If the user is not authorized to access the folder.EncordException- If the video could not be uploaded, e.g., due to being in an unsupported format.
re_encode_videos
storage_itemsList[UUID] - List of UUIDs representing the video items to be re-encoded.process_titlestr - Title for the re-encoding process.force_full_reencodingbool - Flag to force full re-encoding.
UUID- The UUID of the re-encoding process.
get_re_encoding_status
process_hashUUID - The UUID of the re-encoding process.
ReencodeVideoItemsResponse- Response object containing the status of the re-encoding process.
create_dicom_series
file_pathsSequence[Union[str, Path]] - A list of paths to DICOM files, e.g., [‘/home/user/data/DICOM_1.dcm’, ‘/home/user/data/DICOM_2.dcm’].titleOptional[str] - The title of the DICOM series. If unspecified, this will be randomly generated. This title should NOT include an extension. For example, “encord_image_group”.client_metadataOptional[Dict[str, Any]] - Optional arbitrary metadata to be associated with the DICOM series. Should be a dictionary that is JSON-serializable.cloud_upload_settingsCloudUploadSettings - Settings for uploading data into the cloud. Change this object to overwrite the default values.
UUID- The UUID of the newly created DICOM series item.
AuthorizationError- If the user is not authorized to access the folder.EncordException- If the series could not be uploaded, e.g., due to being in an unsupported format.
create_image_group
file_pathsCollection[Union[Path, str]] - A list of paths to images, e.g., [‘/home/user/data/img1.png’, ‘/home/user/data/img2.png’].titleOptional[str] - The title of the image group. If unspecified, this will be randomly generated. This title should NOT include an extension. For example, “encord_image_group”.client_metadataOptional[Dict[str, Any]] - Optional arbitrary metadata to be associated with the image group. Should be a dictionary that is JSON-serializable.cloud_upload_settingsCloudUploadSettings - Settings for uploading data into the cloud. Change this object to overwrite the default values.
UUID- The UUID of the newly created image group item.
AuthorizationError- If the user is not authorized to access the folder.EncordException- If the images could not be uploaded, e.g., due to being in an unsupported format.
create_image_sequence
file_pathsCollection[Union[Path, str]] - A list of paths to images, e.g., [‘/home/user/data/img1.png’, ‘/home/user/data/img2.png’].titleOptional[str] - The title of the image sequence. If unspecified, this will be randomly generated. This title should NOT include an extension. For example, “front camera 2024-04-01”.client_metadataOptional[Dict[str, Any]] - Optional arbitrary metadata to be associated with the image sequence. Should be a dictionary that is JSON-serializable.cloud_upload_settingsCloudUploadSettings - Settings for uploading data into the cloud. Change this object to overwrite the default values.
UUID- The UUID of the newly created image sequence item.
AuthorizationError- If the user is not authorized to access the folder.EncordException- If the images could not be uploaded, e.g., due to being in an unsupported format.
upload_nifti
UUID- UUID of the uploaded NIfTI item.
AuthorizationError- If the user lacks permission to access the target folder.EncordException- If the file cannot be uploaded (for example due to format or metadata issues).
upload_audio
UUID- UUID of the uploaded audio item.
-
AuthorizationError- If the user is not authorized to access the destination folder. -
EncordException- If the upload fails (for example due to an unsupported audio format).audio_metadata
audio_metadata for audio files; if provided, frame synchronization checks are skipped.- duration: float - Audio duration in seconds.
- file_size: int - Size of the audio file in bytes.
- mime_type: str - MIME type of the audio file (for example:
audio/mpegoraudio/wav). - sample_rate: int - Sample rate (int) in Hz.
- bit_depth: int - Size of each sample (int) in bits.
- codec: str - Codec (for example: mp3, pcm).
- num_channels: int - Number of channels.
upload_time_series
file_path- Local time-series file to upload, commonly CSV.title- Optional item title. Defaults to the local file name.client_metadata- Optional JSON-serializable metadata.cloud_upload_settings- Retry settings for the file upload.settings- Optional initial channel visualization settings.
upload_text
file_path- File path of the text file. For example: ‘/home/user/data/report.txt’title- The item title. If unspecified, the file name is used as the title.client_metadata- Optional custom metadata to be associated with the text file. Should be a dictionary that is JSON-serializable.text_metadata- Optional media metadata for a text file. The Encord platform uses the specified values instead of scanning the files.cloud_upload_settings- Settings for uploading data into the cloud. Change this object to overwrite the default values.
-
AuthorizationError- If the user is not authorized to access the folder. -
EncordException- If the audio could not be uploaded. For example, due to being in an unsupported format.text_metadata
text_metadata for text files. The Encord platform uses the specified values instead of scanning the files.- file_size: int - Size of the text file in bytes.
- mime_type: str - MIME type of the text file (for example:
application/jsonortext/plain).
upload_pdf
file_path- File path of the PDF file. For example: ‘/home/user/data/report.pdf’title- The item title. If unspecified, the file name is used as the title.client_metadata- Optional custom metadata to be associated with the PDF file. Should be a dictionary that is JSON-serializable.pdf_metadata- Optional media metadata for a PDF file. The Encord platform uses the specified values instead of scanning the files.cloud_upload_settings- Settings for uploading data into the cloud. Change this object to overwrite the default values.
-
AuthorizationError- If the user is not authorized to access the folder. -
EncordException- If the document could not be uploaded. For example, due to being in an unsupported format.pdf_metadata
pdf_metadata for PDF files. The Encord platform uses the specified values instead of scanning the files.- file_size: int - Size of the PDF file in bytes.
- num_pages: int - Number of pages in the PDF file.
upload_scene_file
file_path- Path to the local scene file.title- Optional item title. Defaults to the local file name.client_metadata- Optional JSON-serializable metadata to associate with the scene.cloud_upload_settings- Retry settings for the file upload.
EncordException- If the scene format is unsupported or the upload cannot be completed.
upload_scene
scene- Scene builder containing the streams and events to upload.title- The scene item title.integration_id- UUID of the cloud storage integration that can access the scene asset URIs.client_metadata- Optional custom metadata to associate with the scene item.
EncordException- If the scene could not be registered.
add_private_data_to_folder_start
integration_idstr - The integration ID for the folder. private_files (Union[str, Dict, Path, TextIO, DataUploadItems]): The specification of private files to be added. Can be either a JSON in Encord upload format (see the relevant documentation), or an DataUploadItems object.ignore_errorsbool - If True, errors will be ignored during the upload process.
UUID- The UUID of the upload job.
sync_private_data_with_cloud_synced_folder_start
- Scans the cloud bucket for files
- Creates new storage items for files that exist in the bucket but not in the folder
- Updates the tombstone status of items (marks as tombstone if deleted from bucket, restores if re-added)
- Updates items if they have the same path but different content (different checksum)
UUID- The unique identifier for the sync job that can be used withsync_private_data_with_cloud_synced_folder_get_resultto poll for results.
InvalidArgumentsError- If the folder is not a cloud-synced folder, or if there are permission issues with the cloud storage bucket.
sync_private_data_with_cloud_synced_folder_get_result
sync_private_data_with_cloud_synced_folder_start(). It uses long polling to efficiently
wait for job completion without constantly making API requests. The method returns once
the job completes or the timeout is reached.
Arguments:
sync_job_uuidUUID - The UUID of the synchronization job to poll for results.timeout_secondsint - Maximum time in seconds to wait for the job to complete. Default is 7 days (604800 seconds).
SyncPrivateDataWithCloudSyncedFolderGetResultResponse- An object containing the results of the synchronization job.
InvalidArgumentsError- If the synchronization job UUID does not exist or is not associated with this folder.
get_folder_config
metadata_ingestion), which is None unless metadata ingestion has
been enabled on the folder.
Returns:
StorageFolderConfig- The current configuration of the folder.
enable_metadata_ingestion
metadata_ingestion and writes it
back. Any configuration the SDK does not model is preserved.
Arguments:
matcherOptional[SidecarMatcherSuffix] - How to identify metadata sidecar files. Defaults to a.metadata.jsonsuffix matcher.pausedbool - WhenTrue, matched files are claimed as sidecars but not attached to data files. Defaults toFalse.
add_private_data_to_folder_get_result
upload_job_idUUID - The UUID of the upload job.timeout_secondsint - The timeout in seconds for the upload job.
UploadLongPollingState- The state of the upload job.
list_subfolders
searchOptional[str] - Search string to filter folders by name.dataset_syncedOptional[bool] - Include or exclude folders that are mirrored by a dataset. IfNone, no filtering is applied.organisation_tags_allofOptional[Union[List[str], List[OrganisationTag]]] - Optional organisation-tag filter; matches only folders tagged with all of the given tags. Accepts either tag name strings or OrganisationTag instances (as returned by list_organisation_tags()). Tag names are matched exactly and are case-sensitive. The whole filter is a conjunction, so every name must resolve: if any string name is unknown, no folders are listed and a ResourceNotFoundError naming every unknown tag is raised before the folders are listed.orderFoldersSortBy - Sort order for the folders. See FoldersSortBy for available options.descbool - If True, sort in descending order.page_sizeint - Number of folders to return per page. Default if not specified is 100. Maximum value is 1000.
Iterable[StorageFolder]- An iterable of StorageFolder objects.
ResourceNotFoundError- One or moreorganisation_tags_allofnames do not match any organization tag. The error lists every unknown name.
find_subfolders
searchOptional[str] - Search string to filter folders by name.dataset_syncedOptional[bool] - Include or exclude folders that are mirrored by a dataset. IfNone, no filtering is applied.organisation_tags_allofOptional[Union[List[str], List[OrganisationTag]]] - Optional organisation-tag filter; matches only folders tagged with all of the given tags. Accepts either tag name strings or OrganisationTag instances (as returned by list_organisation_tags()). Tag names are matched exactly and are case-sensitive. The whole filter is a conjunction, so every name must resolve: if any string name is unknown, no folders are listed and a ResourceNotFoundError naming every unknown tag is raised before the folders are listed.orderFoldersSortBy - Sort order for the folders. See FoldersSortBy for available options.descbool - If True, sort in descending order.page_sizeint - Number of folders to return per page. Default if not specified is 100. Maximum value is 1000.
Iterable[StorageFolder]- An iterable of StorageFolder objects.
ResourceNotFoundError- One or moreorganisation_tags_allofnames do not match any organization tag. The error lists every unknown name.
create_subfolder
name- The name of the folder.description- The description of the folder.client_metadata- Optional arbitrary metadata to be associated with the folder. Should be a dictionary that is JSON-serializable.
find_items
storage_folder.list_items instead.
Arguments:
searchOptional[str] - Search string to filter items by name.is_in_datasetOptional[bool] - Filter items by whether they are linked to any dataset.TrueandFalseselect only linked and only unlinked items, respectively.Noneincludes all items regardless of their dataset links.item_typesOptional[List[StorageItemType]] - Filter items by type.orderFoldersSortBy - Sort order.descbool - Sort in descending order.get_signed_urlsbool - If True, return signed URLs for the items.page_sizeint - Number of items to return per page. Default if not specified is 100. Maximum value is 1000.
Iterable[StorageItem]- An iterable of items in the folder and its subfolders.
ValueError- If neithersearchnoritem_typesare provided.
get_summary
StorageFolderSummary- A summary of the folder.
update
nameOptional[str] - New folder name.descriptionOptional[str] - New folder description.client_metadataOptional[Dict[str, Any]] - New client metadata.bundleOptional[Bundle] - Optional Bundle to use for the operation. If provided, the operation is bundled into a single server call with other item updates using the same bundle.
move_to_folder
target_folder is None.
Arguments:
target_folderOptional[Union[StorageFolder, UUID]] - The target folder to move to, orNoneto move to the root level.
create_data_group
params- Parameters for the data group. Can be:- DataGroupInput (DataGroupGrid, DataGroupCarousel, DataGroupCustom): Layout with optional client_metadata
- List[UUID]: List of item UUIDs (creates a carousel layout)
UUID- The UUID of the data group storage item.
create_data_groups
params- List of parameters for each data group. Each item can be:- DataGroupInput (DataGroupGrid, DataGroupCarousel, DataGroupCustom): Layout with optional client_metadata
- List[UUID]: List of item UUIDs (creates a carousel layout)
List[UUID]- List of UUIDs of the created data group storage items
move_items_to_folder
StorageItem objects or UUIDs) to another folder (specify folder object or UUID).
Arguments:
target_folderUnion[StorageFolder, UUID] - Target folder to move items to.items_to_moveSequence[Union[UUID, StorageItem]] - List of items to move. All the items should be immediate children of the current folder.allow_mirror_dataset_changesbool - IfTrue, allow moving items that are linked to a mirror dataset. By default, moving such items is prohibited, as it would result in data units being removed from a dataset, potentially deleting related annotations and other data.
delete_storage_items
item_uuidsList[UUID] - List of UUIDs of items to delete. All the items should be immediate children of the current folder.remove_unused_framesbool - IfTrue(default), remove individual images or DICOM files from image groups or DICOM series that are not used in any other item.
list_groups
add_group
group_hash- Group hash, or a list of group hashes to be added.user_role- User role that the group will be given.
remove_group
group_hash- Group hash, or a list of group hashes to be removed.
refetch_data
add_data_to_folder_job_cancel
upload_job_idUUID - The unique identifier for the upload job.
AddDataToFolderJobCancelResponse- A response indicating the result of the canceled job.
StorageItemInaccessible Objects
uuid
ClientMetadataPatchJobs Objects
item_uuids_by_job_uuid
The items each job patches; check a job with get_client_metadata_patch_job().ClientMetadataPatchJobsByUrl Objects
item_uuids_by_url
The items found for each object URL; empty for a URL that matches no item.ClientMetadataPatchByUrlResult Objects
item_uuids_by_url
The items found for each object URL; empty for a URL that matches no item.failures
The patches that could not be confirmed as applied, with the reason where available.StorageItem Objects
uuid
parent_folder_uuid
parent_folder
StorageFolder- The parent folder.
item_type
name
description
client_metadata
timeseries_settings
created_at
last_edited_at
backed_data_units_count
storage_location
integration_hash
url
file_size
mime_type
duration
fps
height
width
dicom_instance_uid
dicom_study_uid
dicom_series_uid
frame_count
audio_sample_rate
audio_bit_depth
audio_codec
audio_num_channels
get_signed_url
None for composite items that have no single file URL:
- For scenes, use SceneReader to get signed URLs for all constituent files.
- For image groups and DICOM series, use get_child_items() to get signed URLs for individual frames.
refetch- IfTrue, forces fetching a new signed URL even if one is cached.
Optional[str]- Signed URL for downloading the item, orNonefor composite items.
get_summary
StorageItemSummary- Object containing summary information about the item.
get_child_items
get_signed_urls- IfTrue, include signed URLs for child items.
Iterable[StorageItem]- List of child items accessible to the user.
update
name- New item name.description- New item description.client_metadata- New client metadata.timeseries_settings- New time-series channel visualization settings. Pass None to restore defaults; omit to leave the existing settings unchanged.bundle- Optional Bundle to use for the operation. If provided, the operationscene_view_settings- New scene visualization settings. Pass None to restore defaults; omit to leave the existing settings unchanged.scene_layout- New scene tile and timeline layout. Pass None to remove the layout; omit to leave the existing layout unchanged.
bundle is provided, the operation is bundled into a single server call with other item updates
using the same bundle.
patch_client_metadata
patch is applied as an RFC 7396 JSON merge patch:
- A key with a value adds the key, or replaces its current value.
- A key with
Noneremoves the key. - A dict value is merged into the current dict value by the same rules.
- Any other value, including a list, replaces the current value as a whole.
patch are left unchanged.
After the call, client_metadata holds the merged metadata; a patch refused with one of the errors
below changes nothing. To replace the whole client metadata, use update() instead.
For example, the patch below sets reviewed, sets camera.fps while keeping the other camera keys,
and removes draft.
Example:
patch- The keys to add, change or remove.
AuthorisationError- The item does not exist or you cannot edit it.InvalidArgumentsError- The patch can’t be applied, for example because the item is in a cloud synced folder or the merged metadata would be too large.ResourceExistsError- Other changes to the item’s client metadata kept conflicting with the patch (retry), or its current client metadata can’t be read (replace it with update()).
delete
remove_unused_frames- IfTrue(default), remove individual images or DICOM files not used elsewhere.
move_to_folder
target_folder- Target folder to move the item to. Can be aStorageFolderobject or a UUID.allow_mirror_dataset_changes- IfTrue, allows moving items linked to a mirror dataset. Default isFalse, which prohibits such moves to prevent data loss.
refetch_data
get_signed_url- IfTrue, refetches the signed URL for downloading the item.

