node-red-contrib-avid-interplay
v1.1.0
Published
Node-RED nodes for Avid Interplay PAM SOAP Web Services
Maintainers
Readme
node-red-contrib-avid-interplay
A Node-RED package for calling the Avid Interplay PAM SOAP Web Services.
Supports all standard Avid Interplay services: Assets, Archive, Infrastructure, Jobs, Transfer, UserManagement.
Features
- Service and operation selected via dropdown menus in the node editor
- Live WSDL introspection — operations are fetched directly from the server at design time
- Payload template generator — reads the XSD schema and produces an annotated
msg.payloadtemplate with[R]/[O]markers - WS-Security
UsernameTokenauthentication - Configurable HTTP timeout
- Accepts self-signed / internal CA certificates
- Runtime override via
msg.serviceandmsg.operation
Installation
# inside your Node-RED user directory (usually ~/.node-red)
npm install node-red-contrib-avid-interplayOr use the Manage Palette panel in the Node-RED editor.
Nodes
interplay-config (config node)
Holds the connection settings shared by all request nodes.
| Field | Description |
|---|---|
| Base URL | Root CXF endpoint, e.g. https://host:1881/services |
| Username | Interplay username (optional) |
| Password | Interplay password (optional) |
| Timeout | HTTP request timeout in ms (default: 30 000) |
| Allow self-signed SSL | Bypass certificate verification for internal servers |
interplay-request (function node)
Executes a single SOAP operation and outputs the response.
| Field | Description |
|---|---|
| Server | Reference to an interplay-config node |
| Service | One of Assets, Archive, Infrastructure, Jobs, Transfer, UserManagement |
| Operation | Loaded from the live WSDL after clicking Load operations from WSDL |
Buttons
| Button | Action |
|---|---|
| Load operations from WSDL | Fetches the operation list from {baseUrl}/{service}?wsdl |
| Generate payload template | Parses the XSD schema and renders an annotated msg.payload template |
Usage
- Add an
interplay-confignode and fill in the server URL and credentials. - Drop an
interplay-requestnode onto the canvas and open it. - Select the Service (e.g.
Assets). - Click Load operations from WSDL — the Operation dropdown will populate.
- Select an Operation (e.g.
GetChildren). - Click Generate payload template — an annotated JSON template appears.
- Copy the template and paste it into an upstream Change or Function node, replacing placeholder values with real data.
- Wire the output of that node to the
interplay-requestnode.
Payload template legend
[R] Required — must be provided
[O] Optional — may be omittedA value wrapped in […] is a repeatable array element.
The _legend key is metadata only — do not include it in msg.payload.
Example
// Function node upstream of interplay-request
msg.payload = {
InterplayURI: "interplay://MyWorkgroup/MyDatabase/Projects/MyFolder"
};
return msg;Message properties
Input
| Property | Type | Description |
|---|---|---|
| msg.payload | object | Operation parameters (property names must match the XSD element names) |
| msg.service | string | (optional) Runtime override for the service name |
| msg.operation | string | (optional) Runtime override for the operation name |
Output
| Property | Type | Description |
|---|---|---|
| msg.payload | object | Deserialised SOAP response. A top-level <return> element is unwrapped automatically |
| msg.statusCode | number | HTTP status code of the SOAP response |
| msg.service | string | Name of the service that was called |
| msg.operation | string | Name of the operation that was called |
Supported services
| Service | Endpoint path |
|---|---|
| Assets | /services/Assets |
| Archive | /services/Archive |
| Infrastructure | /services/Infrastructure |
| Jobs | /services/Jobs |
| Transfer | /services/Transfer |
| UserManagement | /services/UserManagement |
Cache management
WSDL and XSD documents are cached in memory after the first load. To force a reload
(e.g. after an Interplay server upgrade), send a POST request from Node-RED to the
internal admin endpoint:
POST /interplay/clear-cacheError handling
On SOAP fault or network error the node raises a Node-RED error catchable with a
Catch node. The error message is in error.message.
Requirements
- Node-RED ≥ 3.0.0
- Node.js ≥ 14.0.0
- Network access to the Avid Interplay server at design time (for WSDL/XSD introspection)
