Feature / brainstorm: Spotify Web API integration - what could go wrong?

So, I know that Spotify and Amazon Music don’t provide data dumps and seemingly will not. Totally get it. Not asking to change the world. Roon will try to negotiate, maybe someday they will “win” but it seems dubious in the extreme.

So here’s my question… what would the user experience be like if Roon did “do the best it could to integrate given what is available today”?

Below here I am totally guessing. But I’d like to ask team Roon — when they have a chance to breathe — to perhaps spell out what might happen if they did do an integration, and just how broken the experience would be. And if that’s not something you want to explain, totally get it.

So, let’s say you’re searching in the search bar for “Taylor Swift” (or “Martha Argerich”, suit yourself). Roon could present a separate section of results called “Spotify results”. It wouldn’t necessarily fit the taxonomy, and it might be clunky to match up with the Roon metadata. And Roon doesn’t really have the concept of a playlist, so playlist entities would be clunky as part of a result set. But I bet in some cases you could do the match on artists and albums. And I bet with some clever crowdsourcing- a la “this doesn’t look right” you could clean up the edge cases.

So what about playing? Well it would be a pain, because you could only play to your Spotify Connect ready endpoints, which means you would have non-overlapping zones for the two play experiences. So you’d have to accept that playing a Roon (local/tidal/Qobuz) track could be done to some zones, and playing a Spotify track could be done to some other zones.

How would something like a playlist really work? I don’t know, I haven’t thought about it fully or researched it. You’d probably lose all metadata connections unless you were doing some really loose fuzzy matching, and that might be too clunky an experience for a luxury piece of software. But it might not.

Thanks @brian @danny if this elicits any thoughts, or others who have spent time with this set of APIs who might have a better idea of “what’s the worst that could happen?”

1 Like

Do you mean there’s a specific part of TOS that prohibits this kind of “skin” behavior? Or are you generally responding to the “what’s the worst that could happen” in a generic and funny way? This is not my space.

Thanks for the edit… so I’m not sure what that means exactly… they provide a Web API and lots of folks use it to allow you to play music in their run tracking or ride sharing app. So it’s not entirely true that they don’t allow any commercial integrations. So I’m sure you’re right, I’m just trying to wrap my head around what the phrase “commercial integrations” means specifically.

I just read through Spotify Developer Terms of Service | Spotify for Developers

Which is incidentally a very clear TOS, better than many others.

The only specific term I can find that seems to be really binding in the case I’m imagining is that you can’t “integrate with another streaming service”. I’m not exactly sure what that means. And I’m not going to be surprised if the answer is that this won’t work. But after reading, it’s not obvious to me that it’s prohibited. You can’t scrape metadata, but the approach to lightweight integration I’m describing above wouldn’t.

I’m asking the question “what would be feasible”. And if the answer is “it’s not obvious on reading that any integration with a player of music and manager of audio across streaming services is prohibited, but Spotify specifically says it won’t do X when you talk to them”, then I totally get it.

Hi @Johnny_Ooooops ,

Setting the potential business problems mentioned above aside…

We tried this as a thought experiment a little while back. What would lightweight, API-based streaming service integrations look like?

Our conclusion was that we would end up with “mini-apps” inside of Roon that didn’t really integrate into the core experience very much. They might provide an adequate experience in some peoples’ view. Maybe, as you pointed out, we would do something special to try and unify the search page.

It might feel a lot like how Tesla has integrated various streaming stuff into their interface – they have an agglomerated search interface, but the media sources are otherwise segregated.

For the people who use Roon primarily for audio plumbing, this is might be satisfying. For the people who use it for the music user experience I would anticipate disappointment. That doesn’t mean it’s totally out of the question–but it’s not a slam-dunk either.


Thanks. Mostly glad to know you’ve run through the what-if in enough detail to have made a choice. I get it. If it were cheap, I might say “let people have the choice”, but I can imagine that it would be crappy enough it would result in so many complaints that I wouldn’t want to deal with it in your shoes.

I think it is a plus to have other services even if not fully integrated. You have added Live Radio (which could use some convenience, flexibility, editing features I could go on about). I would love to access my various subscriptions in that way. I have added Radio Paradise in this way. Also, by cumbersome method, have added dozens of channels to My Live Radio such as a number from JazzRadio.com, ClassicalRadio.com, CalmRadio.com, etc. These are subscribed services with unique premium links. I would also love to access Pandora via My Live Radio instead of using different hardware and Bluetooth.

There is active listening with exploration and discovery and there is passive listening while doing chores, etc., or for background. Live Radio with access to as much as possible broadens Roon’s appeal and usefulness without taking away from the core approach, IMO.

I live in Europe, and Spotify is very big here. It reflects the kind of music that I can find on Spotify but not on Tidal, purely because Tidal is USA based and therefore reflects nice music from the USA that can not be found on Spotify. Having them both available within Roon would just be a great win-win for everyone.
I agree that having all the live radio streams and also Tidal-service available and not Spotify is a disadvantage to all Roon users.
Please reconsider to integrate Spotify…

I’m new here and have been drawn to Roon exactly for this reason - the plumbing to handle Zone management. My wife will always want to use the Spotify interface, so I +1000 for this feature.


I think a mini-app is a great concept, even as an Extension not core product. A first party extension.

Then it is clear to users that you are doing something different, not in the main product, and you should expect your experience to be different. You could have a couple of dialog boxes the first time through to reinforce that. I think many people asking for Spotify are on the “plumbing” point of Roon. That someone in the family uses Roon (my daughter in my case) and want to route it to Roon zones.

I hope you continue the thought experiments and am glad you shared.

This “deep integration” thing is either a big pile of BS or an outdated (or bad) design choice. The only thing you need to know is from where to play what you want to play and for that you only need a reference to a specific item within a specific streaming service. Everything else ROON related you can get it outside of the streaming service, from countless other services (as roon probably already does).

I think it is BS. Roon is not out of date, yet it takes them months to years to implement even small changes. Something else is going on that we don’t know about. It doesn’t take a small team of developers so long to fix and implement new features. It just makes no sense.