Data Integration API

The Data Integration API is a simple HTTP or TCP interface allowing you to control Verso Live with simple JSON payloads.

How it works

1 – Connect to Verso Live

The Verso Live desktop application has a TCP server (default port 23). It accepts JSON commands from TCP clients.Before sending commands to Verso Live, you’ll first need to connect.
If you want to control Verso Live using HTTP instead of TCP, the installer adds the Verso Live HTTP API (middleware). This acts as an HTTP server between Verso Live TCP and your application.

2 – Send commands

Verso Live processes all commands through the same endpoint, provided they are formatted in the right way. For both TCP and HTTP, almost all commands are sent to the same route.
Unlike other APIs, Verso Live doesn’t rely on developers learning a large library of endpoints to tell it what to do. Instead, the commands you enter in the JSON payload control how Verso Live behaves.

3 – Quickstart example commands:

Preview a graphic
Animate a graphic
Lose (de-animate) a graphic
JSON Command breakdown

{
    graphic: ”my-lower-third”,
    type: ”my-lower-third”,
    action: ”preview”,
    properties: { lines: 1 },
    data: {
        PLAYER_NAME: ”Mr Smith”,
    }
}

{
    graphic: ”my-lower-third”,
    type: ”my-lower-third”,
    action: animate
}

{
    graphic: ”my-lower-third”,
    type: ”my-lower-third”,
    action: lose
}

{
    graphic: ”my-lower-third”, <— The graphic (Unreal Engine level name)
    type: ”my-lower-third”, <—
– API placeholder for type variants of the same graphic
    action: ”preview”, <— the action for Verso Live to perform
    properties: { lines: 1 }, <—
– additional properties, these will vary depending on your graphic/how it is built/blueprints.
    data: { <— ”data” object represents the 3dText objects in your level that you want to populate with text
        PLAYER_NAME: ”Mr Smith” <—
– ”PLAYER_NAME” 3dText object will be populated with
    }
}

4 – The graphics manifest

The graphics manifest is a JSON file that describes the graphics currently loaded into Verso Live.
The manifest has other uses, but is best suited to telling third party applications and the VLS interface what graphics exist and what text fields they can fill out and control.

5 – JSON command elements

To control graphics, commands for Verso Live need a minimum input of a ‘graphic’, ‘type’ and ‘action‘.
Verso Live uses the ‘graphic’ and ‘type’ inputs to find the specific graphic to work on.

{
    graphic: ”my-lower-third”,
    type: ”my-lower-third”,
    action: ”preview”,
    data: {
        PLAYER_NAME: ”Mr Smith
    }
}

Once the graphic is loaded, Verso Live will copy all the data, images, movies and other media, and will fill out the specified fields.
Finally, any blueprints (macro functionality or in-built logic) will be run. The graphic will be ready to animate with the animate command:

{
    action:”animate”,
    graphic:”my-lower-third”,
    type:”my-lower-third
}

Detailed instructions

A full version of the JSON command API including example commands, is available. Contact us if you’d like a copy.

XML to JSON

If your existing control systems use XML, we have a set of external tools that can readily translate XML commands to the native Verso Live JSON protocol. Contact us to find out more.

Using Verso Live

Subscribe to our mailing list

Subscribe for the latest news and updates on Verso Live, delivered straight to your inbox.
Newsletter