Summary
MusicCast multi-zone audio controller with HTTP REST API on port 80. Controls power, input selection, volume, tuner, playback, and presets via /YamahaExtendedControl/v1/ endpoint path pattern. No authentication procedure described.
Transport
protocols:
- http
addressing:
base_url: /YamahaExtendedControl/v1/
port: 80 # stated: default web browser port
auth:
type: UNRESOLVED # source does not state this (was inferred none: no auth procedure in source)
Traits
- powerable # inferred: power on/standby/toggle commands present
- routable # inferred: input selection commands present
- queryable # inferred: getStatus, getDeviceInfo, getFeatures commands present
- levelable # inferred: volume control commands present
Actions
- id: setPower
label: Set Power
kind: action
params:
- name: power
type: enum
values: [on, standby, toggle]
description: Power state
- id: setAutoPowerStandby
label: Set Auto Power Standby
kind: action
params:
- name: enable
type: boolean
description: Enable or disable auto standby
- id: setSleep
label: Set Sleep Timer
kind: action
params:
- name: sleep
type: integer
description: Minutes until sleep (0 = cancel)
- id: setInput
label: Set Input
kind: action
params:
- name: input
type: string
description: Input ID (net_radio, napster, spotify, juke, qobuz, tidal, deezer, server, bluetooth, airplay, mc_link, usb)
- name: mode
type: string
description: Optional mode (autoplay_disabled)
- id: setVolume
label: Set Volume
kind: action
params:
- name: volume
type: variant
description: Direct volume level (0-100) or up/down for incremental
- name: step
type: integer
description: Optional step size for incremental volume
- id: setMute
label: Set Mute
kind: action
params:
- name: enable
type: boolean
description: Mute state
- id: prepareInputChange
label: Prepare Input Change
kind: action
params:
- name: input
type: string
description: Input to prepare for
- id: setSoundProgram
label: Set Sound Program
kind: action
params:
- name: program
type: string
description: Sound program name
- id: tuner_recallPreset
label: Recall Tuner Preset
kind: action
params:
- name: zone
type: string
- name: band
type: enum
values: [fm, am, dab]
- name: num
type: integer
description: Preset number
- id: tuner_switchPreset
label: Switch Tuner Preset
kind: action
params:
- name: dir
type: enum
values: [next, previous]
- id: tuner_storePreset
label: Store Tuner Preset
kind: action
params:
- name: num
type: integer
description: Preset number
- id: tuner_setFreq
label: Set Tuner Frequency
kind: action
params:
- name: band
type: enum
values: [fm, am, dab]
- name: tuning
type: enum
values: [direct]
- name: num
type: integer
description: Frequency in KHz
- id: tuner_setDabService
label: Set DAB Service
kind: action
params:
- name: dir
type: enum
values: [next, previous]
- id: netusb_recallPreset
label: Recall Network/USB Preset
kind: action
params:
- name: zone
type: string
- name: num
type: integer
description: Preset number
- id: netusb_storePreset
label: Store Network/USB Preset
kind: action
params:
- name: num
type: integer
description: Preset number
- id: netusb_setPlayback
label: Set Playback
kind: action
params:
- name: playback
type: enum
values: [stop, play, previous, next, fast_reverse_start, fast_reverse_end, fast_forward_start, fast_forward_end]
- id: netusb_toggleRepeat
label: Toggle Repeat
kind: action
- id: netusb_toggleShuffle
label: Toggle Shuffle
kind: action
- id: ios_app_jump
label: iOS App Jump
kind: action
command: jp.co.yamaha.avkk.musiccastcontroller://
Feedbacks
- id: system_getDeviceInfo
label: Get Device Info
type: object
query_command: /YamahaExtendedControl/v1/system/getDeviceInfo
- id: system_getFeatures
label: Get Available Features
type: object
query_command: /YamahaExtendedControl/v1/system/getFeatures
- id: system_getNetworkStatus
label: Get Network Status
type: object
query_command: /YamahaExtendedControl/v1/system/getNetworkStatus
- id: system_getFuncStatus
label: Get Function Status
type: object
query_command: /YamahaExtendedControl/v1/system/getFuncStatus
- id: system_getLocationInfo
label: Get Location Info
type: object
query_command: /YamahaExtendedControl/v1/system/getLocationInfo
- id: main_getStatus
label: Get Zone Status
type: object
query_command: /YamahaExtendedControl/v1/main/getStatus
- id: main_getSoundProgramList
label: Get Sound Program List
type: object
query_command: /YamahaExtendedControl/v1/main/getSoundProgramList
- id: tuner_getPlayInfo
label: Get Tuner Play Info
type: object
query_command: /YamahaExtendedControl/v1/tuner/getPlayInfo
- id: tuner_getPresetInfo
label: Get Tuner Preset Info
type: object
query_command: /YamahaExtendedControl/v1/tuner/getPresetInfo
- id: netusb_getPresetInfo
label: Get Network/USB Preset Info
type: object
query_command: /YamahaExtendedControl/v1/netusb/getPresetInfo
- id: netusb_getPlayInfo
label: Get Network/USB Play Info
type: object
query_command: /YamahaExtendedControl/v1/netusb/getPlayInfo
- id: netusb_getAccountStatus
label: Get Account Status
type: object
query_command: /YamahaExtendedControl/v1/netusb/getAccountStatus
- id: netusb_getListInfo
label: Get List Info
type: object
query_command: /YamahaExtendedControl/v1/netusb/getListInfo
- id: power_state
label: Power State
type: enum
values: [on, standby]
- id: volume_level
label: Volume Level
type: integer
- id: mute_state
label: Mute State
type: boolean
- id: current_input
label: Current Input
type: string
Variables
# No distinct settable parameters outside action params - all routed through actions above
Events
# UNRESOLVED: no unsolicited notifications described in source
Macros
# UNRESOLVED: no explicit multi-step sequences described in source
Safety
confirmation_required_for: []
interlocks: []
Notes
Zone name required for multi-zone operations — obtain via getLocationInfo. Source doc covers MusicCast API broadly; YMS-4080-specific confirmation not verified.
Provenance
source_domains:
- wiki.elvis.science
- community-openhab-org.s3-eu-central-1.amazonaws.com
- community.symcon.de
source_urls:
- https://wiki.elvis.science/images/0/04/Yamaha_MusicCast_HTTP_simplified_API_for_ControlSystems.pdf
- https://community-openhab-org.s3-eu-central-1.amazonaws.com/original/2X/9/931ea88e30cf0f05fcdee79816eb4d3f12dd4d70.pdf
- https://community.symcon.de/uploads/short-url/vRXaJXAn6vI2DSQYMHF0aqLbdir.pdf
retrieved_at: 2026-05-22T19:19:51.379Z
last_checked_at: 2026-10-07T13:09:04.297Z
Verification Summary
verdict: verified
checked_at: 2026-10-07T13:09:04.297Z
matched_actions: 32
action_count: 32
confidence: medium
summary: "All 32 action units match the generic MusicCast HTTP API doc and transport is supported; the YMS-4080 model is never named in the source (generic caveat). (5 unresolved item(s) noted in Known Gaps.)"
Known Gaps
- "YMS-4080 specific model name not verified in source — generic MusicCast API doc used"
- "no unsolicited notifications described in source"
- "no explicit multi-step sequences described in source"
- "actual input list per YMS-4080 may differ from generic MusicCast inputs listed"
- "sleep timer zone parameter — source states zone name from getLocationInfo but does not enumerate valid zone names for YMS-4080"
From the AI4AV catalog (https://ai4av.net) · ODbL-1.0