### Get Individual Project Source: https://frameio.github.io/python-frameio-client/classes/projects.html Retrieves details for a specific project by its ID. ```python client.project.get( project_id="123" ) ``` -------------------------------- ### Get Project Collaborators Source: https://frameio.github.io/python-frameio-client/classes/projects.html Lists all collaborators associated with a project. ```python client.projects.get_collaborators( project_id="123" ) ``` -------------------------------- ### Get Pending Project Collaborators Source: https://frameio.github.io/python-frameio-client/classes/projects.html Lists collaborators who have been invited but have not yet accepted. ```python client.projects.get_pending_collaborators( project_id="123" ) ``` -------------------------------- ### GET /assets/{asset_id} Source: https://frameio.github.io/python-frameio-client/classes/assets.html Retrieves details for a specific asset by its ID. ```APIDOC ## GET /assets/{asset_id} ### Description Get an asset by id. ### Parameters #### Path Parameters - **asset_id** (Union[str, UUID]) - Required - The asset id. ### Request Example ``` client.assets.get( asset_id='1231-12414-afasfaf-aklsajflaksjfla', ) ``` ``` -------------------------------- ### GET /auditlogs Source: https://frameio.github.io/python-frameio-client/classes/logs.html Retrieves audit logs for a specified account. ```APIDOC ## GET /auditlogs ### Description Get audit logs for the currently authenticated account. ### Method GET ### Endpoint /auditlogs ### Parameters #### Query Parameters - **account_id** (Union[str, UUID]) - Required - Account ID you want to get audit logs for. ### Request Example ```python client.logs.list( account_id="6bdcb4d9-9a2e-a765-4548-ae6b27a6c024" ) ``` ### Response #### Success Response (200) - **audit_logs** (list) - A list of audit log entries. #### Response Example ```json { "audit_logs": [ { "id": "log_id_1", "timestamp": "2023-10-27T10:00:00Z", "user": "user@example.com", "action": "file_uploaded", "target": "file_name.mp4" }, { "id": "log_id_2", "timestamp": "2023-10-27T10:05:00Z", "user": "user@example.com", "action": "comment_added", "target": "file_name.mp4" } ] } ``` ``` -------------------------------- ### Get Review Link Assets Source: https://frameio.github.io/python-frameio-client/classes/sharing.html Retrieve the assets associated with a specific review link using its ID. ```python client.review_links.get_assets( link_id="123" ) ``` -------------------------------- ### Get Asset by ID Source: https://frameio.github.io/python-frameio-client/classes/assets.html Retrieves a specific asset using its unique ID. This is useful for fetching asset details. ```python client.assets.get( asset_id='1231-12414-afasfaf-aklsajflaksjfla', ) ``` -------------------------------- ### Get Folder Children Source: https://frameio.github.io/python-frameio-client/classes/assets.html Retrieves the children of a specified folder asset. You can include related data like review links, cover assets, creators, and presentations. ```python client.assets.get_children( asset_id='1231-12414-afasfaf-aklsajflaksjfla', include=['review_links','cover_asset','creator','presentation'] ) ``` -------------------------------- ### Download Project Source: https://frameio.github.io/python-frameio-client/classes/projects.html Downloads the contents of a project to a specified local directory. ```python client.projects.download( project_id="123", destination_directory="./downloads" ) ``` -------------------------------- ### Create a Project Source: https://frameio.github.io/python-frameio-client/classes/projects.html Creates a new project within a specified team. ```python client.projects.create( team_id="123", name="My Awesome Project" ) ``` -------------------------------- ### Create Asset from URL Source: https://frameio.github.io/python-frameio-client/classes/assets.html Creates a new asset by downloading content from a provided URL. Specify the parent asset ID, filename, and the remote URL. ```python client.assets.from_url( parent_asset_id="123abc", name="ExampleFile.mp4", type="file", url="https://" ) ``` -------------------------------- ### FrameioHelpers Methods Source: https://frameio.github.io/python-frameio-client/genindex.html Helper methods for common operations like building project trees and downloading/uploading recursively. ```APIDOC ## autoconfigure() ### Description Automatically configures the Frame.io client. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## build_project_tree() ### Description Builds a hierarchical representation of a project's structure. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## download_project() ### Description Downloads an entire project, likely using recursive methods. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## get_assets_recursively() ### Description Retrieves all assets within a project recursively. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## get_updated_assets() ### Description Retrieves assets that have been updated. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## load_config() ### Description Loads configuration settings for the client. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## recursive_downloader() ### Description Downloads assets recursively. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## save_config() ### Description Saves the current configuration settings. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ``` -------------------------------- ### Utils Static Methods Source: https://frameio.github.io/python-frameio-client/genindex.html Utility methods for various tasks like hashing, formatting, and streaming. ```APIDOC ## calculate_hash() ### Description Calculates the hash of a given input. ### Method (Not specified, static) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## compare_items() ### Description Compares two items, likely for sorting or equality checks. ### Method (Not specified, static) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## format_headers() ### Description Formats headers for API requests or responses. ### Method (Not specified, static) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## format_value() ### Description Formats a value for display or storage. ### Method (Not specified, static) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## get_valid_filename() ### Description Ensures a filename is valid for the file system. ### Method (Not specified, static) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## normalize_filename() ### Description Normalizes a filename, potentially for cross-platform compatibility. ### Method (Not specified, static) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## stream() ### Description Streams data, likely for large file transfers. ### Method (Not specified, static) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ``` -------------------------------- ### Create Folder Source: https://frameio.github.io/python-frameio-client/classes/assets.html Creates a new folder within a specified parent asset. Provide the parent asset ID and the desired name for the new folder. ```python client.assets.create_folder( parent_asset_id="123abc", name="ExampleFile.mp4", ) ``` -------------------------------- ### FrameioDownloader Utility Methods Source: https://frameio.github.io/python-frameio-client/modules/downloader.html Helper methods for managing asset paths, checksums, and download keys. ```APIDOC ## FrameioDownloader Utility Methods ### Methods - **_create_file_stub()**: Creates a file stub for the asset. - **_evaluate_asset()**: Evaluates the asset properties. - **_get_checksum()**: Retrieves the checksum for the asset. - **_get_path()**: Retrieves the path for the asset. - **get_download_key()**: Retrieves the download key for the asset. - **get_path()**: Retrieves the path for the asset. ``` -------------------------------- ### Create Presentation Link Source: https://frameio.github.io/python-frameio-client/classes/sharing.html Use this method to create a new presentation link for a given asset. You can optionally set a title and password for the link. ```python client.presentation_links.create( asset_id="9cee7966-4066-b326-7db1-f9e6f5e929e4", title="My fresh presentation", password="abc123" ) ``` -------------------------------- ### Fetch Project Tree Source: https://frameio.github.io/python-frameio-client/classes/projects.html Retrieves a hierarchical representation of files and folders within a project. ```python client.projects.get( project_id="123", slim=True ) ``` -------------------------------- ### Create a Team Source: https://frameio.github.io/python-frameio-client/classes/teams.html Creates a new team under a specified account ID with optional parameters. ```python client.teams.create( account_id="6bdcb4d9-4548-4548-4548-27a6c024ae6b", name="My Awesome Project", ) ``` -------------------------------- ### Create Review Link Source: https://frameio.github.io/python-frameio-client/classes/sharing.html Use this method to create a new review link for a project. You can specify a name and password for the link. ```python client.review_links.create( project_id="123", name="My Review Link", password="abc123" ) ``` -------------------------------- ### Utils Module Source: https://frameio.github.io/python-frameio-client/index.html General utility functions for file handling, hashing, and data formatting. ```APIDOC ## Utils Class ### Description Contains various utility functions. ### Methods #### `Utils.calculate_hash()` ##### Description Calculates the hash of a file or data. ##### Method N/A (Utility function) #### `Utils.compare_items()` ##### Description Compares two items. ##### Method N/A (Utility function) #### `Utils.format_headers()` ##### Description Formats data into HTTP headers. ##### Method N/A (Utility function) #### `Utils.format_value()` ##### Description Formats a value for display or processing. ##### Method N/A (Utility function) #### `Utils.get_valid_filename()` ##### Description Ensures a filename is valid and safe for the file system. ##### Method N/A (Utility function) #### `Utils.normalize_filename()` ##### Description Normalizes a filename to a consistent format. ##### Method N/A (Utility function) #### `Utils.stream()` ##### Description Provides a streaming interface for data. ##### Method N/A (Utility function) ``` -------------------------------- ### FrameioHelpers Module Source: https://frameio.github.io/python-frameio-client/modules/index.html Documentation for the FrameioHelpers class, offering utility functions for managing Frame.io projects. ```APIDOC ## FrameioHelpers Class ### Description Contains helper functions for interacting with Frame.io projects. ### Methods #### `FrameioHelpers.autoconfigure()` ##### Description Automatically configures the SDK based on environment or provided settings. #### `FrameioHelpers.build_project_tree()` ##### Description Constructs a local representation of the Frame.io project structure. #### `FrameioHelpers.download_project()` ##### Description Downloads the entire project structure from Frame.io. #### `FrameioHelpers.get_assets_recursively()` ##### Description Retrieves all assets within a project recursively. #### `FrameioHelpers.get_updated_assets()` ##### Description Fetches assets that have been updated since a specified time. #### `FrameioHelpers.load_config()` ##### Description Loads configuration settings from a file. #### `FrameioHelpers.recursive_downloader()` ##### Description Performs a recursive download of assets. #### `FrameioHelpers.save_config()` ##### Description Saves current configuration settings to a file. ``` -------------------------------- ### FrameioDownloader.download Source: https://frameio.github.io/python-frameio-client/modules/downloader.html Executes the download process for a specified asset. ```APIDOC ## FrameioDownloader.download() ### Description Call this method to perform the actual download of your asset. ### Parameters - **asset** (object) - Required - The asset to be downloaded. - **download_folder** (string) - Required - The destination folder for the download. - **prefix** (string) - Required - Prefix for the downloaded file. - **multi_part** (boolean) - Optional - Whether to use multi-part download (default: False). - **replace** (boolean) - Optional - Whether to replace existing files (default: False). ``` -------------------------------- ### FrameioHelpers Module Source: https://frameio.github.io/python-frameio-client/index.html Helper functions for common Frame.io operations like configuration, project tree building, and asset retrieval. ```APIDOC ## FrameioHelpers Class ### Description Provides utility functions for various Frame.io operations. ### Methods #### `FrameioHelpers.autoconfigure()` ##### Description Automatically configures the SDK based on environment variables or default settings. ##### Method N/A (Utility function) #### `FrameioHelpers.build_project_tree()` ##### Description Constructs a hierarchical representation of a project's assets. ##### Method N/A (Utility function) #### `FrameioHelpers.download_project()` ##### Description Downloads all assets within a specified project. ##### Method N/A (Utility function) #### `FrameioHelpers.get_assets_recursively()` ##### Description Retrieves all assets within a project or folder recursively. ##### Method N/A (Utility function) #### `FrameioHelpers.get_updated_assets()` ##### Description Fetches assets that have been updated since a specific point in time. ##### Method N/A (Utility function) #### `FrameioHelpers.load_config()` ##### Description Loads configuration settings for the SDK. ##### Method N/A (Utility function) #### `FrameioHelpers.recursive_downloader()` ##### Description A recursive function to download assets. ##### Method N/A (Utility function) #### `FrameioHelpers.save_config()` ##### Description Saves configuration settings for the SDK. ##### Method N/A (Utility function) ``` -------------------------------- ### Asset API Methods Source: https://frameio.github.io/python-frameio-client/classes/index.html Methods for managing assets, including creation, deletion, uploading, and downloading. ```APIDOC ## Asset Methods - Asset.add_version() - Asset.bulk_copy() - Asset.copy() - Asset.create() - Asset.create_folder() - Asset.delete() - Asset.download() - Asset.from_url() - Asset.get() - Asset.get_children() - Asset.update() - Asset.upload() - Asset.upload_folder() ``` -------------------------------- ### Asset Methods Source: https://frameio.github.io/python-frameio-client/genindex.html Methods for interacting with assets, including creation, retrieval, and modification. ```APIDOC ## add_version() ### Description Adds a new version to an existing asset. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## bulk_copy() ### Description Performs a bulk copy operation for multiple assets. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## copy() ### Description Copies a single asset. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## create() ### Description Creates a new asset. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## create_folder() ### Description Creates a new folder within an asset hierarchy. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## delete() ### Description Deletes an asset. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## from_url() ### Description Creates an asset from a given URL. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## get() ### Description Retrieves details of a specific asset. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## get_children() ### Description Retrieves all child assets of a given asset. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## update() ### Description Updates an existing asset. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## upload() ### Description Uploads a file to be associated with an asset. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## upload_folder() ### Description Uploads the contents of a folder as an asset. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ``` -------------------------------- ### Project Management Methods Source: https://frameio.github.io/python-frameio-client/classes/projects.html Methods for creating, retrieving, and managing project resources and collaborators. ```APIDOC ## POST /projects/add_collaborator ### Description Adds a collaborator to a specific project using their email address. ### Parameters #### Path Parameters - **project_id** (Union[str, UUID]) - Required - The project id - **email** (str) - Required - Email user’s e-mail address ### Request Example client.projects.add_collaborator(project_id="123", email="janedoe@frame.io") ## POST /projects/create ### Description Creates a new project within a specified team. ### Parameters #### Request Body - **team_id** (Union[str, UUID]) - Required - The team id - **kwargs** (dict) - Optional - Additional request parameters ### Request Example client.projects.create(team_id="123", name="My Awesome Project") ## GET /projects/download ### Description Downloads the contents of a project to a local directory. ### Parameters #### Query Parameters - **project_id** (Union[str, UUID]) - Required - The project’s id - **destination_directory** (str) - Optional - Directory on disk to download the project to ### Request Example client.projects.download(project_id="123", destination_directory="./downloads") ## GET /projects/get ### Description Retrieves details for an individual project. ### Parameters #### Path Parameters - **project_id** (Union[str, UUID]) - Required - The project’s id ### Request Example client.project.get(project_id="123") ## GET /projects/get_collaborators ### Description Fetches the list of collaborators for a project. ### Parameters #### Path Parameters - **project_id** (Union[str, UUID]) - Required - The project’s id ### Request Example client.projects.get_collaborators(project_id="123") ## DELETE /projects/remove_collaborator ### Description Removes a collaborator from a project. ### Parameters #### Path Parameters - **project_id** (Union[str, UUID]) - Required - The Project ID - **email** (str) - Required - The user’s e-mail address ### Request Example client.projects.remove_collaborator(project_id="123", email="janedoe@frame.io") ## GET /projects/tree ### Description Fetches a tree representation of all files and folders in a project. ### Parameters #### Path Parameters - **project_id** (Union[str, UUID]) - Required - The project’s id #### Query Parameters - **slim** (bool) - Optional - If true, fetch only minimum information ### Request Example client.projects.get(project_id="123", slim=True) ``` -------------------------------- ### Upload an asset to a project or folder Source: https://frameio.github.io/python-frameio-client/classes/assets.html Uploads a local file to a specified destination ID, which can be a project or folder. ```python client.assets.upload("./file.mov", "1231-12414-afasfaf-aklsajflaksjfla") ``` -------------------------------- ### FrameioDownloader Module Source: https://frameio.github.io/python-frameio-client/modules/index.html Documentation for the FrameioDownloader class, which handles downloading assets from Frame.io. ```APIDOC ## FrameioDownloader Class ### Description Provides functionality to download assets from Frame.io. ### Methods #### `FrameioDownloader._create_file_stub()` ##### Description Internal method to create a file stub. #### `FrameioDownloader._evaluate_asset()` ##### Description Internal method to evaluate an asset for download. #### `FrameioDownloader._get_checksum()` ##### Description Internal method to get the checksum of an asset. #### `FrameioDownloader._get_path()` ##### Description Internal method to determine the local path for an asset. #### `FrameioDownloader.download()` ##### Description Initiates the download of a specified asset. #### `FrameioDownloader.get_download_key()` ##### Description Retrieves a secure download key for an asset. #### `FrameioDownloader.get_path()` ##### Description Returns the local path where an asset will be or has been downloaded. ``` -------------------------------- ### POST /assets/create Source: https://frameio.github.io/python-frameio-client/classes/assets.html Creates a new asset (file or folder) within a parent asset. ```APIDOC ## POST /assets/create ### Description Create an asset. ### Parameters #### Request Body - **parent_asset_id** (Union[str, UUID]) - Required - The parent asset id. - **name** (str) - Required - The asset’s display name. - **type** (str) - Optional - The type of asset (‘file’, ‘folder’). - **filesize** (int) - Optional - The size of the asset in bytes. - **filetype** (str) - Optional - The MIME-type of the asset. ### Request Example ``` client.assets.create( parent_asset_id="123abc", name="ExampleFile.mp4", type="file", filetype="video/mp4", filesize=123456 ) ``` ``` -------------------------------- ### FrameioDownloader Module Source: https://frameio.github.io/python-frameio-client/index.html Utilities for downloading assets and project content from Frame.io. ```APIDOC ## FrameioDownloader Class ### Description Handles the downloading of assets and project structures. ### Methods #### `FrameioDownloader.download()` ##### Description Initiates the download process for specified assets or projects. ##### Method POST ##### Endpoint `/api/v2/download` (Conceptual endpoint, actual implementation might differ) #### `FrameioDownloader.get_download_key()` ##### Description Retrieves a download key for an asset. ##### Method GET ##### Endpoint `/api/v2/assets/{asset_id}/download_key` #### `FrameioDownloader.get_path()` ##### Description Determines the local path for a downloaded asset. ##### Method GET ##### Endpoint N/A (Internal method) ``` -------------------------------- ### Utils Module Source: https://frameio.github.io/python-frameio-client/modules/index.html Documentation for the Utils class, providing various utility functions for the SDK. ```APIDOC ## Utils Class ### Description Provides general utility functions used throughout the SDK. ### Methods #### `Utils.calculate_hash()` ##### Description Calculates the hash of a given input. #### `Utils.compare_items()` ##### Description Compares two items for equality. #### `Utils.format_headers()` ##### Description Formats a dictionary into HTTP headers. #### `Utils.format_value()` ##### Description Formats a value for display or storage. #### `Utils.get_valid_filename()` ##### Description Ensures a string is a valid filename. #### `Utils.normalize_filename()` ##### Description Normalizes a filename to a standard format. #### `Utils.stream()` ##### Description Provides a streaming interface for data. ``` -------------------------------- ### Project API Methods Source: https://frameio.github.io/python-frameio-client/classes/index.html Methods for managing projects and project collaborators. ```APIDOC ## Project Methods - Project.add_collaborator() - Project.create() - Project.download() - Project.get() - Project.get_collaborators() - Project.get_pending_collaborators() - Project.remove_collaborator() - Project.tree() ``` -------------------------------- ### User Methods Source: https://frameio.github.io/python-frameio-client/genindex.html Methods for retrieving user-specific information. ```APIDOC ## get_accounts() ### Description Retrieves the user's account information. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## get_me() ### Description Retrieves information about the currently authenticated user. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ``` -------------------------------- ### POST /assets/add_version Source: https://frameio.github.io/python-frameio-client/classes/assets.html Adds a new version to an existing version stack or creates a new one. ```APIDOC ## POST /assets/add_version ### Description Add a new version to a version stack, or create a new one. ### Parameters #### Request Body - **target_asset_id** (Union[str, UUID]) - Required - The main/destination Asset or Version Stack. - **new_version_id** (Union[str, UUID]) - Required - The id for the asset you want to add to the Version Stack. ### Request Example ``` client.add_version_to_asset( destination_id="123", next_asset_id="234" ) ``` ``` -------------------------------- ### User API Methods Source: https://frameio.github.io/python-frameio-client/classes/index.html Methods for retrieving user information and account details. ```APIDOC ## User.get_accounts() ### Description Retrieves the accounts associated with the current user. ## User.get_me() ### Description Retrieves the profile information for the authenticated user. ``` -------------------------------- ### FrameioDownloader Methods Source: https://frameio.github.io/python-frameio-client/genindex.html Methods related to downloading files and managing download processes. ```APIDOC ## _create_file_stub() ### Description Creates a placeholder for a file before downloading its content. ### Method (Not specified, likely internal) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## _evaluate_asset() ### Description Evaluates an asset, possibly for download readiness or metadata. ### Method (Not specified, likely internal) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## _get_checksum() ### Description Calculates or retrieves the checksum of a file for integrity verification. ### Method (Not specified, likely internal) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## _get_path() ### Description Retrieves the file path for a given asset. ### Method (Not specified, likely internal) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## get_download_key() ### Description Retrieves a download key for an asset, likely for direct download links. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## get_path() ### Description Retrieves the file path for a given asset. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## download() ### Description Downloads an asset or project. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ``` -------------------------------- ### FrameioUploader Module Source: https://frameio.github.io/python-frameio-client/modules/index.html Documentation for the FrameioUploader class, which handles uploading files to Frame.io. ```APIDOC ## FrameioUploader Class ### Description Provides functionality to upload files to Frame.io. ### Methods #### `FrameioUploader._calculate_chunks()` ##### Description Internal method to calculate file chunk sizes for uploading. #### `FrameioUploader._get_session()` ##### Description Internal method to obtain an upload session. #### `FrameioUploader._smart_read_chunk()` ##### Description Internal method for efficiently reading chunks of a file. #### `FrameioUploader._upload_chunk()` ##### Description Internal method to upload a single chunk of a file. #### `FrameioUploader.file_counter()` ##### Description Tracks the number of files processed during upload. #### `FrameioUploader.recursive_upload()` ##### Description Recursively uploads files from a directory. #### `FrameioUploader.upload()` ##### Description Initiates the upload of a single file. ``` -------------------------------- ### Create Asset Source: https://frameio.github.io/python-frameio-client/classes/assets.html Creates a new asset, such as a file or folder, within a specified parent asset. You can define its name, type, file type, and size. ```python client.assets.create( parent_asset_id="123abc", name="ExampleFile.mp4", type="file", filetype="video/mp4", filesize=123456 ) ``` -------------------------------- ### Add Collaborator to Project Source: https://frameio.github.io/python-frameio-client/classes/projects.html Adds a user to a project using their email address. ```python client.projects.add_collaborator( project_id="123", email="janedoe@frame.io", ) ``` -------------------------------- ### Utils.format_headers Source: https://frameio.github.io/python-frameio-client/modules/utils.html Formats HTTP headers including the authentication token and SDK version. ```APIDOC ## Utils.format_headers ### Description Formats HTTP headers to be used in requests, including authentication token and SDK version. ### Method Static method of the `Utils` class. ### Parameters #### Path Parameters - **token** (str) - Required - Frame.io OAuth/Dev Token to use. - **version** (str) - Required - The version of the frameioclient sdk to add to our HTTP header. ### Request Example ```python # Example usage (assuming token and version are defined) # headers = Utils.format_headers(token, version) ``` ### Response #### Success Response (200) - **headers** (Dict) - A dictionary containing formatted HTTP headers. #### Response Example ```json { "headers": { "Authorization": "Bearer example_token", "X-Frameio-SDK": "frameioclient/1.1.0" } } ``` ``` -------------------------------- ### Create a comment Source: https://frameio.github.io/python-frameio-client/classes/comments.html Creates a new comment on a specified asset. ```python client.comments.create( asset_id="123abc", text="Hello world", timestamp=10 ) ``` -------------------------------- ### Download Asset Source: https://frameio.github.io/python-frameio-client/classes/assets.html Downloads a specified asset to a local folder. Supports multi-part downloads and options to replace existing files. ```python client.assets.download(asset, "~./Downloads") ``` -------------------------------- ### Project Methods Source: https://frameio.github.io/python-frameio-client/genindex.html Methods for managing projects, including collaboration and tree structure. ```APIDOC ## add_collaborator() ### Description Adds a collaborator to a project. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## download() ### Description Downloads the entire project. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## get() ### Description Retrieves details of a specific project. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## get_collaborators() ### Description Retrieves the list of collaborators for a project. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## get_pending_collaborators() ### Description Retrieves a list of pending collaborator invitations for a project. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## remove_collaborator() ### Description Removes a collaborator from a project. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ## tree() ### Description Retrieves the hierarchical structure (tree) of a project's assets. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ``` -------------------------------- ### Upload File Source: https://frameio.github.io/python-frameio-client/classes/assets.html Uploads a file from your local filesystem to a specified destination (Project or Folder ID). The method completes once the upload is finished. ```python client.assets.upload('1231-12414-afasfaf-aklsajflaksjfla', "./file.mov") ``` -------------------------------- ### Bulk Copy Assets Source: https://frameio.github.io/python-frameio-client/classes/assets.html Efficiently copy multiple assets into a specified destination folder. You can optionally choose to copy associated comments. ```python client.assets.bulk_copy( "adeffee123342", asset_list=[ "7ee008c5-49a2-f8b5-997d-8b64de153c30", "7ee008c5-49a2-f8b5-997d-8b64de153c30" ], copy_comments=True ) ``` -------------------------------- ### POST /assets/bulk_copy Source: https://frameio.github.io/python-frameio-client/classes/assets.html Copies multiple assets to a specified destination folder. ```APIDOC ## POST /assets/bulk_copy ### Description Bulk copy assets to a destination folder. ### Parameters #### Request Body - **destination_folder_id** (Union[str, UUID]) - Required - The id of the folder you want to copy into. - **asset_list** (List) - Optional - A list of the asset IDs you want to copy. - **copy_comments** (bool) - Optional - Whether or not to copy comments. ### Request Example ``` client.assets.bulk_copy( "adeffee123342", asset_list=[ "7ee008c5-49a2-f8b5-997d-8b64de153c30", "7ee008c5-49a2-f8b5-997d-8b64de153c30" ], copy_comments=True ) ``` ``` -------------------------------- ### User.get_me() Source: https://frameio.github.io/python-frameio-client/classes/users.html Retrieves the profile information for the currently authenticated user. ```APIDOC ## GET /users/me ### Description Get the current user. ### Method GET ### Endpoint User.get_me() ``` -------------------------------- ### Asset API Source: https://frameio.github.io/python-frameio-client/index.html Enables management of assets, including creation, deletion, retrieval, copying, and uploading/downloading. ```APIDOC ## Asset Class ### Description Represents an asset within Frame.io, such as files or folders. ### Methods #### `Asset.add_version()` ##### Description Adds a new version to an existing asset. ##### Method POST ##### Endpoint `/api/v2/assets/{asset_id}/versions` #### `Asset.bulk_copy()` ##### Description Copies multiple assets in bulk. ##### Method POST ##### Endpoint `/api/v2/assets/bulk_copy` #### `Asset.copy()` ##### Description Copies a single asset. ##### Method POST ##### Endpoint `/api/v2/assets/{asset_id}/copy` #### `Asset.create()` ##### Description Creates a new asset (e.g., a file). ##### Method POST ##### Endpoint `/api/v2/assets` #### `Asset.create_folder()` ##### Description Creates a new folder. ##### Method POST ##### Endpoint `/api/v2/projects/{project_id}/folders` #### `Asset.delete()` ##### Description Deletes an asset. ##### Method DELETE ##### Endpoint `/api/v2/assets/{asset_id}` #### `Asset.download()` ##### Description Initiates the download of an asset. ##### Method GET ##### Endpoint `/api/v2/assets/{asset_id}/download` #### `Asset.from_url()` ##### Description Creates an asset from a URL. ##### Method POST ##### Endpoint `/api/v2/assets/from_url` #### `Asset.get()` ##### Description Retrieves details of a specific asset. ##### Method GET ##### Endpoint `/api/v2/assets/{asset_id}` #### `Asset.get_children()` ##### Description Retrieves the children (files or folders) of a given asset. ##### Method GET ##### Endpoint `/api/v2/assets/{asset_id}/children` #### `Asset.update()` ##### Description Updates an existing asset. ##### Method PATCH ##### Endpoint `/api/v2/assets/{asset_id}` #### `Asset.upload()` ##### Description Uploads a new asset. ##### Method POST ##### Endpoint `/api/v2/uploads` #### `Asset.upload_folder()` ##### Description Uploads the contents of a folder. ##### Method POST ##### Endpoint `/api/v2/uploads/folder` ``` -------------------------------- ### FrameioHelpers Class Methods Source: https://frameio.github.io/python-frameio-client/modules/helpers.html This section details the various methods available within the FrameioHelpers class for managing Frame.io projects and assets. ```APIDOC ## FrameioHelpers Class ### Description Provides utility methods for interacting with Frame.io projects and assets. ### Methods #### `autoconfigure()` ##### Description Automatically configures the Frame.io client. ##### Method (Not specified, likely internal or part of initialization) #### `build_project_tree(project_id, slim=True)` ##### Description Builds a tree representation of a Frame.io project. ##### Method (Not specified, likely internal) ##### Parameters ###### Path Parameters - **project_id** (string) - Required - The ID of the project. ###### Query Parameters - **slim** (boolean) - Optional - If True, returns a slim representation of the project tree. #### `download_project(project_id, destination)` ##### Description Downloads the contents of a Frame.io project to a specified destination. ##### Method (Not specified, likely internal) ##### Parameters ###### Path Parameters - **project_id** (string) - Required - The ID of the project to download. - **destination** (string) - Required - The local path where the project should be downloaded. #### `get_assets_recursively(asset_id, slim=True)` ##### Description Retrieves all assets within a given asset recursively. ##### Method (Not specified, likely internal) ##### Parameters ###### Path Parameters - **asset_id** (string) - Required - The ID of the asset. ###### Query Parameters - **slim** (boolean) - Optional - If True, returns a slim representation of the assets. #### `get_updated_assets(account_id, project_id, timestamp)` ##### Description Retrieves assets that have been added or updated since a specific timestamp. ##### Method (Not specified, likely internal) ##### Parameters ###### Path Parameters - **account_id** (string) - Required - The ID of the account. - **project_id** (string) - Required - The ID of the project. - **timestamp** (string) - Required - An ISO 8601 UTC formatted timestamp (e.g., datetime.now(timezone.utc).isoformat()). #### `load_config()` ##### Description Loads configuration settings. ##### Method (Not specified, likely internal) #### `recursive_downloader(directory, asset, count=0)` ##### Description Recursively downloads assets to a specified directory. ##### Method (Not specified, likely internal) ##### Parameters ###### Path Parameters - **directory** (string) - Required - The local directory to download assets to. - **asset** (object) - Required - The asset object to download. - **count** (integer) - Optional - A counter, likely for internal use. #### `save_config()` ##### Description Saves the current configuration settings. ##### Method (Not specified, likely internal) ``` -------------------------------- ### POST /assets/upload Source: https://frameio.github.io/python-frameio-client/classes/assets.html Uploads a local file to a specified destination. ```APIDOC ## POST /assets/upload ### Description Upload a file. The method will exit once the file is uploaded. ### Parameters #### Request Body - **destination_id** (Union[str, UUID]) - Required - The destination Project or Folder ID. - **filepath** (str) - Required - The location of the file on your local filesystem. ### Request Example ``` client.assets.upload('1231-12414-afasfaf-aklsajflaksjfla', "./file.mov") ``` ``` -------------------------------- ### PresentationLink Methods Source: https://frameio.github.io/python-frameio-client/genindex.html Methods for managing presentation links. ```APIDOC ## create() ### Description Creates a new presentation link. ### Method (Not specified) ### Endpoint (Not specified) ### Parameters (Not specified) ### Request Body (Not specified) ### Response (Not specified) ``` -------------------------------- ### Search Library Assets Source: https://frameio.github.io/python-frameio-client/classes/search.html Use this method to search for assets like files or folders within your Frame.io account. Specify the query, asset type, and sorting preferences. Ensure you have the necessary permissions and account context. ```python client.search.library( query="Final", type="file", sort="name" ) ``` -------------------------------- ### Add Version to Asset Source: https://frameio.github.io/python-frameio-client/classes/assets.html Use this method to add a new version to an existing version stack or create a new one. Requires the main asset ID and the ID for the new asset version. ```python client.add_version_to_asset( destination_id="123", next_asset_id="234" ) ``` -------------------------------- ### FrameioUploader Class Methods Source: https://frameio.github.io/python-frameio-client/modules/uploader.html This section details the methods available within the FrameioUploader class for managing file uploads. ```APIDOC ## FrameioUploader ### Description Represents a uploader for Frame.io, handling file uploads. ### Methods #### `_calculate_chunks(_total_size_, _chunk_count_)` ##### Description Calculates the size of each chunk for uploading. ##### Parameters - **total_size** (int) - Total filesize in bytes. - **chunk_count** (int) - Total number of URLs received from the API. ##### Returns - **chunk_offsets** (List[int]) - A list of chunk offsets. #### `_get_session()` ##### Description Retrieves the current upload session. #### `_smart_read_chunk(_chunk_offset_, _is_final_chunk_)` ##### Description Reads a specific chunk of the file intelligently. ##### Parameters - **chunk_offset** (int) - The starting offset of the chunk. - **is_final_chunk** (bool) - Indicates if this is the final chunk. ##### Returns - **bytes** - The content of the chunk as bytes. #### `_upload_chunk(_task_)` ##### Description Uploads a single chunk of the file. ##### Parameters - **task** (object) - The upload task object. ##### Returns - **int** - The status code of the upload operation. #### `file_counter(_folder_)` ##### Description Counts files within a specified folder. ##### Parameters - **folder** (str) - The path to the folder. #### `recursive_upload(_client_, _folder_, _parent_asset_id_)` ##### Description Recursively uploads files from a folder to Frame.io. ##### Parameters - **client** (object) - The Frame.io client instance. - **folder** (str) - The local folder path to upload from. - **parent_asset_id** (str) - The ID of the parent asset in Frame.io. #### `upload()` ##### Description Initiates the file upload process. ``` -------------------------------- ### Project API Source: https://frameio.github.io/python-frameio-client/index.html Manages projects, including collaborators, creation, and retrieval of project details. ```APIDOC ## Project Class ### Description Represents a project within Frame.io. ### Methods #### `Project.add_collaborator()` ##### Description Adds a collaborator to a project. ##### Method POST ##### Endpoint `/api/v2/projects/{project_id}/collaborators` #### `Project.create()` ##### Description Creates a new project. ##### Method POST ##### Endpoint `/api/v2/projects` #### `Project.download()` ##### Description Initiates the download of a project's contents. ##### Method GET ##### Endpoint `/api/v2/projects/{project_id}/download` #### `Project.get()` ##### Description Retrieves details of a specific project. ##### Method GET ##### Endpoint `/api/v2/projects/{project_id}` #### `Project.get_collaborators()` ##### Description Retrieves the list of collaborators for a project. ##### Method GET ##### Endpoint `/api/v2/projects/{project_id}/collaborators` #### `Project.get_pending_collaborators()` ##### Description Retrieves pending collaborators for a project. ##### Method GET ##### Endpoint `/api/v2/projects/{project_id}/pending_collaborators` #### `Project.remove_collaborator()` ##### Description Removes a collaborator from a project. ##### Method DELETE ##### Endpoint `/api/v2/projects/{project_id}/collaborators/{user_id}` #### `Project.tree()` ##### Description Retrieves the hierarchical structure (tree) of a project. ##### Method GET ##### Endpoint `/api/v2/projects/{project_id}/tree` ``` -------------------------------- ### PresentationLink API Source: https://frameio.github.io/python-frameio-client/classes/sharing.html Manage presentation links for assets. ```APIDOC ## PresentationLink.create() ### Description Create a presentation link for a given asset. ### Method POST ### Endpoint /presentation_links ### Parameters #### Path Parameters - **asset_id** (string) - Required - The ID of the asset for which to create a presentation link. #### Request Body - **title** (string) - Optional - The title of the presentation link. - **password** (string) - Optional - The password for the presentation link. ### Request Example ```json { "asset_id": "9cee7966-4066-b326-7db1-f9e6f5e929e4", "title": "My fresh presentation", "password": "abc123" } ``` ### Response #### Success Response (200) - **link_id** (string) - The ID of the created presentation link. - **url** (string) - The URL of the presentation link. #### Response Example ```json { "link_id": "generated-link-id", "url": "https://frame.io/links/generated-link-id" } ``` ```