We've just purchased a Denon AVR-X3700H AV amplifier. We're now reverse engineering how the web-based application works, and potentially the Android App too, so that we can detail what HTTP GET requests we can make when building our own automation applications.
Screen capture of the Denon web-based user interface to their amplifier.
The web application uses JQuery AJAX calls which prevents the client cache returning a previously fetched response by appending a timestamp parameter to each call with a key of '_' and a value in milliseconds since epoch .
Note, all GET requests are to an HTTPS server with a self signed certification that you will need to trust or exempt.
https://${HOST}:10443/ajax/home/get_config?type=${type}&_=${time}
The basic format of the 'home' get_config HTTP GET request.
URL Parameter
Values
HOST
The IP address or hostname of your amplifier on your network.
type
An integer value from 1..1 inclusive, see next table below for responses for each type value.
time
The time stamp in milliseconds.
'Home' Status URL Parameters.
Type
API Response in (XML )
1
<listHomeMenu>
<MainZone>
<ZoneName>Living Rm</ZoneName>
<SourceName>Chromecast</SourceName>
</MainZone>
<Zone2>
<ZoneName>ZONE2</ZoneName>
<SourceName>TV Audio</SourceName>
</Zone2>
</listHomeMenu>
The different status reports that can be requested.
https://${HOST}:10443/ajax/audio/get_config?type=${type}&_=${time}
The basic format of the 'global' get_config HTTP GET request.
URL Parameter
Values
HOST
The IP address or hostname of your amplifier on your network.
type
An integer value from 1..10 inclusive, see next table below for responses for each type value.
time
The time stamp in milliseconds.
'Global' Status URL Parameters.
Type
API Response in (XML)
1
<listSetupMenu>
<CenterLevelAdjust>2</CenterLevelAdjust>
<SubwooferLevelAdjust>3</SubwooferLevelAdjust>
<BassSync>1</BassSync>
<SurroundParameter>3</SurroundParameter>
<Restorer>3</Restorer>
<AudioDelay>3</AudioDelay>
<Volume>3</Volume>
<BilingualMode>1</BilingualMode>
<Audyssey>3</Audyssey>
<GraphicEQ>2</GraphicEQ>
</listSetupMenu>
2
<CenterLevel>-5</CenterLevel>
3
<SubwooferLevelAdjust>
<SubwooferLevel1 display="3">0</SubwooferLevel1>
<SubwooferLevel2 display="2"/>
</SubwooferLevelAdjust>
4
<SurroundParameter>
<CinemaEQ display="1" />
<LoudnessManagement display="1" />
<DynamicCompression display="1" mode="drc_normal" />
<DialogControl display="1" />
<LowFrequencyEffects display="1" />
<CenterSpread display="1" />
<SpeakerVirtualizer display="1" />
<DTSNeuralX display="1" />
<IMAX display="1" mode="ver100" />
<IMAXAudioSettings display="1" />
<HighPassFilter display="1">
<Value />
<List>
<Value>40</Value>
<Value>60</Value>
<Value>80</Value>
<Value>90</Value>
<Value>100</Value>
<Value>110</Value>
<Value>120</Value>
<Value>150</Value>
<Value>180</Value>
<Value>200</Value>
<Value>250</Value>
</List>
</HighPassFilter>
<LowPassFilter display="1">
<Value />
<List>
<Value>80</Value>
<Value>90</Value>
<Value>100</Value>
<Value>110</Value>
<Value>120</Value>
<Value>150</Value>
<Value>180</Value>
<Value>200</Value>
<Value>250</Value>
</List>
</LowPassFilter>
<SubwooferMode display="1" />
<CenterImage display="1" />
<Panorama display="1" />
<Dimension display="1" />
<CenterWidth display="1" />
<AuroMatic3DPreset display="1" />
<Auro3DPresetListMovie>2</Auro3DPresetListMovie>
<AuroMatic3DStrenght display="1" />
<Auro3DMode display="1" />
<DelayTime display="1" />
<EffectLevel display="1" />
<RoomSize display="1" />
<SpeakerSelect display="1" />
<Subwoofer display="3">1</Subwoofer>
</SurroundParameter>
5
<Restorer>3</Restorer>
6
<AudioDelay>
<AutoLipSync>1</AutoLipSync>
<Adjust>0</Adjust>
<LipSyncDisplay>2</LipSyncDisplay>
<TvDelay>0</TvDelay>
</AudioDelay>
7
<Volume>
<Scale>2</Scale>
<Limit mode="linear">99</Limit>
<PowerOnLevel>99</PowerOnLevel>
<MuteLevel>3</MuteLevel>
</Volume>
8
<SetupLock>2</SetupLock>
9
<BtHeadphonesSingleUsed>0</BtHeadphonesSingleUsed>
10
<SpeakerPreset>1</SpeakerPreset>
The different status reports that can be requested.
https://${HOST}:10443/ajax/audio/get_config?type=${type}&_=${time}
The basic format of the 'audio' get_config HTTP GET request.
URL Parameter
Values
HOST
The IP address or hostname of your amplifier on your network.
type
An integer value from 1..7 inclusive, see next table below for responses for each type value.
time
The time stamp in milliseconds.
'Audio' Status URL Parameters.
Type
API Response in (XML)
1
<listSetupMenu>
<CenterLevelAdjust>2</CenterLevelAdjust>
<SubwooferLevelAdjust>3</SubwooferLevelAdjust>
<BassSync>1</BassSync>
<SurroundParameter>3</SurroundParameter>
<Restorer>3</Restorer>
<AudioDelay>3</AudioDelay>
<Volume>3</Volume>
<BilingualMode>1</BilingualMode>
<Audyssey>3</Audyssey>
<GraphicEQ>2</GraphicEQ>
</listSetupMenu>
2
<CenterLevel>-5</CenterLevel>
3
<SubwooferLevelAdjust>
<SubwooferLevel1 display="3">0</SubwooferLevel1>
<SubwooferLevel2 display="2"/>
</SubwooferLevelAdjust>
4
<SurroundParameter>
<CinemaEQ display="1" />
<LoudnessManagement display="1" />
<DynamicCompression display="1" mode="drc_normal" />
<DialogControl display="1" />
<LowFrequencyEffects display="1" />
<CenterSpread display="1" />
<SpeakerVirtualizer display="1" />
<DTSNeuralX display="1" />
<IMAX display="1" mode="ver100" />
<IMAXAudioSettings display="1" />
<HighPassFilter display="1">
<Value />
<List>
<Value>40</Value>
<Value>60</Value>
<Value>80</Value>
<Value>90</Value>
<Value>100</Value>
<Value>110</Value>
<Value>120</Value>
<Value>150</Value>
<Value>180</Value>
<Value>200</Value>
<Value>250</Value>
</List>
</HighPassFilter>
<LowPassFilter display="1">
<Value />
<List>
<Value>80</Value>
<Value>90</Value>
<Value>100</Value>
<Value>110</Value>
<Value>120</Value>
<Value>150</Value>
<Value>180</Value>
<Value>200</Value>
<Value>250</Value>
</List>
</LowPassFilter>
<SubwooferMode display="1" />
<CenterImage display="1" />
<Panorama display="1" />
<Dimension display="1" />
<CenterWidth display="1" />
<AuroMatic3DPreset display="1" />
<Auro3DPresetListMovie>2</Auro3DPresetListMovie>
<AuroMatic3DStrenght display="1" />
<Auro3DMode display="1" />
<DelayTime display="1" />
<EffectLevel display="1" />
<RoomSize display="1" />
<SpeakerSelect display="1" />
<Subwoofer display="3">1</Subwoofer>
</SurroundParameter>
5
<Restorer>3</Restorer>
6
<AudioDelay>
<AutoLipSync>1</AutoLipSync>
<Adjust>0</Adjust>
<LipSyncDisplay>2</LipSyncDisplay>
<TvDelay>0</TvDelay>
</AudioDelay>
7
<Volume>
<Scale>2</Scale>
<Limit mode="linear">99</Limit>
<PowerOnLevel>99</PowerOnLevel>
<MuteLevel>3</MuteLevel>
</Volume>
The different status reports that can be requested.
https://${HOST}:10443/ajax/video/get_config?type=${type}&_=${time}
The basic format of the 'video' get_config HTTP GET request.
URL Parameter
Values
HOST
The IP address or hostname of your amplifier on your network.
type
An integer value from 1..4 inclusive, see next table below for responses for each type value.
time
The time stamp in milliseconds.
'Video' Status URL Parameters.
Type
API Response in (XML)
1
<listSetupMenu>
<PictureAdjust>3</PictureAdjust>
<HDMISetup>3</HDMISetup>
<OutputSettings>3</OutputSettings>
<ComponentVideo>1</ComponentVideo>
<AnalogVideoOut>1</AnalogVideoOut>
<OnScreenDisplay>3</OnScreenDisplay>
<ScreenSaver>3</ScreenSaver>
<FourKSignalFormat>1</FourKSignalFormat>
<FourKEightKSignalFormat>3</FourKEightKSignalFormat>
<HDCPSetup>3</HDCPSetup>
<TVFormat>3</TVFormat>
</listSetupMenu>
2
<PictureAdjust>
<PictureMode>1</PictureMode>
<SupportISFMode>3</SupportISFMode>
<Contrast>0</Contrast>
<Brightness>0</Brightness>
<Saturation>0</Saturation>
<NoiseReduction>1</NoiseReduction>
<Enhancer>0</Enhancer>
</PictureAdjust>
3
<HDMISetup>
<HDMIAudioOut display="2">1</HDMIAudioOut>
<VerticalStretch display="1" />
<HDMIPassThrough display="2">1</HDMIPassThrough>
<PassThroughSource display="3">
<Source>1</Source>
<List>
<Last>Last</Last>
<HDMI1>Chromecast</HDMI1>
<HDMI3>Blu-Ray</HDMI3>
<HDMI4>HDMI Cable</HDMI4>
<HDMI5>Xbox One X</HDMI5>
<HDMI6>Xbox 360</HDMI6>
</List>
</PassThroughSource>
<RCSelect display="3">1</RCSelect>
<HDMIControl display="3">1</HDMIControl>
<ARC display="2">1</ARC>
<TVAudioSwitching display="3">1</TVAudioSwitching>
<PowerOffControl display="3">1</PowerOffControl>
<PowerSaving display="3">1</PowerSaving>
<SmartMenu display="3">1</SmartMenu>
</HDMISetup>
4
<OutputSettings>
<HDMIVideoOutput display="3">2</HDMIVideoOutput>
<VideoMode display="3" group="2">1</VideoMode>
<VideoConversion display="1">2</VideoConversion>
<IpScaler display="3" group="4">3</IpScaler>
<ResolutionAnalog display="1" group="0" mode="0">0</ResolutionAnalog>
<ResolutionHDMI display="1" group="4" mode="6">0</ResolutionHDMI>
<Resolution display="2" group="4" mode="6">1</Resolution>
<Sharpness display="2">2</Sharpness>
<ProgressiveMode display="2">1</ProgressiveMode>
<AspectRatio display="2">1</AspectRatio>
</OutputSettings>
The different status reports that can be requested.
https://${HOST}:10443/ajax/inputs/get_config?type=${type}&_=${time}
The basic format of the 'input' get_config HTTP GET request.
URL Parameter
Values
HOST
The IP address or hostname of your amplifier on your network.
type
An integer value from 1..6 inclusive, see next table below for responses for each type value.
time
The time stamp in milliseconds.
'Inputs' Status URL Parameters.
Type
API Response in (XML)
1
<listSetupMenu>
<InputAssign>3</InputAssign>
<SourceRename>3</SourceRename>
<HideSource>3</HideSource>
<SourceLevel>3</SourceLevel>
<InputSelect>1</InputSelect>
</listSetupMenu>
2
<InputAssign>
<Contents>
<HDMI>3</HDMI>
<Digital>3</Digital>
<Analog>3</Analog>
<Comp>1</Comp>
<Video>3</Video>
<InputMode>3</InputMode>
</Contents>
<Source index="1">
<Name>Chromecast</Name>
<HDMI display="3">3</HDMI>
<Digital display="3">1</Digital>
<Analog display="3">1</Analog>
<Video display="3">1</Video>
<InputMode display="3">3</InputMode>
</Source>
<Source index="3">
<Name>Blu-Ray</Name>
<HDMI display="3">5</HDMI>
<Digital display="3">1</Digital>
<Analog display="3">1</Analog>
<Video display="3">1</Video>
<InputMode display="3">3</InputMode>
</Source>
<Source index="5">
<Name>HDMI Cable</Name>
<HDMI display="3">6</HDMI>
<Digital display="3">1</Digital>
<Analog display="3">1</Analog>
<Video display="3">1</Video>
<InputMode display="3">3</InputMode>
</Source>
<Source index="4">
<Name>Xbox One X</Name>
<HDMI display="3">7</HDMI>
<Digital display="3">1</Digital>
<Analog display="3">1</Analog>
<Video display="3">1</Video>
<InputMode display="3">3</InputMode>
</Source>
<Source index="7">
<Name>Xbox 360</Name>
<HDMI display="3">8</HDMI>
<Digital display="3">1</Digital>
<Analog display="3">1</Analog>
<Video display="3">1</Video>
<InputMode display="3">3</InputMode>
</Source>
<Source index="6">
<Name>TV Audio</Name>
<HDMI display="2">2</HDMI>
<Digital display="3">3</Digital>
<Analog display="3">1</Analog>
<Video display="3">1</Video>
<InputMode display="3">4</InputMode>
</Source>
<SelectionList>
<HDMI>
<List>
<Item index="1">-</Item>
<Item index="3">1</Item>
<Item index="4">2</Item>
<Item index="5">3</Item>
<Item index="6">4</Item>
<Item index="7">5</Item>
<Item index="8">6</Item>
<Item index="9">7(8K)</Item>
</List>
<List8K>
<Source index="20" />
<List>
<Item index="1">-</Item>
<Item index="9">7(8K)</Item>
</List>
</List8K>
</HDMI>
<Digital>
<List>
<Item index="1">-</Item>
<Item index="5">COAX1</Item>
<Item index="6">COAX2</Item>
<Item index="3">OPT1</Item>
<Item index="4">OPT2</Item>
</List>
</Digital>
<Analog>
<List>
<Item index="1">-</Item>
<Item index="3">1</Item>
<Item index="4">2</Item>
<Item index="5">3</Item>
<Item index="6">4</Item>
<Item index="7">5</Item>
</List>
</Analog>
<Video>
<List>
<Item index="1">-</Item>
<Item index="3">VIDEO1</Item>
<Item index="4">VIDEO2</Item>
<Item index="5">VIDEO3</Item>
<Item index="8">COMP1</Item>
<Item index="9">COMP2</Item>
</List>
</Video>
<InputMode>
<Source index="1">
<List>
<Item index="3" />
</List>
</Source>
<Source index="3">
<List>
<Item index="3" />
</List>
</Source>
<Source index="5">
<List>
<Item index="3" />
</List>
</Source>
<Source index="4">
<List>
<Item index="3" />
</List>
</Source>
<Source index="7">
<List>
<Item index="3" />
</List>
</Source>
<Source index="6">
<List>
<Item index="4" />
</List>
</Source>
</InputMode>
</SelectionList>
</InputAssign>
3
<SourceRename>
<CharacterMax>16</CharacterMax>
<Source index="1">
<Default>CBL/SAT</Default>
<Rename>Chromecast</Rename>
<Auto>Chromecast</Auto>
</Source>
<Source index="3">
<Default>Blu-ray</Default>
<Rename>Blu-Ray</Rename>
<Auto>BDP8520</Auto>
</Source>
<Source index="5">
<Default>Media Player</Default>
<Rename>HDMI Cable</Rename>
</Source>
<Source index="4">
<Default>Game</Default>
<Rename>Xbox One X</Rename>
<Auto>Xbox One</Auto>
</Source>
<Source index="7">
<Default>AUX</Default>
<Rename>Xbox 360</Rename>
<Auto>Xbox 360</Auto>
</Source>
<Source index="6">
<Default>TV Audio</Default>
<Rename>TV Audio</Rename>
</Source>
<Source index="10">
<Default>Phono</Default>
<Rename>Phono</Rename>
</Source>
</SourceRename>
4
<HideSources>
<Source display="3" index="1">
<Hide>1</Hide>
<Name>Chromecast</Name>
</Source>
<Source display="3" index="2">
<Hide>2</Hide>
<Name>DVD N/C</Name>
</Source>
<Source display="2" index="3">
<Hide>3</Hide>
<Name>Blu-Ray</Name>
</Source>
<Source display="3" index="5">
<Hide>1</Hide>
<Name>HDMI Cable</Name>
</Source>
<Source display="3" index="4">
<Hide>1</Hide>
<Name>Xbox One X</Name>
</Source>
<Source display="3" index="7">
<Hide>1</Hide>
<Name>Xbox 360</Name>
</Source>
<Source display="3" index="20">
<Hide>2</Hide>
<Name>8K N/C</Name>
</Source>
<Source display="2" index="6">
<Hide>4</Hide>
<Name>TV Audio</Name>
</Source>
<Source display="3" index="9">
<Hide>2</Hide>
<Name>CD N/C</Name>
</Source>
<Source display="3" index="10">
<Hide>1</Hide>
<Name>Phono</Name>
</Source>
<Source display="3" index="11">
<Hide>2</Hide>
<Name>Tuner N/C</Name>
</Source>
</HideSources>
5
<SourceLevels>
<SourceLevel display="3">0</SourceLevel>
</SourceLevels>
6
<InputSelect>
<InputMode>4</InputMode>
<List>
<Auto>1</Auto>
<HDMI>1</HDMI>
<Digital>3</Digital>
<Analog>1</Analog>
<No>1</No>
<ARC>1</ARC>
<Ch7_1IN>1</Ch7_1IN>
</List>
</InputSelect>
The different status reports that can be requested.
https://${HOST}:10443/ajax/speakers/get_config?type=${type}&_=${time}
The basic format of the 'speakers' get_config HTTP GET request.
URL Parameter
Values
HOST
The IP address or hostname of your amplifier on your network.
type
An integer value from 1..8 inclusive, see next table below for responses for each type value.
time
The time stamp in milliseconds.
'Speakers' Status URL Parameters.
Type
API Response in (XML)
1
<listSetupMenu>
<AmpAssign>3</AmpAssign>
<SpeakerConfig>3</SpeakerConfig>
<Subwoofer>1</Subwoofer>
<Distances>3</Distances>
<Levels>3</Levels>
<Crossovers>3</Crossovers>
<Bass>3</Bass>
<FrontSpeaker>2</FrontSpeaker>
<TwoChPlayback>1</TwoChPlayback>
<SpeakerPreset>3</SpeakerPreset>
</listSetupMenu>
2
<AmpAssign>
<AmpType mode="1">5</AmpType>
<AssignMode mode="1">14</AssignMode>
<SpeakerFor display="1" />
<FloorLayout display="3">
<Value>1</Value>
</FloorLayout>
<HeightSpeaker display="1" />
<ThreeTiersHeightLayout display="1" />
<CustomSettings display="1" />
<HeightLayout display="1" />
<Preout display="1" />
<TopSurrOut display="1" />
</AmpAssign>
3
<SpeakerConfig>
<Speaker index="0">
<Value>2</Value>
<List>2</List>
<List>3</List>
</Speaker>
<Speaker index="1">
<Value>2</Value>
<List>1</List>
<List>2</List>
</Speaker>
<Speaker index="2">
<Value>6</Value>
<List>1</List>
<List>6</List>
<List>7</List>
</Speaker>
<Speaker index="3">
<Value>2</Value>
<List>1</List>
<List>2</List>
</Speaker>
</SpeakerConfig>
4
<Distances>
<Unit>1</Unit>
<Step>1</Step>
<SubwooferType>1</SubwooferType>
<List>
<Speaker index="0" display="3">315</Speaker>
<Speaker index="1" display="3">285</Speaker>
<Speaker index="2" display="3">264</Speaker>
<Speaker index="3" display="3">423</Speaker>
<Speaker index="5" display="3">264</Speaker>
<Speaker index="6" display="3">204</Speaker>
</List>
<DolbySpeakerSetup display="1" />
</Distances>
5
<Levels>
<List>
<Speaker index="0" display="3">20</Speaker>
<Speaker index="1" display="3">-5</Speaker>
<Speaker index="2" display="3">10</Speaker>
<Speaker index="4" display="3">5</Speaker>
<Speaker index="8" display="3">5</Speaker>
<Speaker index="30" display="3">0</Speaker>
</List>
<SubwooferType>1</SubwooferType>
</Levels>
6
<Crossovers>
<Selection display="3">1</Selection>
<All display="3">80</All>
<List>
<Speaker index="0" display="2">80</Speaker>
<Speaker index="1" display="2">80</Speaker>
<Speaker index="2" display="2">80</Speaker>
</List>
<SelectableValue>
<List>
<Item>40</Item>
<Item>60</Item>
<Item>80</Item>
<Item>90</Item>
<Item>100</Item>
<Item>110</Item>
<Item>120</Item>
<Item>150</Item>
<Item>180</Item>
<Item>200</Item>
<Item>250</Item>
</List>
</SelectableValue>
</Crossovers>
7
<Bass>
<SubwooferMode display="3">1</SubwooferMode>
<LPFforLFE display="3">80</LPFforLFE>
<SelectableValue>
<LPFforLFE>
<List>
<Item>80</Item>
<Item>90</Item>
<Item>100</Item>
<Item>110</Item>
<Item>120</Item>
<Item>150</Item>
<Item>180</Item>
<Item>200</Item>
<Item>250</Item>
</List>
</LPFforLFE>
</SelectableValue>
</Bass>
8
<FrontSpeaker>1</FrontSpeaker>
The different status reports that can be requested.
https://${HOST}:10443/ajax/network/get_config?type=${type}&_=${time}
The basic format of the 'network' get_config HTTP GET request.
URL Parameter
Values
HOST
The IP address or hostname of your amplifier on your network.
type
An integer value from 1..9 inclusive, see next table below for responses for each type value.
time
The time stamp in milliseconds.
'Network' Status URL Parameters.
Type
API Response in (XML)
1
<listSetupMenu>
<Information>3</Information>
<Connection>1</Connection>
<Settings>3</Settings>
<NetworkControl>3</NetworkControl>
<FriendlyName>3</FriendlyName>
<Diagnostics>3</Diagnostics>
<AirPlay>3</AirPlay>
<CrestronConnected>1</CrestronConnected>
</listSetupMenu>
2
<Information>
<FriendlyName>Amplifier</FriendlyName>
<Connection>2</Connection>
<SSID display="1" />
<DHCP>1</DHCP>
<IPAddress>192.168.1.5</IPAddress>
<MacAddress>
<Ethernet>0006785025A0</Ethernet>
<WiFi>0006785025A2</WiFi>
</MacAddress>
</Information>
3
HTTP ERROR 400
4
<Settings>
<DHCP>1</DHCP>
<IPAddress>192.168.1.5</IPAddress>
<SubnetMask>255.255.255.0</SubnetMask>
<DefaultGateway>192.168.1.1</DefaultGateway>
<DNS>192.168.1.19</DNS>
</Settings>
5
<NetworkControl>
<Control>2</Control>
</NetworkControl>
6
<FriendlyName>
<DefaultName>Denon AVC-X3700H</DefaultName>
<CurrentName>Amplifier</CurrentName>
</FriendlyName>
7
<Diagnostics>
<Connection>2</Connection>
<RouterAccess>1</RouterAccess>
<InternetAccess>1</InternetAccess>
</Diagnostics>
8
HTTP ERROR 400
9
<AirPlay>2</AirPlay>
The different status reports that can be requested.
https://${HOST}:10443/ajax/account/get_config?type=${type}&_=${time}
The basic format of the 'account' get_config HTTP GET request.
URL Parameter
Values
HOST
The IP address or hostname of your amplifier on your network.
type
An integer value from 1 or 9, see next table below for responses for each type value.
time
The time stamp in milliseconds.
'Account' Status URL Parameters.
Type
API Response in (XML)
1
<listSetupMenu>
<HaveAccount>1</HaveAccount>
<CreateAccount>1</CreateAccount>
<ForgotPassword>1</ForgotPassword>
<ChangeLocation>1</ChangeLocation>
<ChangePassword>1</ChangePassword>
<DeleteAccount>1</DeleteAccount>
<SignOut>3</SignOut>
</listSetupMenu>
2-8
HTTP ERROR 400 . There may be additional results here when not logged into a HEOS account.
9
<AccountStatus>
<SignedIn>1</SignedIn>
<Username>philip@abbey1.org.uk</Username>
<Error>0</Error>
</AccountStatus>
The different status reports that can be requested.
https://${HOST}:10443/ajax/general/get_config?type=${type}&_=${time}
The basic format of the 'general' get_config HTTP GET request.
URL Parameter
Values
HOST
The IP address or hostname of your amplifier on your network.
type
An integer value from 1..17, see next table below for responses for each type value.
time
The time stamp in milliseconds.
'General' Status URL Parameters.
Type
API Response in (XML)
1
<listSetupMenu>
<Language>3</Language>
<ECO>3</ECO>
<ZONE2Setup>3</ZONE2Setup>
<ZONE3Setup>1</ZONE3Setup>
<ZONERename>3</ZONERename>
<QuickSelectNames>3</QuickSelectNames>
<TriggerOut1>3</TriggerOut1>
<TriggerOut2>1</TriggerOut2>
<AutoStandby>1</AutoStandby>
<FrontDisplay>3</FrontDisplay>
<Firmware>3</Firmware>
<Information>3</Information>
<RemoteID>1</RemoteID>
<UsageData>3</UsageData>
<SetupLock>3</SetupLock>
<Reset>1</Reset>
</listSetupMenu>
2
<Language group="1">1</Language>
3
<ECO>
<Mode display="3">1</Mode>
<PowerOnDefault display="3">3</PowerOnDefault>
<OnScreenDisplay display="3">2</OnScreenDisplay>
<AutoStandby group="2">
<MainZone display="3">1</MainZone>
<Zone2 display="3">4</Zone2>
</AutoStandby>
</ECO>
4
<ZoneSetup index="2">
<Scale>2</Scale>
<Bass display="3">0</Bass>
<Treble display="3">0</Treble>
<HighPassFilter display="3">2</HighPassFilter>
<Channel display="3">1</Channel>
<LchLevel display="3">0</LchLevel>
<RchLevel display="3">0</RchLevel>
<HDMIAudio display="3">1</HDMIAudio>
<VolumeLevel display="3">99</VolumeLevel>
<VolumeLimit display="3">3</VolumeLimit>
<PowerOnVolume display="3">99</PowerOnVolume>
<MuteLevel display="3">1</MuteLevel>
</ZoneSetup>
5
HTTP ERROR 500
6
<ZoneRename>
<Zone index="1" display="3">
<Rename>Living Rm</Rename>
</Zone>
<Zone index="2" display="3">
<Rename>ZONE2</Rename>
</Zone>
</ZoneRename>
7
<QuickSelectNames>
<Item index="0">
<Name>Chromecast</Name>
</Item>
<Item index="1">
<Name>Blu-Ray</Name>
</Item>
<Item index="2">
<Name>HDMI Cable</Name>
</Item>
<Item index="3">
<Name>Music</Name>
</Item>
</QuickSelectNames>
8
<TriggerOut index="1">
<Item group="1" index="0">
<Enable>1</Enable>
<Name>Living Rm</Name>
</Item>
<Item group="1" index="1">
<Enable>1</Enable>
<Name>ZONE2</Name>
</Item>
<Item group="2" index="1">
<Enable>1</Enable>
<Name>Chromecast</Name>
</Item>
<Item group="2" index="2">
<Enable>1</Enable>
<Name>DVD N/C</Name>
</Item>
<Item group="2" index="3">
<Enable>1</Enable>
<Name>Blu-Ray</Name>
</Item>
<Item group="2" index="5">
<Enable>1</Enable>
<Name>HDMI Cable</Name>
</Item>
<Item group="2" index="4">
<Enable>1</Enable>
<Name>Xbox One X</Name>
</Item>
<Item group="2" index="7">
<Enable>1</Enable>
<Name>Xbox 360</Name>
</Item>
<Item group="2" index="20">
<Enable>1</Enable>
<Name>8K N/C</Name>
</Item>
<Item group="2" index="6">
<Enable>1</Enable>
<Name>TV Audio</Name>
</Item>
<Item group="2" index="9">
<Enable>1</Enable>
<Name>CD N/C</Name>
</Item>
<Item group="2" index="10">
<Enable>1</Enable>
<Name>Phono</Name>
</Item>
<Item group="2" index="13">
<Enable>1</Enable>
<Name>HEOS Music</Name>
</Item>
<Item group="2" index="11">
<Enable>1</Enable>
<Name>Tuner N/C</Name>
</Item>
<Item group="3" index="0">
<Enable>2</Enable>
<Name />
</Item>
<Item group="3" index="1">
<Enable>2</Enable>
<Name />
</Item>
</TriggerOut>
9
HTTP ERROR 500
10
<FrontDisplay>
<Dimmer>3</Dimmer>
<Channel display="1">0</Channel>
</FrontDisplay>
11
<Firmware>
<Update display="3">
<CheckForUpdate />
</Update>
<AutoUpdate display="3">
<TimeZone>1</TimeZone>
<Enable>1</Enable>
</AutoUpdate>
<AllowUpdate display="3">
<Enable>1</Enable>
</AllowUpdate>
<UpgradeNotification display="3">
<Enable>1</Enable>
</UpgradeNotification>
</Firmware>
12
<Information>
<Audio>
<SoundMode>Dolby Audio - Dolby Surround</SoundMode>
<InputSignal>PCM ZERO</InputSignal>
</Audio>
<Video>
<HDMISignalInfo>
<Resolution>1080p60 -> ---</Resolution>
<HDR>--- -> ---</HDR>
<ColorSpace>YCbCr 4:4:4 -> ---</ColorSpace>
<PixelDepth>8bits -> ---</PixelDepth>
<ALLM>0</ALLM>
<QMS>0</QMS>
<QFT>0</QFT>
<FRLRate>--- -> ---</FRLRate>
</HDMISignalInfo>
<HDMIMonitor1>
<Interface>HDMI 3D</Interface>
<HDR>---</HDR>
<Resolutions>
<Value>480i/p</Value>
<Value>576i/p</Value>
<Value>1080i50/60</Value>
<Value>720p50/60</Value>
<Value>1080p24/50/60</Value>
</Resolutions>
<Features>---</Features>
<MaxFRLRate>---</MaxFRLRate>
</HDMIMonitor1>
<HDMIMonitor2>
<Interface>---</Interface>
<HDR>---</HDR>
<Resolutions />
<Features>---</Features>
<MaxFRLRate>---</MaxFRLRate>
</HDMIMonitor2>
</Video>
<Zone>
<MainZone>
<SelectSource>CBL/SAT</SelectSource>
<Name>Chromecast</Name>
<SoundMode>Dolby Audio - Dolby Surround</SoundMode>
<InputMode>3</InputMode>
<ECOMode>1</ECOMode>
<HDMILimitationMode mode="fourk_eightk">2</HDMILimitationMode>
<HDCPSetup>1</HDCPSetup>
<LimitMaxRes>6</LimitMaxRes>
<LimitDeepColor>2</LimitDeepColor>
<LimitHDCP>2</LimitHDCP>
<LimitHDR>2</LimitHDR>
<LimitDolbyVision>2</LimitDolbyVision>
<LimitDTSX>2</LimitDTSX>
<LimitAtmos>2</LimitAtmos>
<LimitPCM2ch>2</LimitPCM2ch>
<HDMI>1</HDMI>
<Digital>-</Digital>
<Analog>-</Analog>
<Video>-</Video>
<VideoMode>1</VideoMode>
<ContentType>1</ContentType>
<IpScaler group="4">3</IpScaler>
</MainZone>
<Zone2>
<SelectSource>TV Audio</SelectSource>
<Volume>-40dB</Volume>
</Zone2>
</Zone>
<Firmware>
<Version>6220-9043-7161-3085</Version>
<DTSVersion>3.90.50.54</DTSVersion>
</Firmware>
<Notifications>
<Alerts>1</Alerts>
<Status>1</Status>
<Message />
</Notifications>
</Information>
13
HTTP ERROR 400
14
<UsageData>
<Send>1</Send>
</UsageData>
15
HTTP ERROR 400
16
HTTP ERROR 400
17
<AutoStandby group="2">
<MainZone display="3">1</MainZone>
<Zone2 display="3">4</Zone2>
</AutoStandby>
The different status reports that can be requested.
https://${HOST}:10443/ajax/${set}/set_config?type=${type}&data=${data}&_=${time}
The basic format of the set_config HTTP GET request.
URL Parameter
Values
HOST
The IP address or hostname of your amplifier on your network.
type
An integer value from 1..?x? inclusive, see next table below for responses for each type value.
data
A URL encoded XML string. E.g.
<mutelevel>3</mutelevel>
or
<Source zone="1" index="4"></Source>
time
The time stamp in milliseconds.
Action / Observations
Set
Type
Data
Amplifier switched to source 1 (in this case Chromecast)
globals
7
<Source zone="1" index="1"></Source>
Amplifier switched off
globals
4
<MainZone><Power>3</Power></MainZone>
The different commands that can be run on the amplifier.
Reference: DENON AVR control protocol actually for a different model (AVR-1713/AVR-1613) but seems to work mostly well here.
ws://${HOST}:23
The basic format of a websocket url to port 23.
Action / Observations
Data
Extra Information
Amplifier switched to the new source and responded with the new source.
SI${source}
The source is a name which can be found at the back of the amplifier where the HDMI plugs are e.g. "SAT". The source can also be "?" in which case it just returns the source.
Amplifier muted/un-muted.
MU${mute}
The mute is either "off", "on" or "?".
Amplifier volume changed.
MV${volume}
The volume is either "UP", "DOWN", an integer between 0 and 98 or "?".
Amplifier switched on/off.
PW${power}
The power is either "off", "on" or "?".
The different commands that can be run on the amplifier.