RESTful API Guide

The Algo REST API provides flexibility and scalability when integrating Algo IP endpoints with other paging and alerting systems. By using the Algo REST API, devices can trigger or be triggered by unique actions or events.

This guide outlines how to begin using the Algo REST API for an Algo IP endpoint and what calls can be used for device management.

Prerequisites

  • The Algo endpoint must be using firmware version 3.3 or higher.

  • The time difference between the requestor and the Algo devices should be less than 30 seconds to use standard authentication.

  • Ensure NTP (Network Time Protocol) is enabled on the device. The addresses of custom NTP servers may be configured in the Advanced Settings → Time tab.

Example Use Cases

Door Unlock for Building Entry

The REST API can be used to allow a user to unlock a door with the 8063 from a computer program.

School Bell

The REST API can be used to play a bell tone over Algo speakers when classes begin.

Temperature Check

The REST API can be used to trigger Algo visual alerters to flash a color based on a specific event.

Initial Configuration

  1. Enable RESTful API under the Advanced Settings → Admin tab.

  2. Select an Authentication Method. There are three types of authentications:

    Standard (recommended)

    Uses a Hash-based Message Authentication Code (HMAC) with an SHA-256 encoded digest.

    Basic

    Uses Base64 encoding and should only be used over HTTPS.

    None (not recommended)

    Should only be used with extreme care as it provides no authentication.

  3. Enter a RESTful API Password. The default password is algo.

Authentication Requirements

Standard Authentication Request with a JSON Payload

A standard authentication payload will require generating an HMAC key. This is generated by the RESTful API password (secret key) and the HMAC input. Generate HMAC with password and HMAC input string as digest using SHA-256

The hmac input is formatted as: [request_method]:[request_uri]:[content_md5]:[content_type]:[timestamp]:[nonce]

Element

Notes

Example

Request method

GET, POST, PUT, or DELETE

POST

Request URI

Must start with a forward slash

/api/controls/tone/start

Content-MD5

Generated separately. Also required for the payload request.

6e43c05d82f71e77c586e29edb93b129

Content-Type

Set as application/json

application/json

Timestamp

Seconds (Unix epoch)

1601312252

Nonce

Random string that is also required for the payload request.

49936

Example HMAC Input (using algo as the secret key)

POST:/api/controls/tone/start:6e43c05d82f71e77c586e29edb93b129:application/json:1601312252:49936

Example HMAC Key

2e109d7aeed54a1cb04c6b72b1d854f442cf1ca15eb0af32f2512dd77ab6b330

Headers

Header Name

Required

Values

Content-Type

Required

application/json

Content-MD5

Required

Same as HMAC input

Authorization

Required

hmac admin:{nonce from HMAC input}:{HMAC key}

Date

Required

day, date month year HH:MM:SS GMT

Example Payload Request

Hypertext Transfer Protocol
 POST /api/controls/ton/start HTTP/1.1\r\n
 Host: 10.0.0.161\r\n
 Accept: */*\r\n
 Transfer-Encoding: chunked\r\n
 Content-Type: application/json\r\n
 Content-Md5: 6e43c05d82f71e77c586e29edb93b129\r\n
 Authorization: hmac admin:1028014788:c450024af4493f9cdf582499456bf58d7e134b161566e764e61bd52d24f759dc\r\n
 Date: Mon, 28 Sep 2020 17:07:18 GMT\r\n
 \r\n
 [Full request URI: http://10.0.0.161/api/controls/tone/start]
 [HTTP request 1/1]
 File data 39 bytes

JavaScript Object Notation: application/json
 Object
  Member Key: path
   String value: page-notif.wav
   Key: path
  Member Key: loop
   False value
   Key: loop

Standard Authentication Request without a JSON Payload

A standard authentication payload will require generating an HMAC key. This is generated by the RESTful API password (secret key) and the HMAC input. Generate HMAC with password and HMAC input string as digest using SHA-256

The hmac input is formatted as: [request_method]:[request_uri]:[timestamp]:[nonce]

Element

Notes

Example

Request method

GET, POST, PUT, or DELETE

POST

Request URI

Must start with a forward slash

/api/controls/tone/start

Timestamp

Seconds (Unix epoch)

1601312252

Nonce

Random string that is also required for the payload request.

49936

Example HMAC Input (using algo as the secret key)

GET:/api/settings/audio.page.vol:1601312252:49936

Example HMAC Key

c5b349415bce0b9e1b8122829d32fbe0a078791b311c4cf40369c7ab4eb165a8

Headers

Header Name

Required

Values

Authorization

Required

hmac admin:{nonce from HMAC input}:{HMAC key}

Date

Required

day, date month year HH:MM:SS GMT

Example Payload Request

Hypertext Transfer Protocol
 GET /api/settings/audio.page.vol HTTP/1.1\r\n
 Host: 10.0.0.161\r\n
 Accept: */*\r\n
 Authorization: hmac admin:881767496:c5b349415bce0b9e1b8122829d32fbe0a078791b311c4cf40369c7ab4eb165a8\r\n
 Date: Mon, 28 Sep 2020 17:07:18 GMT\r\n
 \r\n
 [Full request URI: http://10.0.0.161/api/controls/tone/start]
 [HTTP request 1/1]
 [Response in frame: 304]

Hypertext Transfer Protocol
 HTTP/1.1 200 OK\r\n
 Server: nginx/1.10.3\r\n
 Date: Mon, 28 Sep 2020 17:07:05 GMT\r\n
 Content-Type: application/json\r\n
 Transfer-Encoding: chunked\r\n
 Connection: keep-alive\r\n
 Cache-Control: no-cache, no-store, must-revalidate\r\n
 Pragma: no-cache\r\n
 Expires: 0\r\n
 X-Frame-Options: DENY\r\n
 \r\n
 [HTTP request 1/1]
 [Time since request: 0.242859963 seconds]
 [Request in frame: 297]
 [Request URI: http://10.0.0.161/api/settings/audio.page.vol]
 HTTP chunked response
 File Date: 26 bytes

JavaScript Object Notation: application/json
 Object
  Member Key: audio.page.vol
   String value: -42dB
   Key: audio.page.vol 

Basic Authentication Request

Headers

Header Name

Required

Values

Authorization

Required

Basic [base64]

Example Payload Request

Hypertext Transfer Protocol
 POST /api/controls/ton/start HTTP/1.1\r\n
 Host: 10.0.0.161\r\n
 Accept: */*\r\n
 Content-Type: application/json\r\n
 Content-Md5: 6e43c05d82f71e77c586e29edb93b129\r\n
 Content-Length: 39\r\n
 Authorization: Basic YWRtaW46YWxnbw==\r\n
 User-Agent: curl/7.58.0\r\n
 \r\n
 [Full request URI: http://10.0.0.161/api/controls/tone/start]
 [HTTP request 1/1]
 [Response in frame: 760]
 File data 39 bytes

JavaScript Object Notation: application/json
 Object
  Member Key: path
   String value: page-notif.wav
   Key: path
  Member Key: loop
   False value
   Key: loop

RESTful API Calls

The details below describe how Algo RESTful API can be used to access, manipulate, and trigger actions on Algo IP endpoints on your network through HTTP/HTTPS requests. Requesting systems can interact with Algo devices through a uniform and predefined set of stateless operations.

HTTP/HTTPS requests made to “{device IP address}/URI” with a JSON payload will provide a JSON response. The payload format of all the requests and responses are JSON, except file operations.

The difference between POST and PUT request is, PUT changes or creates a permanent resource that survives a reboot, while POST only controls a device for the current session.

Device Information

Retrieve the value of a specific parameter

Get the value of a specific configuration set on the device. Any parameter name that is listed in the Provisioning Parameter Guide that is applicable to the device can be used.

Applicable Products: All

Minimum Firmware Version: 3.3

URI

GET /api/settings/{parameter name}

Parameters

Element

Description

Type

Notes

{parameter name}

Refers to the parameter name for the configuration setting of interest. See the Parameter column in the Provisioning Parameter Guide for valid values.

String

All values will be retrieved as strings, no matter the parameter or setting.

Sample Request

GET http://10.12.123.12/api/settings/audio.page.vol

Sample Response

{
    "audio.page.vol": "0dB"
}

Set the value of a specific parameter

Change or set the value of a specific device configuration. Any parameter name that is listed in the Provisioning Parameter Guide that is applicable to the device can be used.

Applicable Products: 8180(G2), 8186, 8190, 8190S, 8301, 8373

Minimum Firmware Version: 3.3

URI

PUT /api/settings

Parameters

Element

Description

Type

Notes

{parameter name}

Refers to the parameter name for the configuration setting of interest. See the Parameter column in the Provisioning Parameter Guide for valid values.

String

All values will be retrieved as strings, no matter the parameter or setting.

Sample Request

PUT http://10.12.123.12/api/settings

{
    "audio.page.vol": "0dB"
}

Retrieve a list of all tone files installed on the device

Get the full list of tones available on the device including both pre-loaded tones and custom tones that were uploaded manually.

Applicable Products: All

Minimum Firmware Version: 5.0

URI

GET /api/info/tonelist

Notes:

  • tonelist refers to the tone files uploaded to the device. All devices are pre-loaded with 10+ tone files

Response

Element

Description

Type

tonelist

array of tone files

tone file names

The file name of the tone uploaded to the device

String

Sample Response

{
    "tonelist": [
        "bell-na.wav",
        "bell-uk.wav",
        "buzzer.wav",
        "chime.wav",
        "dogs.wav",
        "gong.wav",
        "page-notif.wav",
        "speech-test.wav",
        "tone-1kHz-max.wav",
        "warble1-low.wav",
        "warble2-med.wav",
        "warble3-high.wav",
        "warble4-trill.wav"
    ]
}

Retrieve the device information from the Status page of the device web interface

Get a list of the device information that is also available on the Status page of the device web interface.

Applicable Products: All

Minimum Firmware Version: 5.4

URI

GET /api/info/status

Response

Element

Description

Type

Response

Device Name

The assigned name of the device

String

{device name}

SIP Registration

The status of SIP registration for the device

String

  • No Account

  • Attempting to contact server...

  • Successful

  • Deregistered

  • Authenticating...

  • Rejected by server

  • No reply from server

Call Status

A status of a call line whether in progress or idle.  

String

  • Idle

  • Ringing

  • Connected

  • Recording Message

  • Playing Delayed Page

Provisioning Status

The current status of provisioning

String

  • Disabled

  • Successful

  • None Found

MAC

The MAC address of the device.

String

The device MAC address

IPv4

If available, the IPv4 address of the device and default gateway.

String

The device IPv4 address

IPv6

If available, the IPv4 address of the device and default gateway

String

The device IPv6 address

Switch Port ID

The ID of the port on the  switch the device is plugged into

String

Date / Time

The date and time currently used by the device.

String

Day Mon Date HH:MM:SS GMT Year

Current Action

Used for scheduler events (tone, audio stream, or SIP call with tone)

String

Multicast Mode

The multicast mode the device is set to. If the device is in receiver or transmitter mode, the zone it is in will also be displayed when idle.  

String

  • Disabled

  • Receiver (Active)

  • Receiver (Idle)

  • Transmitter (Active)

  • Transmitter (Idle)

Volume

The volume set on the device, including dB

String

Page Volume: ## (##dB)

Relay Input Status

A status of whether or not the relay input is in use

String

  • Disabled

Sample Response

{
    "Device Name": "pagingadapter-12345",
    "SIP Registration": "Page, No Account;",
    "Call Status": "Idle",
    "Provisioning Status": "None Found",
    "MAC": "00:22:ee:11:11:11",
    "IPv4": "10.10.101.10/1, Gateway: 10.0.1.1",
    "IPv6": "Not Available",
    "Switch Port ID": "name eth0",
    "Date / Time": "Thu Feb  6 17:13:44 GMT 2025",
    "Current Action": "None",
    "Multicast Mode": "Disabled, RTP: 0, PPA: 0, Spk: 0",
    "Volume": "Page Volume: 10 (0dB)",
    "Relay Input Status": "Disabled"
}

Retrieve the device information from the About page of the device web interface

Get a list of the device information that is also available on the About page of the device web interface.

Applicable Products: All

Minimum Firmware Version: 5.4

URI

GET /api/info/about

Response

Element

Description

Type

Product Name

The full name of the product.

String

Firmware Version

The firmware currently installed on the device.

String

MAC Address

The MAC address of the device

String

Manufacturer Certificate

States whether or not the manufacturer certificate has been installed

String

Sample Response

{
    "Product Name": "Algo 8301 IP Paging Adapter & Scheduler",
    "Firmware Version": "5.5_beta11",
    "MAC Address": "00:22:ee:11:11:11",
    "Manufacturer Certificate": "Installed"
}

Device Management

Restore the device to factory default

Restore the device to the factory default.

Applicable Products: All

Minimum Firmware Version: 5.4

URI

POST /api/settings/action/restore

Reboot the device

Reboot the device.

Applicable Products: All

Minimum Firmware Version: 3.3

URI

POST /api/controls/reboot

Check for the latest firmware available for the device

Get the firmware version the device is currently using.

Applicable Products: All

Minimum Firmware Version: 4.1

URI

POST /api/controls/upgrade/check

Sample Request

GET http://10.30.238.37/api/controls/upgrade/check

Response

Element

Responses

Type

version

  • updated

  • {firmware version}

String

Sample Response

{
    "version": "updated"
}

Upgrade the device with the most recently available firmware

Update the device with the latest firmware available.

Applicable Products: All

Minimum Firmware Version: 4.1

URI

POST /api/controls/upgrade/start

Sample Request

GET http://10.30.238.37/api/controls/upgrade/start

Response

Element

Description

Type

status

  • updated

  • upgrading {firmware version}

  • message

String

url

The URL for the firmware download file

String

Set the API multicast mode

Applicable to multicast streams controlled by the /api/controls/tone/start command. Use this call to update stream parameters, but not change the configurations directly on the device.

Applicable Products: 8301

Minimum Firmware Version: 5.0

URI

PUT /api/state/mcast/update/

Parameters

Element

Description

Type

Required

Notes

mode

The multicast mode of the device

String

Required

address

Use the IP address used for the command: /api/controls/tone/start/

String

Required

port

Use the port number used for the command: /api/controls/tone/start/

String

Required

type

The multicast transfer type

String

Required

Valid values: “rtp” or “poly”

group

The Poly group being used.

Integer

Optional

Valid values: numbers 1 through 25. Applicable only when “type”: “poly”

File Management

List file directory contents

Get a list of uploaded files available in a specified file folder on the device.

Applicable Products: All except 8039

Minimum Firmware Version: 5.5

Note:

  • A GET or POST call can be used

GET URI

GET /api/files/{filepath}

GET Parameters

Element

Default filepaths

Description

{filepath}

certs

Is used for server certificates

debug

Is used by Algo support to store files about the device to help troubleshoot

license

Is used to hold licenses

tones

Is used to hold audio files in .WAV or .MP3 format

GET Sample Request

GET http://10.30.238.37/api/files/debug

or

POST URI

POST /api/files/download

POST Sample Request

POST http://10.12.123.12/api/files/download 

{ 
   "path": "/tones"
}

Response

Element

Description

filelist

An array of files stored in the file folder

Sample Response

{
    "filelist": [
        "netcap-20250110t194944re4.pcap",
        "netcap-20250110t195031r55.pcap",
        "netcap-20250122t221635rc9.pcap",
        "netcap-20250130t222903r12.pcap",
        "netcap-20250130t231453ra0.pcap",
        "netcap-20250203t194006rf0.pcap",
        "netcap-20250203t194559red.pcap"
    ]
}

Download a file from the device

Select a file to download by specifying the file path.

Applicable Products: All except 8039

Minimum Firmware Version: 5.5

Note:

  • A GET or POST call can be used

Parameters

Element

Description

{filepath}

The folder structure to be directed to within the device File Manager

{filename}

The file name of interest

GET URI

GET /api/files/{filepath}/{filename}

GET Sample Request

GET http://10.30.238.37/api/files/tones/chime.wav

or

POST URI

POST /api/files/download

POST Sample Request

POST http://10.12.123.12/api/files/download 
{
   "path": "/tones/chime.wav"
}

Add a new file or replace an existing one

When this call is used a new file with the designated file path and file name will be added to the device. If the file path and file name already exist, the existing file will be replaced by the one used in the call.

Applicable Products: All except 8039

Minimum Firmware Version: 5.5

When this call is used a new file with the designated file path and file name will be added to the device. If the file path and file name already exist, the existing file will be replaced by the one used in the call.

URI

PUT /api/files/{filepath}/{filename}

Parameters

Element

Description

{filepath}

The folder structure to be directed to within the device File Manager

{filename}

The file name of interest

Sample Request

PUT http://10.12.123.12/api/files/tones/custom-audio.wav

Delete a file

Select a file to delete by specifying the file path.

Applicable Products: All except 8039

Minimum Firmware Version: 5.5

When this call is used a new file with the designated file path and file name will be added to the device. If the file path and file name already exist, the existing file will be replaced by the one used in the call.

URI

DELETE /api/files/

Parameters

Element

Description

{filepath}

The folder structure to be directed to within the device File Manager

{filename}

The file name of interest

Sample Request

DELETE http://10.12.123.12/api/files/
{
   "path": "/tones/chime.wav"
}

Door Control

Lock a door

Control whether the device being called or a secondary connected device locks a door.

Applicable Products: 8039, 8028(G2), 8201, 8063

Minimum Firmware Version: 3.3

URI

POST /api/controls/door/lock

Parameters

Element

Description

Type

Notes

doorid

Used to indicate whether lock control is to be triggered directly by the device or indirectly by a connected secondary device.

String

Valid values: “netdc1” or “local”

Notes:

  • netdc1 = control the remote network door controller (8063)

  • local = control the local relay

Sample Request

POST http://10.12.123.12/api/controls/door/lock

{
   "doorid": "local"
}

Unlock a door

Control whether the device being called or a secondary connected device unlocks a door.

Applicable Products: 8039, 8028(G2), 8201, 8063

Minimum Firmware Version: 3.3

URI

POST /api/controls/door/unlock

Parameters

Element

Description

Type

Notes

doorid

Used to indicate whether lock control is to be triggered directly by the device or indirectly by a connected secondary device.

String

Valid values: “netdc1” or “local”

Notes:

  • netdc1 = controller the remote network door controller (8063)

  • local = control the local relay

Sample Request

POST http://10.12.123.12/api/controls/door/unlock

{
   "doorid": "local"
}

Momentarily unlock a door

Control whether the device being called or a secondary connected device unlocks a door for a specified amount of time.

Applicable Products: 8039, 8028(G2), 8201, 8063

Minimum Firmware Version: 5.5

URI

GET /api/files/{filepath}

Parameters

Element

Description

Type

Notes

doorid

Used to indicate whether lock control is to be triggered directly by the device or indirectly by a connected secondary device.

String

Valid values: “netdc1” or “local”

duration

The time in seconds that the door should be unlocked for

String

Sample Request

POST http://10.12.123.12//api/controls/door/unlock
{
   "doorid": "local",
   "duration": "10"
}

Audio Control

Retrieve the ambient noise

Get the dB measurement of the ambient noise of the environment the device is in.

Applicable Products: All speakers

Minimum Firmware Version: 3.3

URI

GET api/info/audio.noise.level

Response

Element

Description

Type

Notes

audio.noise.level

The measured level of ambient noise in dB

String

Will only collect this data if ambient noise compensation is enabled.

Sample Response

{
    "audio.noise.level": "54"
}

Change ambient noise level

Manually update the ambient noise level. This is intended to be used by devices that are controlling volumes but may not directly be in the environment where the noise is. For example, a securely location 8301 set as a multicast transmitter controlling the audio of multiple speakers set as multicast receivers in a warehouse.

Applicable Products: 8190, 8190S, 8410, 8420, 8186, 8188, 8189, 8180G2, 8301

Minimum Firmware Version: 5.4

URI

POST /api/controls/noise/update

Parameters

Element

Description

Type

level

The measured level of ambient noise in dB

String

Sample Request

POST http://10.12.123.12/api/controls/door/unlock
{
   "level": "50"
}

Play default test tone

Play the default tone assigned to the device.

Applicable Products: 8190, 8190s, 8410, 8420, 8300, 8039, 8028g2, 8186, 8373, 8188, 8189, 8180g2, 8301, 8201

Minimum Firmware Version: 5.4

URI

POST /api/controls/test/start

Loop default test tone

Play the default tone assigned to the device on a loop until a separate call stops the loop.

Applicable Products: 8190, 8190s, 8410, 8420, 8300, 8039, 8028g2, 8186, 8373, 8188, 8189, 8180g2, 8301, 8201

Minimum Firmware Version: 5.4

URI

POST /api/controls/test/loop

Stop default test tone

Stop playing the default tone assigned to the device.

Applicable Products: 8190, 8190s, 8410, 8420, 8300, 8039, 8028g2, 8186, 8373, 8188, 8189, 8180g2, 8301, 8201

Minimum Firmware Version: 5.4

URI

POST /api/controls/test/stop

Play or loop a selected tone

Play a selected tone uploaded to the device once or on a loop.

Applicable Products: All speakers, paging adapters, 8028(G2), 8201, 8039

Minimum Firmware Version: 5.4

URI

POST /api/controls/tone/start

Parameters

Element

Description

Type

Notes

path

The file name of the tone to be played

string

loop

Set the tone file to loop

boolean

mcast

Configure the device to multicast transmit and play a tone or loop a tone on a receiving device.

boolean

Multicast must be on to use. If multicast is turned on via /mcast/update at any time, this call will default to these settings. If multicast is only configure via web interface, this call will default to the web interface settings.

Sample Request

POST http://10.12.123.12/api/controls/tone/start
{
	"path": "chime.wav",
	"loop": true,
	"mcast": false
}

Start listening to a direct audio stream

Open the path to an audio stream to listen.

Applicable Products: All

Minimum Firmware Version: 5.3.4

URI

POST /api/controls/rx/start

Stop listening to a direct audio stream

Close the path to an audio stream to stop listening.

Applicable Products: All

Minimum Firmware Version: 5.3.4

URI

POST /api/controls/rx/stop

Call Control

Call a phone extension and play an audio file

Call an assigned phone extension and play an audio file. The extension can be used to broadcast the audio file via multicast for a set amount of time if multicast is configured.

Applicable Products: All speakers, 8301

Minimum Firmware Version: 3.3

URI

POST /api/controls/call/start

Parameters

Element

Description

Type

Notes

extension

The phone extension to call

String

tone

The file name of the tone to play

String

Used to call and play a tone

interval

How long to wait to replay the tone after it ends

String

maxdur

The total time to play the tone on a repeated loop

String

Note for the 8301:

  • If /api/controls/tone/start is used before /api/state/mcast/update, the tone will play using the web interface settings

Sample Request

POST http://10.12.123.12/api/controls/call/start
{
	"extension": "123",
	"tone": "chime.wav",
	"interval": "3",
	"maxdur": "60"
}

End a call to a phone extension

End a call to a phone extension.

Applicable Products: 8301

Minimum Firmware Version: 3.3

URI

POST /api/controls/call/stop

Initiate a one-way page call to receive an audio stream from a specified extension

Open an extension to be able to receive an audio stream. The audio stream must be configured separately.

Applicable Products: All Speakers

Minimum Firmware Version: 5.3.4

URI

POST /api/controls/call/page

Parameters

Element

Description

Type

Notes

extension

The phone extension to call

String

Sample Request

POST http://10.12.123.12/api/controls/call/page
{
	"extension": "123"
}

Relay Control

Retrieve the status of the relay input terminal

Get the status of a relay input terminal to see if it is in use on the device.

Applicable Products: 8301, 8305, 8186, 8188, 8189, 8180, 8190, 8190S, 8410, 8420, 8138, 8128

Minimum Firmware Version: 3.3

URI

GET api/info/input.relay.status

Response

Element

Description

Type

Notes

input.relay.status

States whether or not the relay is connected and actively in use.

String

Responses include: “idle” or “active”, “Disabled”

If active, will also describe the activity.

Sample Response

{
    "input.relay.status": "Disabled"
}

Retrieve the status of an 8063 input terminal

Get the status of an input terminal to see if it is in use on the device.

Applicable Products: 8063

Minimum Firmware Version: 4.1

URI

GET api/info/input.relay1.status

or

GET api/info/input.relay2.status

Response

Element

Description

Type

Notes

input.relay{number}.status

States whether or not the relay is connected and actively in use.

String

Responses include: “idle” or “active”, “Disabled”

If active, will also describe the activity.

Sample Response

{
    "input.relay1.status": "Idle"
}

Enable the 8063 24V AUX Out Relay

Enable the 24V AUX out relay on the 8063.

Applicable Products: 8063

Minimum Firmware Version: 5.0

URI

POST api/controls/24v/enable

Disable the 8063 24V AUX Out Relay

Disable the 24V AUX out relay on the 8063.

Applicable Products: 8063

Minimum Firmware Version: 5.0

URI

POST api/controls/24v/disable

Enable the 8063 Output Relay

Enable the output relay on the 8063.

Applicable Products: 8063

Minimum Firmware Version: 5.0

URI

POST api/controls/relay/enable

Disable the 8063 Output Relay

Disable the output relay on the 8063.

Applicable Products: 8063

Minimum Firmware Version: 5.0

URI

POST api/controls/relay/disable

Screen Control

Display a single image on the device screen

Display one static image on the device screen.

Applicable Products: 8410, 8420

Minimum Firmware Version: 5.3.4

URI

POST /api/controls/screen/start

Parameter

Element

Description

Type

Notes

type

The type of background to display

String

Set as “image”

image1

The file name of the image

String

Sample Request

POST http://10.12.123.12/api/controls/screen/start
{
	"type": "image",
	"image1": "school.jpeg"
}

Display scrolling text on the device screen

Display scrolling text on top of a static image on the device screen.

Applicable Products: 8410, 8420

Minimum Firmware Version: 5.3.4

URI

POST /api/controls/screen/start

Parameter

Element

Description

Type

Notes

type

The type of background to display

String

Set as “image”

image1

The file name of the image

String

text1

The text to be displayed on the device

String

textColor

The color of the text

String

Valid values= SVG color name or HEX code

Default= “black”

textFont

The font of the text

String

Valid values include: “acumin”, “bookman”, “din”, “inter”, “nixie”, “overpass”, “roboto”

Default= “inter”

textPosition

Where the text should be displayed on the screen

String

Valid values include: “top”, “middle”, “bottom”

Default= “bottom”

textScroll

Turn text scroll on or off

Boolean

textScrollSpeed

The speed at which the text scrolls

String

Valid values include: “1”, “2”, “3”, “4”, “5”

Default= “1”

textSize

The size of the text

String

Valid values include: “small”, “medium, “large”

Default=”large”

Sample Request

POST http://10.12.123.12/api/controls/screen/start
{
	"type": "image",
	"image1": "school.jpeg",
	"text1": "Class is in session",
	"textColor": "forestgreen",
	"textFont": "inter",
	"textPosition": "middle",
	"textScroll": true
	"textScrollSpeed": "3",
	"textSize": "medium"
}

Display a clock on the device screen

Display a digital or analog clock on the device screen.

Applicable Products: 8410, 8420

Minimum Firmware Version: 5.3.4

URI

POST /api/controls/screen/start

Parameter

Element

Description

Type

Notes

type

The type of clock to display

String

Valid values: “digitalClock” or “analogClock”

clockFormat

Display the time in a 12h or 24h format.

String

Use if type=digitalClock

Valid values: “12h”, “24h”

Default= “24h”

clockSeconds

clockSeconds

Boolean

Use if type=digitalClock

Default= false

clockSecondsAnalog

Enable or disable displaying clock seconds

Boolean

Use if type= analogClock

Default= true

clockBgColor

The background color of the clock

String

Use if type=digitalClock

Valid values= SVG color name or HEX code

clockFgColor

The foreground color of the clock

String

Use if type=digitalClock

Valid values= SVG color name or HEX code

Default= “white”

analogBgColor

The background color of the clock

String

Use if type=analogClock

Valid values= SVG color name or HEX code

analogFgColor

The foreground color of the clock

String

Use if type=analogClock

Valid values= SVG color name or HEX code

Default= “black”

analogSecondsColor

The color of the seconds hand on the analog clock

String

Use if type=analogClock

Valid values= SVG color name or HEX code

clockFont

The font of the clock text

String

Use if type=digitalClock

Valid values include: “acumin”, “bookman”, “din”, “inter”, “nixie”, “overpass”, “roboto”

Default= “inter”

clockBgImage

The file name of the background image to use behind the clock if needed.

String

Use if type=digitalClock

Sample Request

POST http://10.12.123.12/api/controls/screen/start
{
	"type": "digitalClock”,
	"clockFormat": "12h",
	"clockSeconds": "1",
	"clockBgColor": "navy",
	"clockFgColor": "beige",
	"clockFont": "inter",
	"clockBgImage": "school-entrance.jpeg"
}

Display flashing images on the device screen

Display multiple images one after another on the device screen.

Applicable Products: 8410, 8420

Minimum Firmware Version: 5.3.4

URI

POST /api/controls/screen/start

Parameter

Element

Description

Type

Notes

type

The type of background to display

String

Set as “blitz”

image1

The image file name to use

String

image2

The image file name to use

String

The image file name to use

String

Sample Request

POST http://10.12.123.12/api/controls/screen/start
{
	"type": "blitz",
	"image1": "school_entrance.jpeg",
	"image2": "school_logo.jpeg"
}

Display a slideshow on the device screen (using file names)

Select a pre-configured slides to display on the screen by specifying file names.

Applicable Products: 8410, 8420

Minimum Firmware Version: 5.3.4

URI

POST /api/controls/screen/start

Parameter

Element

Description

Type

Notes

screenType

The type of screen to display

String

Valid value: “slideshow”

duration

Duration of each slide in seconds

Integer

slideNames

The file names of the slides to display in the slideshow

Comma-separated values as a string

Format is: “slide1, slide2, slide3, …”

overrideStrobe

Use specified strobe parameters for the slideshow instead of the strobe parameters of each individual slide.

Boolean

Sample Request

POST http://10.12.123.12/api/controls/screen/start
{
	"screenType": "slideshow",
    "duration": 10,
	"slideNames": "slide1, slide2, slide3",
	"overrideStrobe": true
}

Display a slideshow on the device screen (using slide IDs)

Select a pre-configured slides to display on the screen by specifying slide IDs.

Applicable Products: 8410, 8420

Minimum Firmware Version: 5.3.4

URI

POST /api/controls/screen/start

Parameter

Element

Description

Type

Notes

screenType

The type of screen to display

String

Valid value: “slideshow”

duration

The file names of the slides to display in the slideshow

Integer

slide

Duration of each slide in seconds

Comma-separated values as a string

overrideStrobe

Use specified strobe parameters for the slideshow instead of the strobe parameters of each individual slide.

Boolean

Sample Request

POST http://10.12.123.12/api/controls/screen/start
{
	"screenType": "slideshow",
	"duration": 10,
    "slide": "1, 2, 3",
	"overrideStrobe": false
}

Add strobe light to slide or slideshow command

For any of the above calls that control screen display, use the parameters below to customize the strobe light alongside the slide or slideshow

Element

Description

Type

Notes

strobeFlash

The strobe flash pattern to use

Integer

See Provisioning Parameter details for what numbers correlate to

strobeColor

The color to display on the strobe

String

Valid values: red, blue, green, amber

strobeColor2

The second color to display on the strobe if desired

String

Valid values: red, blue, green, amber

strobeLedlvl

The brightness of the strobe light.

String

Valid values are between 0-255.

Stop a screen pattern and return the screen to default

Return a screen to the default setting.

Applicable Products: 8410, 8420

Minimum Firmware Version: 5.3.4

URI

POST /api/controls/screen/stop

Strobe Lights

Start a strobe light

Turn on a strobe light.

Applicable Products: 8128(G2), 8138, 8190S

Minimum Firmware Version: 3.3

URI

POST /api/controls/strobe/start

Parameters

Element

Description

Type

Notes

pattern

The number of the pattern set.

Integer

See the provisioning guide for more details.

color1

The color to set the strobe

String

Valid values: red, blue, green, amber

color2

The second color for the strobe to use if the pattern uses two colors.

String

Only applicable to 8138. Valid values: red, blue, green, amber

ledlvl

The brightness of the strobe light.

String

Valid values are between 0-255.

Sample Request

POST http://10.12.123.12/api/controls/strobe/start
{
	"pattern": 1,
	"color1": "red",
	"color2": "blue",
	"ledlvl": "100"
}

Stop a strobe light

Turn off a strobe light.

Applicable Products: 8128(G2), 8138, 8190S

Minimum Firmware Version: 3.3

URI

POST /api/controls/strobe/stop