Client library for the Frame.io API
Project description
python-frameio-client
Frame.io
Frame.io is a cloud-based collaboration hub that allows video professionals to share files, comment on clips real-time, and compare different versions and edits of a clip.
Overview
Installation
via Pip
$ pip install frameioclient
via Source
$ git clone https://github.com/frameio/python-frameio-client
$ pip install .
Developing
Install the package into your development environment and link to it by running the following:
pipenv install -e . -pre
Documentation
Use CLI
When you install this package, a cli tool called fioctl
will also be installed to your environment.
To upload a file or folder
fioctl \
--token fio-u-YOUR_TOKEN_HERE \
--destination "YOUR TARGET FRAME.IO PROJECT OR FOLDER" \
--target "YOUR LOCAL SYSTEM DIRECTORY" \
--threads 8
To download a file, project, or folder
fioctl \
--token fio-u-YOUR_TOKEN_HERE \
--destination "YOUR LOCAL SYSTEM DIRECTORY" \
--target "YOUR TARGET FRAME.IO PROJECT OR FOLDER" \
--threads 2
Links
Sphinx Documentation
- https://pythonhosted.org/sphinxcontrib-restbuilder/
- https://www.npmjs.com/package/rst-selector-parser
- https://sphinx-themes.org/sample-sites/furo/_sources/index.rst.txt
- https://developer.mantidproject.org/Standards/DocumentationGuideForDevs.html
- https://sublime-and-sphinx-guide.readthedocs.io/en/latest/code_blocks.html
- https://www.sphinx-doc.org/en/master/usage/extensions/autodoc.html
- https://stackoverflow.com/questions/64451966/python-sphinx-how-to-embed-code-into-a-docstring
- https://pythonhosted.org/an_example_pypi_project/sphinx.html
Decorators
- https://docs.python.org/3.7/library/functools.html
- https://realpython.com/primer-on-python-decorators/
- https://www.sphinx-doc.org/en/master/usage/quickstart.html
- https://www.geeksforgeeks.org/decorators-with-parameters-in-python/
- https://stackoverflow.com/questions/43544954/why-does-sphinx-autodoc-output-a-decorators-docstring-when-there-are-two-decora
Usage
Note: A valid token is required to make requests to Frame.io. Go to our Developer Portal to get a token!
In addition to the snippets below, examples are included in /examples.
Get User Info
Get basic info on the authenticated user.
from frameioclient import FrameioClient
client = FrameioClient("TOKEN")
me = client.users.get_me()
print(me['id'])
Create and Upload Asset
Create a new asset and upload a file. For parent_asset_id
you must have the root asset ID for the project, or an ID for a folder in the project. For more information on how assets work, check out our docs.
import os
from frameioclient import FrameioClient
client = FrameioClient("TOKEN")
# Create a new asset manually
asset = client.assets.create(
parent_asset_id="1234abcd",
name="MyVideo.mp4",
type="file",
filetype="video/mp4",
filesize=os.path.getsize("sample.mp4")
)
# Create a new folder
client.assets.create(
parent_asset_id="",
name="Folder name",
type="folder" # this kwarg is what makes it a folder
)
# Upload a file
client.assets.upload(destination_id, "video.mp4")
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file elements-frameioclient-2.0.0.tar.gz
.
File metadata
- Download URL: elements-frameioclient-2.0.0.tar.gz
- Upload date:
- Size: 27.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.23.4 CPython/3.6.8
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 08b2840ba49bbe46f3619f900107ba9d823185820bedf720c7d65f23270afcf1 |
|
MD5 | a5d707819fc639c30eb883c8cc8b9f26 |
|
BLAKE2b-256 | e8a131c44892dd142b5a4f6e75c0dd09008baea61affa64e43ec9677e81bfc2e |