QobuzApiSharp 0.0.8

dotnet add package QobuzApiSharp --version 0.0.8
                    
NuGet\Install-Package QobuzApiSharp -Version 0.0.8
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="QobuzApiSharp" Version="0.0.8" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="QobuzApiSharp" Version="0.0.8" />
                    
Directory.Packages.props
<PackageReference Include="QobuzApiSharp" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add QobuzApiSharp --version 0.0.8
                    
#r "nuget: QobuzApiSharp, 0.0.8"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package QobuzApiSharp@0.0.8
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=QobuzApiSharp&version=0.0.8
                    
Install as a Cake Addin
#tool nuget:?package=QobuzApiSharp&version=0.0.8
                    
Install as a Cake Tool

QobuzApiSharp

Latest Version Release date Total Downloads Nuget Nuget C# License

Overview

QobuzApiSharp provides an unofficial c# library for the public REST API offered by the Qobuz streaming service.

API Endpoint

API endpoint used by QobuzApiSharp:

https://www.qobuz.com/api.{format}/{version}/
  • Current version number : 0.2
  • Parsed output format : json

Usage

Instantiation and application authentication

In order to use the API, you need to authenticate your application with an application ID and application secret.
Official apps can contact Qobuz to request application credentials (app_id and app_secret values). These can then be used to instantiate the QobuzApiService class, which provides acces to the Qobuz API endpoints:

QobuzApiService apiService = new QobuzApiService(appId, userAuthToken);

Alternatively, QobuzApiSharp offers to option to attempt to fetch the application credentials from the Qobuz Web Player. To use this option, simply instantiate the QobuzApiService class without any arguments:

QobuzApiService apiService = new QobuzApiService();

Disclaimer : Please note that using the Qobuz Web Player credentials may break at any time due to updates to the Qobuz Web Player

User authentication

Once an instance of the QobuzApiService is successfuly created, a login needs to be performed before accessing endpoint methods which require user authentication. Once a successful login method is performed, the user_auth_token will be cashed in the QobuzApiService for further use.

The QobuzApiService offers 2 types of login methods:

1. Login with username or email and password

When logging in with the user email of username, the plain text password first needs to be converted to a MD5 hash. The MD5 hashed password can be used to perform a login with either of the following methods:

apiService.LoginWithEmail(email, MD5Password);
apiService.LoginWithUsername(username, MD5Password);
2. Login with user ID and user Auth Token

If a user ID and user_auth_token is already available, these can be used to login with the following method:

apiService.LoginWithToken(userID, userAuthToken);

Endpoint method calls

All available endpoints and their methods are available in the QobuzApiService class.
Every attempt is made to keep the QobuzApiService well documented in the code using c# XML comments, so please refer to the internal documentation for more info.
For additional convenience, the automatically generated version of the c# XML comments can also be viewed here. (generated using XmlDocMarkdown)

I will not be responsible for how you use QobuzApiSharp.

This library DOES NOT include...

  • Code to bypass Qobuz's region restrictions.
  • Qobuz app IDs or secrets.

QobuzApiSharp does not publish any of Qobuz's private secrets or app IDs. It contains regular expressions and other code to dynamically grab them from Qobuz's web player's publicly available JavaScript, which is not rehosted, but grabbed client side. Scraping public data is not a violation of the Computer Fraud and Abuse Act (USA) according to the Ninth Court of Appeals, case # 17-16783 (see page 29).

QobuzApiSharp uses the Qobuz API, but is not endorsed, certified or otherwise approved in any way by Qobuz.

Qobuz brand and name is the registered trademark of its respective owner.

QobuzApiSharp has no partnership, sponsorship or endorsement with Qobuz.

By using QobuzApiSharp, you agree to the following: http://static.qobuz.com/apps/api/QobuzAPI-TermsofUse.pdf

Product Compatible and additional computed target framework versions.
.NET Framework net48 is compatible.  net481 was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.
  • .NETFramework 4.8

    • No dependencies.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
0.0.8 802 1/2/2024
0.0.7 363 5/30/2023
0.0.6 207 5/30/2023
0.0.5 220 5/29/2023
0.0.4 228 5/27/2023
0.0.3 252 5/14/2023
0.0.2 287 4/20/2023
0.0.1 281 4/15/2023

Add User Favorites Endpoint methods
- add user favorites
add 1 or more tracks, albums and/or artists to the user's favorites
- remove user favorites
remove 1 or more tracks, albums and/or artists from the user's favorites