Asset Management System Plug-in API

The Katana Asset plug-in API is a Python and C++ interface for integrating Katana with asset management systems. It permits retrieval and publishing of assets within Katana. The asset management plug-in API provides four core mechanisms, which are described in Asset Management.

The Asset plug-in API does not provide any functions for traversing over a Katana scene graph or for editing nodes, and it is not a replacement asset management system. It is referenced when resolving a recipe and should therefore not traverse the Node Graph directly, or instantiate a scene graph iterator. An Asset plug-in is invoked during interactive Katana sessions and also during rendering.

Katana ships with an example Asset plug-in, called PyMockAsset. The source file MockAsset.py for the example plug-in is located in:

${KATANA_ROOT}/plugins/Src/Resources/Examples/AssetPlugins/

As well as source file PyMockAssetWidgetDelegate.py for the corresponding UI widget used with PyMockAsset, which is found in:

${KATANA_ROOT}/plugins/Src/Resources/Examples/UIPlugins/

PyMultiMockAsset is an extended version of PyMockAsset to allow a number of different asset resolving behaviors, such as publishing to a database or saving to a sandbox. This example uses assetIds with different prefix values to determine which behavior should be used. Further details are provided in the plug-in source file.

Note:  Python-based AssetAPI plug-ins have been deprecated, and support for them will be removed. Moving forward, for performance and stability reasons, AssetAPI plug-ins should be written in C++.
For more information, refer to the support article Deprecation of Python-based AssetAPI plug-ins.