Sign up for a free evaluation account
Text Download ➞
Title Subtitle Download ➞

Player Custom API Configuration

Overview

The NoviSign Digital Signage platform allows data retrieval from diverse third-party API endpoints, enabling customers to showcase dynamic content on screens through any device with the requisite software. This API integration capability is compatible across various platforms for player devices.

The integration process involves two primary segments:

  • Player Configuration
  • Studio Management

Player Configuration (any platform):

Player Configuration

Navigate to: Settings > Advanced > External interfaces > Custom API integration

Create a new “Custom API Integration” and complete the following fields:

“Name” – Provide a suitable name for the integration.

“API URL” – Enter the URL from which JSON data will be fetched.

“Refresh” – Determine the refresh rate in seconds, considering optimal performance (avoiding potential performance issues).

“Request Type” – Specify whether it’s a GET or POST request (default is GET).

“Request Body and Headers” – Add any necessary additional parameters such as static tokens required by the API to fetch data. Leave empty if not required.

“Property Key” – Choose a distinctive key that will be used in the Studio creatives to inject dynamic data onto the screens. This key will be utilized in subsequent configuration steps.

To validate the configuration, click the “Test” button. A correctly configured setup should display the JSON payload on the screen.

Save the configured settings by selecting the “Save” button and proceed with the subsequent steps as necessary.

Creating Custom API Integration within Screen Content Configuration Component
(Available Only for Android Devices)

The introduction of the Screen Content Configurations module allows users to configure and export Custom API endpoints and parameters within the Studio directly to Android player. This feature eliminates the necessity to set up a specific device individually.

To create a Custom API Integration within the Screen Content access the Screen Content section and proceed to:

Settings > Configurations > New Configuration > External Interfaces > Custom API Integration > Click To Change.

After creating and testing the new Custom API Configuration, it becomes possible to allocate this specific configuration to particular Screen Content. Within the Screen Content Section, open the menu denoted by “three dots” for the specific screen and select “Set configuration”.

Once the configuration is applied to the specific screen content, it will automatically be imported by the player when selecting the screen for playback.

Studio:

Within the Studio, the definition of dynamic content involves employing variable expressions within the creative’s widgets. These dynamic variables populate data received from the API during runtime.

What constitutes these dynamic expressions?

The system processes JSON format responses, which are “parsed” by the player, and via expression variables reference the inner paths within JSON structure. A reserved syntax format is designated for this purpose:

${@customapi.PROPERTY_KEY.JSON_KEY1.JSON_KEY1_1….}

${@customapi}: This is a reserved syntax denoting reference to the JSON structure. Any expression should commence with this prefix.

PROPERTY_KEY: This signifies the property key configured in our prior integration steps, serving as an identifier for various integration configurations. This key directs where the data retrieval occurs.

JSON_KEY1.JSON_KEY1_1: These denote the inner JSON paths containing the specific data.

Example:

JSON response payload:

{ "InProcess": { "0" : { "orderApprovedTime":"2023-01-01T00:00:00" "orderIDShort":"1031" "orderID":"83301031" }, "1" : { "orderApprovedTime":"2023-01-01T00:00:00", "orderIDShort":"1119" "orderID":"83301119" }, "2" : { "orderApprovedTime":"2023-01-01T00:00:00", "orderIDShort":"1211", "orderID":"83301211" } } }

With property key set to “myrestaurant” the following path:

${@customapi.myrestaurant.InProcess.0.orderIDShort.}

will be translated to “1031” as derived from the specified JSON structure associated with the property key “myrestaurant

Supported Widgets:

Currently, the above-mentioned syntax can be utilized in configuring Text, Label, Webpage, Web video, and Web image widgets.