Skip to main content

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 used con or connection)
  • 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


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ayon-python-api-1.0.0rc2.tar.gz (85.4 kB view details)

Uploaded Source

Built Distribution

ayon_python_api-1.0.0rc2-py3-none-any.whl (87.3 kB view details)

Uploaded Python 3

File details

Details for the file ayon-python-api-1.0.0rc2.tar.gz.

File metadata

  • Download URL: ayon-python-api-1.0.0rc2.tar.gz
  • Upload date:
  • Size: 85.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.11.7

File hashes

Hashes for ayon-python-api-1.0.0rc2.tar.gz
Algorithm Hash digest
SHA256 4b453fa95db8eecb2a7103f04302fa437017000c6a9c21619806799474cbf50c
MD5 acba3a56a00e737146972a7d4d74115c
BLAKE2b-256 efb0ea1cdc4ef2efb619d3cd166282f97e7a6f6cbedcf9cf9a56314c51cfce1f

See more details on using hashes here.

File details

Details for the file ayon_python_api-1.0.0rc2-py3-none-any.whl.

File metadata

File hashes

Hashes for ayon_python_api-1.0.0rc2-py3-none-any.whl
Algorithm Hash digest
SHA256 65eae0f131b11c1ff2c53e97e30f5a2dabee3419fa7b0bc781b15b5274705968
MD5 f419f5d933d04c8e32eaacaf92b67b5d
BLAKE2b-256 3a92b3df414d06f01c5ff4cc4bf97002f2fdbf32824923d1cc1436b6e56cd609

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page