Marantz NR1200 HEOS CLI ProtocolSpecification Version 1.14

Marantz NR1200 Manual

Marantz NR1200 manual content summary:

  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 1
    HEOS CLI Protocol Specification 1. Overview 1.1 Supported music services 2. Connection 2.1 Controller Design Guidelines 2.1.1 Driver Initialization 2.1.2 Caveats 2.1.2.1 Compatibility 2.1.2.2 Issues & Solutions 2.1.3 Miscellaneous 3. Command and Response Overview 3.1 Commands 3.2 Responses 4.
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 2
    Version 1.0 1.1 1.2 1.3 1.4 HEOS Version 1.280.96 1.304.61 1.310.170 1.331.70 1.331.120 Modifications Date Initial release. 12/20/2014 Add set service option command. 05/27/2015 Remove support for play url. Special characters ('&,'=', and '%') are encoded. 08/06/2015 Add reboot command
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 3
    command responses. Add new response fields 'available' and 'service_username' to get_music_sources and get_source_info command reponses. Add QQMusic to the supported music service list. 11/20/2017 Add new field value (unknown) to network connection types. Clarify on 'available' field in 'Get
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 4
    other commands and responses are more static. 1.1 Supported music services Following table list out all supported online music services through HEOS. Please note, currently not all services are supported through CLI. Source ID (sid) Service Name Browse through CLI Search/New station through CLI
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 5
    . Source ID (sid) Source name Browse supported Search supported 1024 Local USB Media/ Local DLNA servers control the HEOS system. The HEOS product IP address can also be set statically and manually programmed into the control system. Search target name (ST) in M-SEARCH discovery request is
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 6
    , PlayPrevious Play, Stop Play, Pause, Stop, PlayNext, PlayPrevious NA Play, Pause, Stop, PlayNext, PlayPrevious *Depending on playing service NA Supported Transport Controls in HEOS App (No significance. Only for Reference) Play, Pause, PlayNext, PlayPrevious Play, Pause, PlayNext, PlayPrevious
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 7
    Play, Pause, Stop, PlayNext, PlayPrevious Play, Stop NA NA Play, Pause, PlayNext, PlayPrevious *Depending on playing service Play, Pause, PlayNext, PlayPrevious Play, Stop NA 3. Command and Response Overview 3.1 Commands HEOS CLI commands are in the following general format: heos://command_group
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 8
    Note: Special characters '&', '=', and '%' in the JSON response fields are encoded to '%26(&)', '%3D(=)', and '%25(%)'. 4. Command and Response Details 4.1 System Commands 4.1.1 Register for Change Events By default HEOS speaker does not send Change events. Controller needs to send this command
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 9
    Example: heos://system/[email protected]&pw=12345 4.1.4 HEOS Account Sign Out Command: heos://system/sign_out Response: { "heos": { "command": "system/sign_out ", "result": "success", "message": "signed_out" } } Example: heos://system/sign_out 4.1.5 HEOS System Heart Beat Command: heos://
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 10
    Example: heos://system/prettify_json_response?enable=on 4.2 Player Commands 4.2.1 Get Players Command: heos://player/get_players Attribute pid gid network Description Player id pid of the Group leader Network connection type Enumeration N/A N/A wired wifi unknown (not applicable for external
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 11
    . . { "name": "'player name N'", "pid": "player id N'", "gid": "group id'", "model": "'player model N'", "version": "'player verison N'" "network": "wifi" "lineout": "level type" "control": "control option" "serial": "serial number" } ] } Example: heos://player/get_players 4.2.2 Get Player Info
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 12
    =player_id Attribute pid id (options) Description Player id returned by 'get_players' or 'get_groups' command Options available for now playing media Enumeration N/A Following options are currently supported for now playing media 11 - Thumbs Up 12 - Thumbs Down 19 - Add station to HEOS Favorites
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 13
    Response: The following response provides example when the speaker is playing a song. Note: For local music and DLNA servers sid will point to Local Music Source id. { "heos": { "command": "player/get_now_playing_media", "result": "success", "message": "pid='player_id'" }, "payload": { "type" : "'
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 14
    Response: { "heos": { "command": " player/ get_volume ", "result": "success", "message": "pid='player_id'&level='vol_level'" } } Example: heos://player/get_volume?pid=1 4.2.7 Set Volume Command: heos://player/set_volume?pid=player_id&level=vol_level Attribute Description Enumeration pid Player
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 15
    level Player volume step level 1 to 10(default 5) Response: { "heos": { "command": " player/ volume_down ", "result": "success", "message": "pid='player_id'&step='step_level'" } } Example: heos://player/volume_down?pid=2&step=5 4.2.10 Get Mute Command: heos://player/get_mute?pid=player_id
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 16
    pid Player id returned by 'get_players' or 'get_groups' command N/A Response: { "heos": { "command": " player/ toggle_mute ", "result": "success", "message": "pid=player_id" } } Example: heos://player/toggle_mute?pid=3 4.2.13 Get Play Mode Command: heos://player/get_play_mode?pid=player_id
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 17
    Range is start and end record index to return. Range parameter is optional. Omitting range parameter returns all records but a maximum of 100 records are returned per response. Attribute pid range Description Player id returned by 'get_players' or 'get_groups' command Range is start and end record
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 18
    pid Player id returned by 'get_players' or 'get_groups' command N/A qid Queue id for song returned by 'get_queue' command N/A Response: { "heos": { } } "command": " player/play_queue", "result": "success", "message": "pid='player_id'&qid='queue_id'" Example: heos://player/play_queue?pid=2&
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 19
    Command: heos://player/clear_queue?pid=player_id Attribute Description Enumeration pid Player id returned by 'get_players' or 'get_groups' command N/A Response: { "heos": { "command": "player/clear_queue ", "result": "success", "message": "pid='player_id'" } } Example: heos://player/clear_queue
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 20
    " player/set_quickselect", "result": "success", "message": "pid=player_id&id=" Example: heos://player/set_quickselect?pid=1&id=2 Currently supported HEOS products: LEGO AVR, HEOS BAR 4.2.24 Play QuickSelect [LS AVR Only] Command: heos://player/play_quickselect?pid=player_id&id
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 21
    "name": "Quick Select 1'" }, { "id": 2, "name": "Quick Select 2 id": 6, "name": "Quick Select 6'" } ] } Example: heos://player/get_quickselects?pid=1 Currently supported HEOS products: LEGO AVR, HEOS BAR 4.2.26 Check for Firmware Update Command: heos://player/check_update?pid=player_id Attribute
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 22
    4.3 Group Commands 4.3.1 Get Groups Command: heos://group/get_groups Response: { "heos": { "command": "player/get_groups", "result": "success", "message": "" }, "payload": [ { "name": "'group name 1'", "gid": "group id 1'", "players": [ { "name": "player name 1", "pid": "'player id 1'", "role": "
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 23
    "name": "'group name N'", "gid": "group id N'", "players": [ { "name": "player name 1", "pid": "'player id 1'", "role": "player role 1 (leader or member)'" }, { "name": "player name 2", "pid": "'player id 2'", "role": "player role 2 (leader or member name": "player name N", "pid": "'player id N'",
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 24
    Example: heos://group/get_group_info&?gid=1 4.3.3 Set Group This command is used to perform the following actions: Create new group: Creates new group. First player id in the list is group leader. Ex: heos://group/set_group?pid=3,1,4 Modify existing group members: Adds or delete players from the
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 25
    { "heos": { "command": "group/get_volume ", "result": "success", "message": "gid='group_id'&level='vol_level'" } } Example: heos://group/get_volume?gid=1 4.3.5 Set Group Volume Command: heos://group/set_volume?gid=group_id&level=vol_level Attribute Description Enumeration gid Group id returned
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 26
    Response: { "heos": { "command": " group/ volume_down ", "result": "success", "message": "gid='group_id'&step='step_level'" } } Example: heos://group/volume_down?gid=1&step=5 4.3.8 Get Group Mute Command: heos://group/get_mute?gid=group_id Attribute Description Enumeration gid Group id returned
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 27
    . This should not be treated as the music service being supported through CLI or not. The services supported through CLI is listed in 'Supported music services' section. Provides user name of the service account. N/A Only avaialable for online music services when 'avaialble' field is set to true
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 28
    . This should not be treated as the music service being supported through CLI or not. The services supported through CLI is listed in 'Supported music services' section. Provides user name of the service account. N/A Only avaialable for online music services when 'avaialble' field is set to true
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 29
    either 50 or 100 records per response. The default maximum number of records depend on the service type. range starts from 0 NOTE: Range in Browse source command is only supported while browsing Favorites This command is used under two scenarios. Browsing actual media sources of type 'heos_server
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 30
    browse?sid=1 Response when browsing top music view in an actual music server/music services. Note: the following response provides examples of the various media types. The actual response will depend on the source browsed and the hierarchy supported by that source. { "heos": { "command": "browse
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 31
    HEOS Favorites" } ] } ] } Example: heos://browse/browse?sid=1346442495 Supported Sources: Local Media Servers, Playlists, History, Aux-In, Favorites, TuneIn, Pandora response. The default maximum number of records depend on the service type. range starts from 0 Total number of items available in
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 32
    Various options are presented as part of 'Browse Source container' command response. Supported options under each browse menu depends on service type and container type. Possible options under browse menu are listed below: 1 - Add Track to Library 2 - Add Album to Library 3 - Add Station to Library
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 33
    Library" } ] } ] } Example: heos://browse/browse?sid=2&cid=TopAlbums&range=0,100 Supported Sources: Local Media Servers, Playlists, History, Aux-In, TuneIn, Pandora, Rhapsody, get_music_sources' N/A command Indicates if Play-All option is supported on yes or no searched tracks. Prefix to search
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 34
    id returned by 'get_music_sources' N/A command String for search limited to 128 unicode N/A characters and may contain '*' for wildcard if supported by search criteria id Search criteria id returned by 'get_search_criteria' command artist, album, song, station Total number of items available in
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 35
    range parameter returns all records up to a maximum of 50/100 records per response. The default maximum number of records depend on the service type. Number of items returned in current response range starts from 0 N/A Response: Note: the following response provides examples of the various media
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 36
    ='container_id'&mid='media_id'&name='station_name'" } } Example: heos://browse/play_stream?pid=1&sid=2&cid='CID-55'&mid=15376&name=Q95 Supported Sources: History, Favorites, TuneIn, Pandora, Rhapsody, Deezer, SiriusXM, iHeartRadio, Napster, SoundCloud, Amazon Music 4.4.8 Play Preset Station Command
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 37
    "heos": { "command": " browse/play_preset", "result": "success", "message": "pid='player_id'&preset='preset_number'" } } Example: heos://browse/play_preset?pid=1&preset=2 Supported Sources: HEOS Favorites 4.4.9 Play Input source Command to play input source on the same speaker: heos://browse/
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 38
    "inputs/game" "inputs/mediaplayer" "inputs/cd" "inputs/tuner" "inputs/hdradio" "inputs/tvaudio" "inputs/phono" "inputs/usbdac" "inputs/analog_in_1" "inputs/analog_in_2" "inputs/recorder_in_1" Response for command "heos://browse/play_input?pid=player_id&input=input_name" : Note: this command will
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 39
    ='player_id'&sid='source_id'&cid='container_id'&aid='add_criteria'" } } Example: heos://browse/add_to_queue?pid=1&sid=5&cid=Artist/All&aid=2 Supported Sources: Playable containers from Local Media Servers, Playlists, History, Rhapsody, Deezer, iHeartRadio, Napster, Tidal, SoundCloud. Also searched
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 40
    Supported Sources: Local Media Servers, Playlists, History, Rhapsody Tracks, Deezer Tracks, iHeartRadio Tracks, Napster, Tidal, SoundCloud, Amazon Music. Please note Amazon Music tracks are played without
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 41
    Rhapsody/Napster Container id returned by 'browse' command or 'get_now_playing_media' command Rhapsody/Napster album ids Note: Supported music service is Rhapsody and Napster Response: { "heos": { "command": "browse/retrieve_metadata", "result": "success", "message": "sid=2&cid=album_id&returned
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 42
    =1&mid=Tra.174684187 Parameter description mid - track id obtained through 'browse source containers' command 2 - Add Album to Library Supported Services: Napster heos://browse/set_service_option? sid=2&option=2&cid=Alb.174684186 cid - album id obtained through 'browse source containers' command
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 43
    'play station' command to play a station. Note: Range parameter is optional to limit results 13 - Create New Station by Shows Supported Services: iHeartRadio heos://browse/set_service_option? sid=7&option=13&name=Love&scid=5 name - search string for creating new station through show Note: This
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 44
    Response: { "heos": { "command": " browse/set_service_option", "result": "success", "message": "sid=source_id&option=option_id&mid=media_id" } } Example: heos://browse/set_service_option?sid=2&option=1&mid=Tra.174684187 5. Change Events (Unsolicited Responses) 5.1 Sources Changed Response: { "heos":
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 45
    5.6 Player Now Playing Progress Response: { "heos": { "command": " event/player_now_playing_progress", "message": "pid=player_id&cur_pos=position_ms&duration=duration_ms" } } 5.7 Player Playback Error Response: { "heos": { "command": " event/player_playback_error", "message": "pid=player_id&error=
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 46
    "message": "pid='player_id'&shuffle='on_or_off'" } } 5.12 Group Volume Changed Response: { "heos": { "command": "event/group_volume_changed ", "message": "gid='group_id'&level='vol_level'&mute='on_or_off'" } } 5.13 User Changed Response: { "heos": { "command": "event/user_changed", "message": "
  • Marantz NR1200 | HEOS CLI ProtocolSpecification Version 1.14 - Page 47
    is not logged in -1056: User not found -1201: General content services authentication error -1232: Content services user authorization error -1239: User account related parameters are invalid Processing previous command cannot play Option not supported Too many commands in queue Reached skip limit
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47

HEOS CLI Protocol Specification
1. Overview
1.1 Supported music services
2. Connection
2.1 Controller Design Guidelines
2.1.1 Driver Initialization
2.1.2 Caveats
2.1.2.1 Compatibility
2.1.2.2 Issues & Solutions
2.1.3 Miscellaneous
3. Command and Response Overview
3.1 Commands
3.2 Responses
4. Command and Response Details
4.1 System Commands
4.1.1 Register for Change Events
4.1.2 HEOS Account Check
4.1.3 HEOS Account Sign In
4.1.4 HEOS Account Sign Out
4.1.5 HEOS System Heart Beat
4.1.6 HEOS Speaker Reboot
4.1.7 Prettify JSON response
4.2 Player Commands
4.2.1 Get Players
4.2.2 Get Player Info
4.2.3 Get Play State
4.2.4 Set Play State
4.2.5 Get Now Playing Media
4.2.6 Get Volume
4.2.7 Set Volume
4.2.8 Volume Up
4.2.9 Volume Down
4.2.10 Get Mute
4.2.11 Set Mute
4.2.12 Toggle Mute
4.2.13 Get Play Mode
4.2.14 Set Play Mode
4.2.15 Get Queue
4.2.16 Play Queue Item
4.2.17 Remove Item(s) from Queue
4.2.18 Save Queue as Playlist
4.2.19 Clear Queue
4.2.20 Move Queue
4.2.21 Play Next
4.2.22 Play Previous
4.2.23 Set QuickSelect [LS AVR Only]
4.2.24 Play QuickSelect [LS AVR Only]
4.2.25 Get QuickSelects [LS AVR Only]
4.2.26 Check for Firmware Update
4.3 Group Commands
4.3.1 Get Groups
4.3.2 Get Group Info
4.3.3 Set Group
4.3.4 Get Group Volume
4.3.5 Set Group Volume
4.2.6 Group Volume Up
4.2.7 Group Volume Down
4.3.8 Get Group Mute
4.3.9 Set Group Mute
4.3.10 Toggle Group Mute
4.4 Browse Commands
4.4.1 Get Music Sources
4.4.2 Get Source Info
4.4.3 Browse Source
4.4.4 Browse Source Containers
4.4.5 Get Source Search Criteria
4.4.6 Search
4.4.7 Play Station