Sonos
Click here for a complete list of operations.
getMetadata
Test
The test form is only available for requests from the local machine.SOAP 1.1
The following is a sample SOAP 1.1 request and response. The placeholders shown need to be replaced with actual values.
POST /Sonos.asmx HTTP/1.1
Host: sonos.jukeboxy.com
Content-Type: text/xml; charset=utf-8
Content-Length: length
SOAPAction: "http://www.sonos.com/Services/1.1#getMetadata"
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Header>
<credentials xmlns="http://www.sonos.com/Services/1.1">
<loginToken>
<token>string</token>
<key>string</key>
<householdId>string</householdId>
</loginToken>
<deviceId>string</deviceId>
<deviceProvider>string</deviceProvider>
</credentials>
</soap:Header>
<soap:Body>
<getMetadata xmlns="http://www.sonos.com/Services/1.1">
<count>int</count>
<id>string</id>
<index>int</index>
<recursive>boolean</recursive>
</getMetadata>
</soap:Body>
</soap:Envelope>
HTTP/1.1 200 OK
Content-Type: text/xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<getMetadataResponse xmlns="http://www.sonos.com/Services/1.1">
<getMetadataResult>
<count>int</count>
<index>int</index>
<total>int</total>
<mediaMetadata>
<id>string</id>
<isFavorite>boolean</isFavorite>
<itemType>string</itemType>
<mimeType>string</mimeType>
<summary>string</summary>
<title>string</title>
<streamMetadata>
<currentShow>string</currentShow>
<currentShowId>string</currentShowId>
<description>string</description>
<isEphemeral>boolean</isEphemeral>
<secondsRemaining>int</secondsRemaining>
<secondsToNextShow>int</secondsToNextShow>
</streamMetadata>
<trackMetadata>
<album>string</album>
<albumArtist>string</albumArtist>
<albumArtistId>string</albumArtistId>
<albumArtURI>string</albumArtURI>
<albumId>string</albumId>
<artist>string</artist>
<artistId>string</artistId>
<author>string</author>
<authorId>string</authorId>
<book>string</book>
<bookId>string</bookId>
<canAddToFavorites>boolean</canAddToFavorites>
<canPlay>boolean</canPlay>
<canResume>boolean</canResume>
<canSeek>boolean</canSeek>
<canSkip>boolean</canSkip>
<composer>string</composer>
<composerId>string</composerId>
<duration>int</duration>
<genre>string</genre>
<genreId>string</genreId>
<narrator>string</narrator>
<narratorId>string</narratorId>
<rating>int</rating>
<trackNumber>int</trackNumber>
</trackMetadata>
</mediaMetadata>
<mediaMetadata>
<id>string</id>
<isFavorite>boolean</isFavorite>
<itemType>string</itemType>
<mimeType>string</mimeType>
<summary>string</summary>
<title>string</title>
<streamMetadata>
<currentShow>string</currentShow>
<currentShowId>string</currentShowId>
<description>string</description>
<isEphemeral>boolean</isEphemeral>
<secondsRemaining>int</secondsRemaining>
<secondsToNextShow>int</secondsToNextShow>
</streamMetadata>
<trackMetadata>
<album>string</album>
<albumArtist>string</albumArtist>
<albumArtistId>string</albumArtistId>
<albumArtURI>string</albumArtURI>
<albumId>string</albumId>
<artist>string</artist>
<artistId>string</artistId>
<author>string</author>
<authorId>string</authorId>
<book>string</book>
<bookId>string</bookId>
<canAddToFavorites>boolean</canAddToFavorites>
<canPlay>boolean</canPlay>
<canResume>boolean</canResume>
<canSeek>boolean</canSeek>
<canSkip>boolean</canSkip>
<composer>string</composer>
<composerId>string</composerId>
<duration>int</duration>
<genre>string</genre>
<genreId>string</genreId>
<narrator>string</narrator>
<narratorId>string</narratorId>
<rating>int</rating>
<trackNumber>int</trackNumber>
</trackMetadata>
</mediaMetadata>
<mediaCollection>
<albumArtURI>string</albumArtURI>
<canPlay>boolean</canPlay>
<displayType>string</displayType>
<id>string</id>
<itemType>string</itemType>
<title>string</title>
<artist>string</artist>
</mediaCollection>
<mediaCollection>
<albumArtURI>string</albumArtURI>
<canPlay>boolean</canPlay>
<displayType>string</displayType>
<id>string</id>
<itemType>string</itemType>
<title>string</title>
<artist>string</artist>
</mediaCollection>
</getMetadataResult>
</getMetadataResponse>
</soap:Body>
</soap:Envelope>
SOAP 1.2
The following is a sample SOAP 1.2 request and response. The placeholders shown need to be replaced with actual values.
POST /Sonos.asmx HTTP/1.1
Host: sonos.jukeboxy.com
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Header>
<credentials xmlns="http://www.sonos.com/Services/1.1">
<loginToken>
<token>string</token>
<key>string</key>
<householdId>string</householdId>
</loginToken>
<deviceId>string</deviceId>
<deviceProvider>string</deviceProvider>
</credentials>
</soap12:Header>
<soap12:Body>
<getMetadata xmlns="http://www.sonos.com/Services/1.1">
<count>int</count>
<id>string</id>
<index>int</index>
<recursive>boolean</recursive>
</getMetadata>
</soap12:Body>
</soap12:Envelope>
HTTP/1.1 200 OK
Content-Type: application/soap+xml; charset=utf-8
Content-Length: length
<?xml version="1.0" encoding="utf-8"?>
<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">
<soap12:Body>
<getMetadataResponse xmlns="http://www.sonos.com/Services/1.1">
<getMetadataResult>
<count>int</count>
<index>int</index>
<total>int</total>
<mediaMetadata>
<id>string</id>
<isFavorite>boolean</isFavorite>
<itemType>string</itemType>
<mimeType>string</mimeType>
<summary>string</summary>
<title>string</title>
<streamMetadata>
<currentShow>string</currentShow>
<currentShowId>string</currentShowId>
<description>string</description>
<isEphemeral>boolean</isEphemeral>
<secondsRemaining>int</secondsRemaining>
<secondsToNextShow>int</secondsToNextShow>
</streamMetadata>
<trackMetadata>
<album>string</album>
<albumArtist>string</albumArtist>
<albumArtistId>string</albumArtistId>
<albumArtURI>string</albumArtURI>
<albumId>string</albumId>
<artist>string</artist>
<artistId>string</artistId>
<author>string</author>
<authorId>string</authorId>
<book>string</book>
<bookId>string</bookId>
<canAddToFavorites>boolean</canAddToFavorites>
<canPlay>boolean</canPlay>
<canResume>boolean</canResume>
<canSeek>boolean</canSeek>
<canSkip>boolean</canSkip>
<composer>string</composer>
<composerId>string</composerId>
<duration>int</duration>
<genre>string</genre>
<genreId>string</genreId>
<narrator>string</narrator>
<narratorId>string</narratorId>
<rating>int</rating>
<trackNumber>int</trackNumber>
</trackMetadata>
</mediaMetadata>
<mediaMetadata>
<id>string</id>
<isFavorite>boolean</isFavorite>
<itemType>string</itemType>
<mimeType>string</mimeType>
<summary>string</summary>
<title>string</title>
<streamMetadata>
<currentShow>string</currentShow>
<currentShowId>string</currentShowId>
<description>string</description>
<isEphemeral>boolean</isEphemeral>
<secondsRemaining>int</secondsRemaining>
<secondsToNextShow>int</secondsToNextShow>
</streamMetadata>
<trackMetadata>
<album>string</album>
<albumArtist>string</albumArtist>
<albumArtistId>string</albumArtistId>
<albumArtURI>string</albumArtURI>
<albumId>string</albumId>
<artist>string</artist>
<artistId>string</artistId>
<author>string</author>
<authorId>string</authorId>
<book>string</book>
<bookId>string</bookId>
<canAddToFavorites>boolean</canAddToFavorites>
<canPlay>boolean</canPlay>
<canResume>boolean</canResume>
<canSeek>boolean</canSeek>
<canSkip>boolean</canSkip>
<composer>string</composer>
<composerId>string</composerId>
<duration>int</duration>
<genre>string</genre>
<genreId>string</genreId>
<narrator>string</narrator>
<narratorId>string</narratorId>
<rating>int</rating>
<trackNumber>int</trackNumber>
</trackMetadata>
</mediaMetadata>
<mediaCollection>
<albumArtURI>string</albumArtURI>
<canPlay>boolean</canPlay>
<displayType>string</displayType>
<id>string</id>
<itemType>string</itemType>
<title>string</title>
<artist>string</artist>
</mediaCollection>
<mediaCollection>
<albumArtURI>string</albumArtURI>
<canPlay>boolean</canPlay>
<displayType>string</displayType>
<id>string</id>
<itemType>string</itemType>
<title>string</title>
<artist>string</artist>
</mediaCollection>
</getMetadataResult>
</getMetadataResponse>
</soap12:Body>
</soap12:Envelope>