The plugins must be compatible with Python version 2.6.5, and have access to the following Python modules:
Plugins are zip files that must contain a MANIFEST file and an executable Python file named main.py in its root directory. The MANIFEST file is a YAML file, and should conform to version 1.2 of the YAML specification, which should contain the following information about the plugin:
name: The name of the plugin.
type: The type of the plugin. For a custom Credential Store plugin, it must be credentialstore
version: The version number of the plugin. For details on the versioning of plugins, see Plugin versioning.
api: The version number of the SPS API.
description: The description of the plugin. This description will be displayed on the SPS web interface.
The plugin zip file may also optionally contain a default.cfg file that serves to provide an example configuration that you can use as a basis for customization if you wish to adapt the plugin to your site's needs.
The version number of the plugin and the SPS API must be in the form <major number>.<minor number>. Note the following points about version number:
SPS supports only a single version of the plugin API.
The major version number of the api field in the plugin must be the same as the major version number of the SPS API.
The minor version number of the api field in the plugin cannot be higher than the minor version number of the SPS API.
For example, if the API version of SPS is 1.3, then SPS can use plugins with version number 1.0, 1.1, 1.2, and 1.3.
Currently, the API version number must be 1.0.
On the default log level, SPS logs everything that the plugin writes to stderr. SPS logs the communication with the plugin on debug log level.