The SeeqPod REST API
Overview
The Seeqpod REST API can be used by writing a client in your preferred language e.g. Python, Java, C, PHP, Ruby or any other capable language.
For support or questions contact api_support@seeqpod.com
Constructing a Call
The SeeqPod API is constructed in a method that conforms to the Representational State Transfer (REST) architectural style. Calls are constructed as a layered set of resources that given together comprise a specific result. The root of the API is found at http://www.seeqpod.com/api/v0.2/<UID>/ and the resources available are placed below it. "<UID>" should be replaced with your UID, which is explained below. As an example, to find a music recommendation list for "bar" by the artist "foo", the path to the resource representing that recommendation list would be
/api/v0.2/<UID>/music/recommendations/artists/foo/bar/
Further reading:
http://en.wikipedia.org/wiki/RESTUID
To make calls to the SeeqPod API, you will need a UID to identify yourself. You are given a UID upon registering as a SeeqPod user and it can be found by clicking the "edit profile" link at the top of the page once logged in.
Available Calls
The SeeqPod REST API exposes several calls for use in any manner of application.
Currently available Calls include:
Further reading:
http://xspf.org/xspf-v1.htmlhttp://en.wikipedia.org/wiki/XSPF
Discovery & Recommendation
Overview
Submit a song you like to the SeeqPod recommendation API, and it will return a list of playable search results that we think you'll like.
Call Format
http://www.seeqpod.com/api/v0.2/<UID>/music/recommendations/artists/<artist>/<song>/
<artist>
The content producer being used as the base of the recommendations
<song>
The playable search result to base the recommendations off of
Output Format
Recommendations are returned in the form of an XML podlist, and conform to the XSPF podlist format as defined by the Xiph.Org Foundation. Key fields within a track field are the creator, title, and location fields, denoting the artist, song name, and (optional) mp3 locations respectively.
Example:
<?xml version='1.0' encoding='UTF-8' ?>
<playlist version="1" xmlns="http://xspf.org/ns/0/" >
<title></title>
<trackList>
<track>
<location></location>
<title>Arms Of Mary</title>
<creator>Sutherland Brothers & Quiver</creator>
<extension application="seeqpod_metadata">
<mp3_url_id> </mp3_url_id>
<has_music_rex>True</has_music_rex>
<song_id>967387</song_id>
</extension></track>
<track>
<location></location>
<title>Satellite of Love</title>
<creator>U2</creator>
<extension application="seeqpod_metadata">
<mp3_url_id></mp3_url_id>
<has_music_rex>True</has_music_rex>
<song_id>76911</song_id>
</extension>
</track>
</trackList>
</playlist>
Search
Overview
The search call will return a list of pointers relevant to the given query.
Call Format
http://www.seeqpod.com/api/v0.2/<UID>/music/search/<query>/<start index>/<num results>/
<query>
The string to be searched for
<start index> (optional)
The zero based starting index for pagination (defaults to 0)
<num results> (optional)
The number of results that to be returned for this page (defaults to 10)
Output Format
Search results are returned in the form of an XML podlist, and conform to the XSPF podlist format as defined by the Xiph.Org Foundation. Key fields within a track field are the creator, title, and location fields, denoting the artist, song name, and mp3 locations respectively.
Example:
<?xml version='1.0' encoding='UTF-8' ?>
<playlist version="1" xmlns="http://xspf.org/ns/0/" start="0" end="0" total="26" prev="None" next="1">
<title></title>
<trackList>
<track>
<location>http://joniverse.com/resources/music/u2-one.mp3</location>
<title>One</title>
<creator>U2</creator>
<extension application="seeqpod_metadata">
<mp3_url_id>19646033</mp3_url_id>
<has_music_rex>True</has_music_rex>
<song_id>39445</song_id>
</extension>
</track>
</trackList>
</playlist>
Spellcheck & Query Recommendation
Overview
The spellcheck call will return a ranked list of alternatives to a given spelling of query.
Call Format
http://www.seeqpod.com/api/v0.2/<UID>/music/spellcheck/<query>/
<query>
The query term that alternate spellings are desired for
Output Format
The results come in the form of an XML list containing the origional query as followed by an ordered list of alternate spellings with match scores.
Example:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<query>vaan haylen</query>
<resultList>
<result>
<artist>Van Halen</artist>
<score>12.10</score>
</result>
<result>
<artist>Van Hunt</artist>
<score>0.97</score>
</result>
<result>
<artist>Valentino</artist>
<score>0.51</score>
</result>
<result>
<artist>Violent Silence</artist>
<score>0.47</score>
</result>
<result>
<artist>Valenciano</artist>
<score>0.27</score>
</result>
</resultList>
</root>
Video Search
Overview
The Video Search call will return a list of videos relevant to the given query.
Call Format
http://www.seeqpod.com/api/v0.2/<UID>/video/search/<query>/
<query>
The string to be searched for
Output Format
Results are returned in the form of an XSPF podlist
Example:
<?xml version='1.0' encoding='UTF-8' ?>
<playlist version="1" xmlns="http://xspf.org/ns/0/">
<title>Video for u2 one</title>
<trackList>
<track>
<title>ONE- U2</title>
<location>http://us.i1.yimg.com/cosmos.bcst.yahoo.com/player/media/swf/FLVVideoSolo.swf?2458470</location>
<image>http://thmg01.video.search.yahoo.com/image/434905_01</image>
</track>
<track>
<title>U2 - One</title>
<location>http://www.youtube.com/watch?v=JFWPeVfWB9o</location>
<image>http://img.youtube.com/vi/JFWPeVfWB9o/2.jpg</image>
</track>
<track>
<title>U2 - One</title>
<location>http://www.brightcove.com/title.jsp?title=361569533</location>
<image>http://brightcove.vo.llnwd.net/d2/unsecured/media/315799705/315799705_364687059_c78ba9c2e844943f40874d3383854981a017697b.jpg</image>
</track>
<track>
<title>'One' feat. U2</title>
<location>http://video.aol.com/video/One-feat-U2/1666333</location>
<image>http://thumbnail.search.aolcdn.com/truveo/images/thumbnails/08/03/08039FB66EB62F.jpg"</image>
</track>
<track>
<title>One</title>
<location>http://www.zippyvideos.com/8246600944053216/one2/</location>
<image>http://i2.zvhost.com/2/d/d6b03s65.jpg</image>
</track>
</trackList>
</playlist>
Cache Access
Overview
This call will return a temporary pointer to the given url_id.
Call Format
http://www.seeqpod.com/api/adserve/results?uid=<UID>&mp3_url_id=<mp3_url_id>
<mp3_url_id>
The url_id to be retrieved from the cache, as found in a search call.
Output Format
Results are returned in the form of an temporary URL to the requested cache content
