The Control API includes the following features as of version 11.0:
- You can now cancel audio clips with
audioClipobject shows the available error codes and states.
- We recommend that you provide the User-Agent HTTP Header to all requests as a best practice so that Sonos knows who is sending the request. See Send HTTP headers; send parameters in the body in the Control documentation for details.
- Made it easier to find the latest Cloud Queue API version supported. See the Cloud Queue API page for details.
- Clarified the difference between
loadStreamUrlto load a live stream that does not end. Use
loadCloudQueueto load a set list of tracks or a playlist.
- You no longer need to send the
X-Sonos-API-Keyin Control API request headers to the Sonos cloud. The access token is enough to authenticate your request. The API-key is also known as your client credentials. Use these credentials to authenticate with users. Once your app authenticates with the user, use the access token in all of your requests. See Authorize for details.
- A detailed description of the lifetime of an event subscription. Subscriptions last for a period of three days. Sonos cleans up most subscriptions 30 seconds after the target has gone, except for subscriptions to the groups and favorites namespaces. See Subscribe for details.
- Users can request that Sonos remove connections to your connected product to deactivate it on their Sonos system. Sonos will add a user interface for this at a later date.
- If your app sends invalid player IDs in the
setGroupMemberscommands, or the
modifyGroupMemberscommand to add players to the group, it sends an
ERROR_INVALID_PARAMETERerror with the list of invalid player IDs. See globalError and groups for details.
SMAPI includes the following features and updates:
- We moved all of the documentation from Sonos Labs to the developer portal. See Content Service: Add Features for a list of the features and links to how to add them. If you’re a new content service partner, start developing your integration by following the Content Service: Get Started.
- Sonos deprecated the python Self-Test for content partners. When you submit your service for review, add “N/A” in the Self-Test configuration file and Self-Test Summary Report HTML file fields. See C: Quality assurance and performance in the Submit your service documentation for details.
- If you have a manifest file URL, enter it in the String Resource XML File field. See Submit your service for details.
- Users can add programmed radio tracks or stations to favorites. See How favorites work in Add programmed radio for details.
- We no longer send
getLastUpdaterequests if the user is not browsing your content. This should limit the amount of requests sent to your server.
SMAPI documentation fixes and updates:
- Set up image substitution for album art section in Add album art had malformed sample XML code.
- Fixed typo in Create lists. The
albumList. Also changed the
listOfAlbumsto eliminate confusion with
- Typo in SMAPI object types and Add playlists. The
renamableproperty should be
- In Add reporting, clarified that endpoints require the version number somewhere in the URL, the example uses v2.1, and partners can also use the latest version of the cloud queue.
SMAPI known issues:
- There’s a bug in how the Sonos app displays string text for the
titleentry in an
relatedActions. See Add actions for details. As a workaround, bypass the strings file and hard code the text that you want to display for the action. Sonos correctly replaces strings for
- Sonos players don’t respect the
getMediaURIwhen the mimeType is
See Release notes for Sonos software for customer-facing features.