AYON Python API
Project description
AYON server API
Python client for connection server. Client must be (at least for some time) Python 2 compatible because will be used in DCC that are "older".
AYON Python api should support connection to server with raw REST functions and prepared functionality for work with entities. Must not contain only functionality that can be used with core server functionality.
Module support singleton connection which is using AYON_SERVER_URL
and AYON_API_KEY
environment variables as source for connection. The singleton connection is using ServerAPI
object. There can be created multiple connection to different server at one time, for that purpose use ServerAPIBase
object.
Install
AYON python api is available on PyPi:
pip install ayon-python-api
For development purposes you may follow build guide to build and install custom wheels.
Cloning the repository
Repository does not have submodules or special cases. Clone is simple as:
git clone git@github.com:ynput/ayon-python-api.git
Build wheel
For wheel build is required a wheel
module from PyPi:
pip install wheel
Open terminal and change directory to ayon-python-api repository and build wheel:
cd <REPOSITORY ROOT>/ayon-python-api
python setup.py sdist bdist_wheel
Once finished a wheel should be created in ./dist/ayon_python_api-<VERSION>-py3-none-any
.
Wheel installation
The wheel file can be used to install using pip:
pip install <REPOSITORY ROOT>/dist/ayon_python_api-<VERSION>-py3-none-any
If pip complain that ayon-python-api
is already installed just uninstall existing one first:
pip uninstall ayon-python-api
TODOs
- Find more suitable name of
ServerAPI
objects (right now is usedcon
orconnection
) - Add all available CRUD operation on entities using REST
- Add folder and task changes to operations
- Enhance entity hub
- Missing docstrings in EntityHub -> especially entity arguments are missing
- Better order of arguments for entity classes
- Move entity hub to first place
- Skip those which are invalid for the entity and fake it for base or remove it from base
- Entity hub should use operations session to do changes
- Entity hub could also handle 'product', 'version' and 'representation' entities
- Missing 'status' on folders
- Missing assignees on tasks
- Pass docstrings and arguments definitions from
ServerAPI
methods to global functions
- Split
ServerAPI
into smaller chunks (somehow), the class has 4k+ lines of code - Add .pyi stub for ServerAPI
- Missing websockets connection
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
Built Distribution
File details
Details for the file ayon-python-api-0.4.2.tar.gz
.
File metadata
- Download URL: ayon-python-api-0.4.2.tar.gz
- Upload date:
- Size: 82.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b5463a92bcd79c1cb718aba58e8aecf3aa804de35ec98d2a0529e9fc8ed8cb7c |
|
MD5 | 8e288f0d6937a843809635ea1bc1f31f |
|
BLAKE2b-256 | 114f12e9a4b2f0dc2ca54d717fdc2612b3e56ed4504948201de144d857fbd4ff |
File details
Details for the file ayon_python_api-0.4.2-py3-none-any.whl
.
File metadata
- Download URL: ayon_python_api-0.4.2-py3-none-any.whl
- Upload date:
- Size: 83.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/4.0.2 CPython/3.11.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6439d50adc301e06a7054b349dcdb40b019feff278006743913aa717707ef281 |
|
MD5 | 22cddc0c45bbf071dd1818cb54acdbbc |
|
BLAKE2b-256 | 2a298ac244a59d989685bff1f4232f89bd05c37dfebbf66a7b3f795f70e11ca6 |