rdio_api 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (56) hide show
  1. data/.gitignore +11 -0
  2. data/Gemfile +4 -0
  3. data/Guardfile +20 -0
  4. data/README.md +115 -0
  5. data/Rakefile +10 -0
  6. data/lib/rdio_api/api.rb +81 -0
  7. data/lib/rdio_api/client.rb +48 -0
  8. data/lib/rdio_api/version.rb +3 -0
  9. data/lib/rdio_api.rb +14 -0
  10. data/rdio_api.gemspec +30 -0
  11. data/spec/fixtures/addFriend.json +4 -0
  12. data/spec/fixtures/addToCollection.json +4 -0
  13. data/spec/fixtures/addToPlaylist.json +4 -0
  14. data/spec/fixtures/createPlaylist.json +19 -0
  15. data/spec/fixtures/currentUser.json +14 -0
  16. data/spec/fixtures/deletePlaylist.json +4 -0
  17. data/spec/fixtures/findUser.json +14 -0
  18. data/spec/fixtures/get.json +16 -0
  19. data/spec/fixtures/getActivityStream.json +18 -0
  20. data/spec/fixtures/getAlbumsForArtist.json +917 -0
  21. data/spec/fixtures/getAlbumsForArtistInCollection.json +82 -0
  22. data/spec/fixtures/getAlbumsInCollection.json +1184 -0
  23. data/spec/fixtures/getArtistsInCollection.json +37 -0
  24. data/spec/fixtures/getHeavyRotation.json +394 -0
  25. data/spec/fixtures/getNewReleases.json +796 -0
  26. data/spec/fixtures/getObjectFromShortCode.json +33 -0
  27. data/spec/fixtures/getObjectFromUrl.json +16 -0
  28. data/spec/fixtures/getPlaybackToken.json +4 -0
  29. data/spec/fixtures/getPlaylists.json +25 -0
  30. data/spec/fixtures/getTopCharts.json +181 -0
  31. data/spec/fixtures/getTracksForAlbumInCollection.json +440 -0
  32. data/spec/fixtures/getTracksForArtist.json +295 -0
  33. data/spec/fixtures/getTracksForArtistInCollection.json +34 -0
  34. data/spec/fixtures/getTracksInCollection.json +121 -0
  35. data/spec/fixtures/removeFriend.json +4 -0
  36. data/spec/fixtures/removeFromCollection.json +4 -0
  37. data/spec/fixtures/removeFromPlaylist.json +4 -0
  38. data/spec/fixtures/search.json +523 -0
  39. data/spec/fixtures/searchSuggestions.json +117 -0
  40. data/spec/fixtures/setAvailableOffline.json +4 -0
  41. data/spec/fixtures/setPlaylistCollaborating.json +4 -0
  42. data/spec/fixtures/setPlaylistCollaborationMode.json +4 -0
  43. data/spec/fixtures/setPlaylistFields.json +4 -0
  44. data/spec/fixtures/setPlaylistOrder.json +4 -0
  45. data/spec/fixtures/userFollowers.json +27 -0
  46. data/spec/fixtures/userFollowing.json +27 -0
  47. data/spec/helper.rb +26 -0
  48. data/spec/rdio_api/activity_spec.rb +59 -0
  49. data/spec/rdio_api/catalog_spec.rb +77 -0
  50. data/spec/rdio_api/client_spec.rb +18 -0
  51. data/spec/rdio_api/collection_spec.rb +127 -0
  52. data/spec/rdio_api/core_spec.rb +59 -0
  53. data/spec/rdio_api/playback_spec.rb +22 -0
  54. data/spec/rdio_api/playlists_spec.rb +122 -0
  55. data/spec/rdio_api/social_spec.rb +92 -0
  56. metadata +273 -0
@@ -0,0 +1,33 @@
1
+ {
2
+ "status" :"ok",
3
+ "result" :
4
+ {
5
+ "baseIcon": "album/d/5/f/0000000000095f5d/square-200.jpg",
6
+ "canDownloadAlbumOnly": false,
7
+ "artistUrl": "/artist/Ratatat/",
8
+ "duration": 226,
9
+ "album": "Classics",
10
+ "isClean": false,
11
+ "albumUrl": "/artist/Ratatat/album/Classics/",
12
+ "shortUrl": "http://rd.io/x/QDaXKzMuLA",
13
+ "albumArtist": "Ratatat",
14
+ "canStream": false,
15
+ "embedUrl": "http://rd.io/e/QDaXKzMuLA",
16
+ "type": "t",
17
+ "price": "None",
18
+ "trackNum": 6,
19
+ "albumArtistKey": "r311065",
20
+ "key": "t7369086",
21
+ "icon": "http://media.rd.io/album/d/5/f/0000000000095f5d/square-200.jpg",
22
+ "canSample": true,
23
+ "name": "Loud Pipes",
24
+ "isExplicit": false,
25
+ "artist": "Ratatat",
26
+ "url": "/artist/Ratatat/album/Classics/track/Loud_Pipes/",
27
+ "albumKey": "a614237",
28
+ "artistKey": "r311065",
29
+ "canDownload": false,
30
+ "length": 1,
31
+ "canTether": false
32
+ }
33
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "status" :"ok",
3
+ "result" : {
4
+ "name": "James Horner",
5
+ "topSongsKey": "tr35187",
6
+ "hasRadio": true,
7
+ "baseIcon": "artist/no-artist-image-square.jpg",
8
+ "shortUrl": "http://rd.io/x/QDaXLcos",
9
+ "length": 484,
10
+ "url": "/artist/James_Horner/",
11
+ "key": "r35187",
12
+ "radioKey": "rr35187",
13
+ "type": "r",
14
+ "icon": "http://media.rd.io/artist/no-artist-image-square.jpg"
15
+ }
16
+ }
@@ -0,0 +1,4 @@
1
+ {
2
+ "status" :"ok",
3
+ "result" : "flkasdjFA5lkdjf90asdfli2l9cnlkasdj9"
4
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "status" :"ok",
3
+ "result" : {
4
+ "owned": [
5
+ {
6
+ "ownerKey": "s27093",
7
+ "name": "RubyGem",
8
+ "baseIcon": "album/f/4/8/000000000002784f/square-200.jpg",
9
+ "ownerIcon": "user/no-user-image-square.jpg",
10
+ "owner": "Anil V",
11
+ "lastUpdated": 1312411927.0,
12
+ "shortUrl": "http://rd.io/x/QDaXL0BSKw",
13
+ "length": 3,
14
+ "url": "/people/anilv/playlists/200057/RubyGem/",
15
+ "key": "p200057",
16
+ "ownerUrl": "/people/anilv/",
17
+ "embedUrl": "http://rd.io/e/QDaXL0BSKw",
18
+ "type": "p",
19
+ "icon": "http://m.rdio.com/_is/?aid=284243,161869,161871&w=200&h=200"
20
+ }
21
+ ],
22
+ "collab": [],
23
+ "subscribed": []
24
+ }
25
+ }
@@ -0,0 +1,181 @@
1
+ {
2
+ "status" :"ok",
3
+ "result" : [
4
+ {
5
+ "ownerKey": "s2591",
6
+ "name": "Billboard Top 100",
7
+ "baseIcon": "album/2/2/2/00000000000a8222/square-200.jpg",
8
+ "ownerIcon": "user/f/1/a/0000000000000a1f/square-100.jpg",
9
+ "owner": "Kendall S",
10
+ "lastUpdated": 1312319175.0,
11
+ "shortUrl": "http://rd.io/x/QDaXL0EO",
12
+ "length": 94,
13
+ "url": "/people/kendall/playlists/593/Billboard_Top_100/",
14
+ "key": "p593",
15
+ "ownerUrl": "/people/kendall/",
16
+ "embedUrl": "http://rd.io/e/QDaXL0EO",
17
+ "type": "p",
18
+ "icon": "http://m.rdio.com/_is/?aid=246978,369635,421860,446251,231915,432428,445839,435427,224952&w=200&h=200"
19
+ },
20
+ {
21
+ "ownerKey": "s32657",
22
+ "name": "iTunes Top 200 (US) Updated: 8/2",
23
+ "baseIcon": "album/d/b/7/00000000000987bd/square-200.jpg",
24
+ "ownerIcon": "user/1/9/f/0000000000007f91/square-100.jpg",
25
+ "owner": "Joseph Thornton",
26
+ "lastUpdated": 1312369590.0,
27
+ "shortUrl": "http://rd.io/x/QDaXL1dg",
28
+ "length": 194,
29
+ "url": "/people/jtjdt/playlists/5183/iTunes_Top_200_(US)_Updated_8/2/",
30
+ "key": "p5183",
31
+ "ownerUrl": "/people/jtjdt/",
32
+ "embedUrl": "http://rd.io/e/QDaXL1dg",
33
+ "type": "p",
34
+ "icon": "http://m.rdio.com/_is/?aid=230482,229735,154281,228237,165714,158441,92474,228957,200191&w=200&h=200"
35
+ },
36
+ {
37
+ "ownerKey": "s417586",
38
+ "name": "Hip-Hop (Rap/Club/DJ/Pop/Radio)",
39
+ "baseIcon": "album/d/5/2/000000000009a25d/square-200.jpg",
40
+ "ownerIcon": "user/2/3/f/0000000000065f32/square-100.jpg",
41
+ "owner": "Brian Bates (DJ Breeze)",
42
+ "lastUpdated": 1312344736.0,
43
+ "shortUrl": "http://rd.io/x/QDaXL0Ftxg",
44
+ "length": 823,
45
+ "url": "/people/brianbatesd/playlists/144020/Hip-Hop_(Rap/Club/DJ/Pop/Radio)/",
46
+ "key": "p144020",
47
+ "ownerUrl": "/people/brianbatesd/",
48
+ "embedUrl": "http://rd.io/e/QDaXL0Ftxg",
49
+ "type": "p",
50
+ "icon": "http://m.rdio.com/_is/?aid=75456,44454,76910,48399,75507,22070,44731,75676,90333&w=200&h=200"
51
+ },
52
+ {
53
+ "ownerKey": "s51153",
54
+ "name": "90's - The Best Of Ultimate List (Alt, Rock, Hip-Hop, Other)",
55
+ "baseIcon": "album/5/3/d/0000000000037d35/square-200.jpg",
56
+ "ownerIcon": "user/1/d/7/000000000000c7d1/square-100.jpg",
57
+ "owner": "Brian Spina",
58
+ "lastUpdated": 1302147407.0,
59
+ "shortUrl": "http://rd.io/x/QDaXL4pl",
60
+ "length": 335,
61
+ "url": "/people/BrianSpina/playlists/51514/90%27s_-_The_Best_Of_Ultimate_List_(Alt%2C_Rock%2C_Hip-Hop%2C_Other)/",
62
+ "key": "p51514",
63
+ "ownerUrl": "/people/BrianSpina/",
64
+ "embedUrl": "http://rd.io/e/QDaXL4pl",
65
+ "type": "p",
66
+ "icon": "http://m.rdio.com/_is/?aid=94662,93576,91791,92693,91510,94040,75676,93822,91518&w=200&h=200"
67
+ },
68
+ {
69
+ "ownerKey": "s2003",
70
+ "name": "Bumpin'",
71
+ "baseIcon": "album/1/d/0/00000000000960d1/square-200.jpg",
72
+ "ownerIcon": "user/3/d/7/00000000000007d3/square-100.jpg",
73
+ "owner": "Chris Messina",
74
+ "lastUpdated": 1312329148.0,
75
+ "shortUrl": "http://rd.io/x/QDaXL0KBKw",
76
+ "length": 67,
77
+ "url": "/people/chrismessina/playlists/122489/Bumpin%27/",
78
+ "key": "p122489",
79
+ "ownerUrl": "/people/chrismessina/",
80
+ "embedUrl": "http://rd.io/e/QDaXL0KBKw",
81
+ "type": "p",
82
+ "icon": "http://m.rdio.com/_is/?aid=175714,224325,137062,91883,168045,105713,215095,132410,195708&w=200&h=200"
83
+ },
84
+ {
85
+ "ownerKey": "s78123",
86
+ "name": "Feelin these",
87
+ "baseIcon": "album/4/0/d/000000000006bd04/square-200.jpg",
88
+ "ownerIcon": "user/no-user-image-square.jpg",
89
+ "owner": "Emily Trierweiler",
90
+ "lastUpdated": 1311171782.0,
91
+ "shortUrl": "http://rd.io/x/QDaXL0K5cA",
92
+ "length": 252,
93
+ "url": "/people/EmilyTrierweiler/playlists/124450/Feelin_these/",
94
+ "key": "p124450",
95
+ "ownerUrl": "/people/EmilyTrierweiler/",
96
+ "embedUrl": "http://rd.io/e/QDaXL0K5cA",
97
+ "type": "p",
98
+ "icon": "http://m.rdio.com/_is/?aid=435873,436870,436743,436908,436974,434229,437110,436927,433983&w=200&h=200"
99
+ },
100
+ {
101
+ "ownerKey": "s57268",
102
+ "name": "Rolling Stones Top 500 Songs of All Time",
103
+ "baseIcon": "album/0/3/3/000000000003a330/square-200.jpg",
104
+ "ownerIcon": "user/4/b/f/000000000000dfb4/square-100.jpg",
105
+ "owner": "Alex Reichline",
106
+ "lastUpdated": 1282092598.0,
107
+ "shortUrl": "http://rd.io/x/QDaXL25h",
108
+ "length": 448,
109
+ "url": "/people/AlexReichline/playlists/11582/Rolling_Stones_Top_500_Songs_of_All_Time/",
110
+ "key": "p11582",
111
+ "ownerUrl": "/people/AlexReichline/",
112
+ "embedUrl": "http://rd.io/e/QDaXL25h",
113
+ "type": "p",
114
+ "icon": "http://m.rdio.com/_is/?aid=8481,12753,2793,8559,11601,2035,436,9271,5592&w=200&h=200"
115
+ },
116
+ {
117
+ "ownerKey": "s10226",
118
+ "name": "12 Hours of Ultimate 80s",
119
+ "baseIcon": "album/e/8/6/000000000001768e/square-200.jpg",
120
+ "ownerIcon": "user/2/f/7/00000000000027f2/square-100.jpg",
121
+ "owner": "Justin Thorn",
122
+ "lastUpdated": 1291421196.0,
123
+ "shortUrl": "http://rd.io/x/QDaXL0Tg",
124
+ "length": 176,
125
+ "url": "/people/JustinThorn/playlists/1983/12_Hours_of_Ultimate_80s/",
126
+ "key": "p1983",
127
+ "ownerUrl": "/people/JustinThorn/",
128
+ "embedUrl": "http://rd.io/e/QDaXL0Tg",
129
+ "type": "p",
130
+ "icon": "http://m.rdio.com/_is/?aid=94027,60838,34440,29545,82507,24015,93841,92851,92474&w=200&h=200"
131
+ },
132
+ {
133
+ "ownerKey": "s51051",
134
+ "name": "Top Tracks of the 2000s",
135
+ "baseIcon": "album/0/7/3/0000000000039370/square-200.jpg",
136
+ "ownerIcon": "user/b/6/7/000000000000c76b/square-100.jpg",
137
+ "owner": "Pitchfork",
138
+ "lastUpdated": 1281136444.0,
139
+ "shortUrl": "http://rd.io/x/QDaXL2Av",
140
+ "length": 133,
141
+ "url": "/people/Pitchfork/playlists/9072/Top_Tracks_of_the_2000s/",
142
+ "key": "p9072",
143
+ "ownerUrl": "/people/Pitchfork/",
144
+ "embedUrl": "http://rd.io/e/QDaXL2Av",
145
+ "type": "p",
146
+ "icon": "http://m.rdio.com/_is/?aid=91777,95553,93481,95151,96689,93650,94102,96945,75610&w=200&h=200"
147
+ },
148
+ {
149
+ "ownerKey": "s723",
150
+ "name": "I love the 90's",
151
+ "baseIcon": "album/f/6/1/000000000003a16f/square-200.jpg",
152
+ "ownerIcon": "user/3/d/2/00000000000002d3/square-100.jpg",
153
+ "owner": "Will Duncan",
154
+ "lastUpdated": 1310005233.0,
155
+ "shortUrl": "http://rd.io/x/QDaXL03V",
156
+ "length": 193,
157
+ "url": "/people/imagetic/playlists/3722/I_love_the_90%27s/",
158
+ "key": "p3722",
159
+ "ownerUrl": "/people/imagetic/",
160
+ "embedUrl": "http://rd.io/e/QDaXL03V",
161
+ "type": "p",
162
+ "icon": "http://m.rdio.com/_is/?aid=83520,6986,91474,92628,89689,92474,30394,92926,93183&w=200&h=200"
163
+ },
164
+ {
165
+ "ownerKey": "s268381",
166
+ "name": "Rap/Hip-Hop",
167
+ "baseIcon": "album/3/9/a/000000000001da93/square-200.jpg",
168
+ "ownerIcon": "user/no-user-image-square.jpg",
169
+ "owner": "Trever Paradis",
170
+ "lastUpdated": 1311670052.0,
171
+ "shortUrl": "http://rd.io/x/QDaXL0LG_Q",
172
+ "length": 311,
173
+ "url": "/people/xxbasskingxx/playlists/104879/Rap/Hip-Hop/",
174
+ "key": "p104879",
175
+ "ownerUrl": "/people/xxbasskingxx/",
176
+ "embedUrl": "http://rd.io/e/QDaXL0LG_Q",
177
+ "type": "p",
178
+ "icon": "http://m.rdio.com/_is/?aid=98784,105067,104228,95398,91708,91883,23446,105369,103420&w=200&h=200"
179
+ }
180
+ ]
181
+ }