Hi @Mignot12! Thanks for reaching out on the Community and sharing details about your app idea.
It sounds like a really interesting project focused on genre discovery and curation
You're asking a great question that many developers grapple with when building on the Spotify platform: how to provide useful features without being classified as a "streaming app" and thus limiting commercial options. Let's break it down based on the sources and our previous chat.
The key distinction is between a Streaming SDA and a Non-Streaming SDA.
- A Streaming SDA is one that lets users play music sound recordings directly within your app using Spotify's tools like the Web Playback SDK or playback control endpoints.
- A Non-Streaming SDA is one that doesn't do this.
Why does this matter? Commercial use is generally restricted for Streaming SDAs (you can't charge users, run ads directly on the streaming part, etc.). However, limited commercial use is permitted for Non-Streaming SDAs, like selling advertising or access. A playlist manager app is even given as an example of a Non-Streaming app where charging a monthly fee is allowed.
So, to make commercial use possible, your goal is for your app to be a Non-Streaming SDA. This means avoiding embedding a full media player that streams Spotify music sound recordings directly within your web app.
Let's go through your specific questions:
- Playback: Providing a full-featured media player within your app to play Spotify tracks would likely classify it as a Streaming SDA, which restricts commercialization. Spotify generally recommends that you always link out to the official Spotify app for playback when the client is available on the user's device. Using Spotify metadata and cover art requires you to link back to the content on the Spotify Service anyway.
- App Views: Having sections that manage and display a user's library or curated playlists, like your filtered list or custom playlist system, is absolutely fine and aligns well with being a Non-Streaming SDA, provided these sections don't offer embedded playback using the Spotify Platform. When displaying Spotify Content (metadata, artwork), remember to clearly attribute it with Spotify Marks and link back to the content on Spotify. Also, be careful not to seat Spotify content next to content from similar services.
- Discovery Features: You can retrieve and display information about content from the Spotify catalog. However, please be aware that for new applications, access to certain Web API endpoints related to discovery, such as 'Recommendations' and 'Related Artists', is being restricted starting November 27, 2024. You also cannot use Spotify Content to train machine learning or AI models or for building user profiles to target advertising.
- Non-Library Playlists: Yes, you can show curated or generated playlists featuring tracks from the Spotify catalog, even if the user doesn't have them saved. As long as you attribute the Spotify Content and link back to the Service, this is permissible and doesn't make your app a Streaming SDA on its own.
- User Files: The developer documentation focuses on integrating with the Spotify Platform and Spotify Content. There's no indication in the sources that handling users' local music files is a supported or permitted use case for apps built with these tools.
- Other Platforms: You are prohibited from integrating the Spotify Platform, Service, or Content with streams or content from another service. This restriction likely extends to previews. While displaying metadata from other services isn't explicitly forbidden in the sources, the rule about not seating Spotify content next to content from similar services makes combining metadata from different sources in a single view tricky to do compliantly.
To summarize: to make your app commercially viable, focus on building it as a Non-Streaming SDA. This means your core functionality should be around exploring, organizing, and curating Spotify data, and you should direct users to the official Spotify app for actual playback. Make sure you're complying with the Design Guidelines when displaying content and the data handling requirements in the Developer Policy and Terms.
I hope this helps clarify things! Let me know if you have any other questions.
XimzendSpotify Star
Help others find this answer and click "Accept as Solution".
If you appreciate my answer, maybe give me a Like.
Note: I'm not a Spotify employee.