Introduction
This ProAmp API Functions List is intended for system programmers and driver developers. If you are an integrator or dealer, we recommend you use our pre-compiled drivers which are free, open source and available from the Pulse-Eight Remote Monitoring Portal.
Note that this is a public list of API functions; there may be commands that have not been documented or do not have an accompanying example. These private functions (internal) have not been included here as they mainly only exist for one-time setup of a system which is strongly recommended to be done through the web interface for our ProAmp product range.
This document should be used in conjunction with the relevant ProAmp product Manual and the API Documentation Overview section in the Remote Monitoring Portal.
IP Support
IP is our preferred communication protocol. The system is built on top of HTTP using a REST based architecture with JSON as the data transmission format. JSON is an extensible markup and order of data returned cannot be guaranteed. If you are writing a driver, we strongly recommend that you parse the JSON data properly, as not doing so is highly likely to result in the driver failing to work after a firmware update. JSON interpreters exist for all major languages used by Control system drivers, including Lua, Small and Javascript. We recommend that you view the Javascript source code in the main web interface, the entire web interface on our systems is static files calling the API as defined in the documentation.
RS232 Support
We include a legacy RS232 port on most of our products, this is to enable backwards compatibility with legacy control systems. We do not recommend its use if IP is available. There might be a limited set of commands documented throughout this API Functions List that are supported properly by RS232 control.
We recommend that you only use Port/List/Concise and Port/Set commands via RS232.
Connection Details: Baud Rate (57600), Data Bits (8), Parity (None), Stop Bits (1).
Getting Support
Pulse-Eight technical support team are happy to help with any questions regarding the API or any areas of the API that are not clearly documented.
For questions regarding this API Function List, please contact us at support@pulse-eight.com.
However, we cannot offer programming assistance in writing your driver, we can only provide assistance on our API documentation.
API Functions
Power
Description: Control the power state of the selected zone output
Command: amp/power/{zone}/{state}
Zone = 0-7
Power on = 1
Power off = 0
| Example | Example Result | Comments |
| amp/power/0/1 | {"Result":true,"Message":"Changed"} |
Volume
Description: Manage the audio volume level for selected zone output
Command: amp/volume/[zone]/[{left volume}]/[{right volume}]
Zone = 0-7
Left volume, right volume = 0-100
Example | Example Result | Comments |
amp/volume/ | {"Result":false,"ErrorMessage":"Missing Or Invalid Parameter 'zone'"} | |
amp/volume/0 | {"Result":true,"volLeft":44,"volRight":44} | if dolby disabled, returns std volume. zones 4-7 will always return std volume |
amp/volume/0 | {"Result":true,"dolbyvolume":44} | if dolby == 1, zone 0-2 or if dolby==2, zone 0-3 will return dolby volume. |
amp/volume/0/50 | {"volLeft":50,"volRight":50,"Result":true,"Message":"Changed"} | if std mode, sets both Left and Right to 50. if dolby enabled, will set dolby volume to 50 |
amp/volume/0/50/40 | {"volLeft":50,"volRight":40,"Result":true,"Message":"Changed"} | if std mode, sets Left to 50 and Right to 40. if dolby enabled, will set dolby volume to 50 |
amp/volume/0/up | {"dolbyvolume":46,"Result":true,"Message":"Changed"} | increment by 1 |
amp/volume/0/down | {"dolbyvolume":45,"Result":true,"Message":"Changed"} | decrement by 1 |
Mute
Description: Manage channel full mute (on/off) for selected zone output
Command: amp/mute/{zone}/{channel}/[state]
zone 0-7
mute 0 = Normal, 1 = Mute Left, 2 = Mute Right, 3 = Mute Left and Right
Example | Example Result | Comments |
amp/mute | {"Result":false,"ErrorMessage":"Missing Or Invalid Parameter 'zone'"} | |
amp/mute/0 | {"Result":true,"mute":0} | if dolby disabled, returns std mute zones 4-7 will always return std mute |
amp/mute/0 | {"Result":true,"dolbymute":0} | if dolby == 1, zone 0-2 or if dolby==2, zone 0-3 will return dolbymute. |
amp/mute/0/0 | {"Result":true,"Message":"Changed"} | if std mode, will toggle mute for zone 0. If dolby enabled for that zone, will toggle dolby mute |
amp/mute/0/1 | {"Result":true,"Message":"Changed"} | if std mode, will toggle mute Left only. |
amp/mute/0/2 | {"Result":true,"Message":"Changed"} | if std mode, will toggle mute Right only. |
amp/mute/0/0/1 | {"Result":true,"Message":"Changed"} | if std mode, will mute both |
amp/mute/0/0/0 | {"Result":true,"Message":"Changed"} | if std mode, will unmute both |
amp/mute/0/1/1 | {"Result":true,"Message":"Changed"} | if std mode, will mute left |
amp/mute/0/1/0 | {"Result":true,"Message":"Changed"} | if std mode, will unmute left |
amp/mute/0/2/1 | {"Result":true,"Message":"Changed"} | if std mode, will mute right. |
amp/mute/0/2/0 | {"Result":true,"Message":"Changed"} | if std mode, will unmute right |
Stdzone
Description: Manage settings of standard stereo zones
Command: amp/stdzone {POSTdata}
Post: {"zone":0,"volLeft":43,"volRight":43,"mute":0,"minVol":40,"maxVol":208,
"bridgedMode":1,"pwrMode":1,"autoLevel":80,"autoTime":36000,"clip":0}
zone = 0-7
volLeft, volRight = 0-100, 0=Mute, 1=minVol, 100=maxVol, 50=50% between minVol and maxVol
minVol, maxVol = 0-248 in 0.5dB steps, 1=-99.5dB, 200=0dB, 248=+24dB
mute= 0 = Normal, 1 = Mute Left, 2 = Mute Right, 3 = Mute Left and Right
bridgedMode = 0 = Normal, 1 = Bridged
pwrMode = 0=Off, 1 = On, 2 = 12Vtrigger, 3=Auto
autolevel = level when zone turns on. 0-248 in 0.5dB steps, 1=-99.5dB, 200=0dB, 248=+24dB
autoTime = time, in seconds, before a quiet zone turns off
Example | Example Result | Comments |
amp/stdzone{"zone":0, "volLeft":43,"volRight":43} | {"Result":true,"Message":"Zone updated"} | all POST data are optional except zone |
amp/stdzone | {"Result":true,"zones":[{"zone":0,"channelMode":0,"volLeft":43,"volRight":43,"mute":0,"minVol":40,"maxVol":208,"bridgedMode":1,"pwrMode":1,"autoLevel":80,"autoTime":36000,"clip":0},{"zone":1,"channelMode":0,"volLeft":44,"volRight":44,"mute":0,"minVol":40,"maxVol":224,"bridgedMode":0,"pwrMode":1,"autoLevel":80,"autoTime":36000,"clip":0},{"zone":2,"channelMode":0,"volLeft":44,"volRight":44,"mute":0,"minVol":40,"maxVol":224,"bridgedMode":0,"pwrMode":1,"autoLevel":80,"autoTime":36000,"clip":0},{"zone":3,"channelMode":0,"volLeft":44,"volRight":44,"mute":0,"minVol":40,"maxVol":224,"bridgedMode":0,"pwrMode":1,"autoLevel":80,"autoTime":36000,"clip":0},{"zone":4,"channelMode":0,"volLeft":44,"volRight":44,"mute":0,"minVol":40,"maxVol":224,"bridgedMode":0,"pwrMode":1,"autoLevel":80,"autoTime":36000,"clip":0},{"zone":5,"channelMode":0,"volLeft":50,"volRight":50,"mute":0,"minVol":40,"maxVol":224,"bridgedMode":0,"pwrMode":1,"autoLevel":80,"autoTime":36000,"clip":0},{"zone":6,"channelMode":0,"volLeft":44,"volRight":44,"mute":0,"minVol":40,"maxVol":224,"bridgedMode":0,"pwrMode":1,"autoLevel":80,"autoTime":36000,"clip":0},{"zone":7,"channelMode":0,"volLeft":35,"volRight":35,"mute":0,"minVol":40,"maxVol":224,"bridgedMode":0,"pwrMode":1,"autoLevel":80,"autoTime":36000,"clip":0}]} |
|
DolbySettings
Description: Manage global settings of Dolby multi-channel
Command: amp/dolbysettings {POSTdata}
Post: {"dolbyMode":1,"pcmUpMixF":0,"minVol":40,"maxVol":224,"bass":128,
"treble":128}
dolbyMode = 0 = Standard mode, 1 = Dolby 3-zone mode, 2 = Dolby 4-zone mode
pcmUpMixF= 0 = Pass through, 1 = up-mix PCM to 5.1
volume = 0-100, 0=Mute, 1=minVol, 100=maxVol, 50=50% between minVol and maxVol
minVol, maxVol = 0-248 in 0.5dB steps, 1=-99.5dB, 200=0dB, 248=+24dB
bass = 104 to 152 (128=Flat,104=-12dB,152=+12dB)
treble = 104 to 152 (128=Flat,104=-12dB,152=+12dB)
Example | Example Result | Comments |
amp/dolbysettings{"dolbyMode":1,"pcmUpMixF":0} | {"Result":true,"Message":"Dolby Settings updated"} | all POST data are optional except zone |
amp/dolbysettings | {"Result":true,"dolbyMode":1,"volume":50,"pcmUpMixF":1,"mute":1,"minVol":40,"maxVol":224,"bass":128,"treble":128,"zones":[{"zone":0,"delayLeft":30,"delayRight":50,"spkrLeft":200,"spkrRight":200,"eqLeft":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}],"eqRight":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}]},{"zone":1,"delayLeft":0,"delayRight":0,"spkrLeft":200,"spkrRight":200,"eqLeft":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}],"eqRight":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}]},{"zone":2,"delayLeft":0,"delayRight":0,"spkrLeft":200,"spkrRight":200,"eqLeft":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}],"eqRight":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}]},{"zone":3,"delayLeft":0,"delayRight":0,"spkrLeft":200,"spkrRight":200,"eqLeft":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}],"eqRight":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}]}]} |
Dolbyzone
Description: Manage settings of Dolby output zones
Command: amp/dolbyzone {POSTdata}
Post: {"zone":0,"delayLeft":0,"delayRight":0,"spkrLeft":200,"spkrRight":200,
"eqLeft":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}],
"eqRight":[{"eq":128},{"eq":128},{"eq":128}, {"eq":128},{"eq":128}]}
zone = 0-3 0= FLFR, 1=SLSR, 2= C, 3=Sub
delayLeft, delayRight = time in ms up to 50
spkrLeft, spkrRight = 0-248 in 0.5dB steps, 1=-99.5dB, 200=0dB, 248=+24dB
eq = 104 to 152 (128=Flat,104=-12dB,152=+12dB)
Example | Example Result | Comments |
amp/dolbyzone{"zone":0,"delayLeft":0,"delayRight":0} | {"Result":true,"Message":"Dolby zone updated"} | all POST data are optional except zone |
amp/dolbyzone | {"Result":true,"zones":[{"zone":0,"delayLeft":30,"delayRight":50,"spkrLeft":200,"spkrRight":200,"eqLeft":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}],"eqRight":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}]},{"zone":1,"delayLeft":0,"delayRight":0,"spkrLeft":200,"spkrRight":200,"eqLeft":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}],"eqRight":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}]},{"zone":2,"delayLeft":0,"delayRight":0,"spkrLeft":200,"spkrRight":200,"eqLeft":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}],"eqRight":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}]},{"zone":3,"delayLeft":0,"delayRight":0,"spkrLeft":200,"spkrRight":200,"eqLeft":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}],"eqRight":[{"eq":128},{"eq":128},{"eq":128},{"eq":128},{"eq":128}]}]} |
Remote Monitoring Portal
For the latest documentation, further technical resources and 3rd party control driver downloads, please visit http://monitoring.pulse-eight.com/ and login using your Dealer ID.
If you do not have a Dealer ID, then please contact your Pulse-Eight sales representative who will be able to help you.

© 2020 Pulse-Eight Limited. All rights reserved.
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article