Spotify.NET/SpotifyAPI.Docs/docs/SpotifyWebAPI/gettingstarted.md
2016-08-20 12:49:09 +02:00

4.9 KiB

#Getting started

This API provides full access to the new SpotifyWebAPI introduced here.
With it, you can search for Tracks/Albums/Artists and also get User-based information.
It's also possible to create new playlists and add tracks to it.


##First steps

Imports
So after you added the API to your project, you may want to add following imports to your files:

using SpotifyAPI.Web; //Base Namespace
using SpotifyAPI.Web.Auth; //All Authentication-related classes
using SpotifyAPI.Web.Enums; //Enums
using SpotifyAPI.Web.Models; //Models for the JSON-responses

Basic-Usage
Now you can actually start doing calls to the SpotifyAPI, just create a new Instance of SpotifyWebAPI:

private static SpotifyWebAPI _spotify;

public static void Main(String[] args)
{
        _spotify = new SpotifyWebAPI()
        {
            UseAuth = false, //This will disable Authentication.
        }
        FullTrack track = _spotify.GetTrack("3Hvu1pq89D4R0lyPBoujSv");
        Console.WriteLine(track.Name); //Yeay! We just printed a tracks name.
        //...
}

##Authentication If you look through the available API-Methods, you will soon notice nearly all of them require Authentication. Further infos on how to implement Authentication can be found here


##Examples
A list of small examples can be found here. Do you think a specific example is missing? Feel free to open a PR/Issue!


##Error-Handling Every API-Call returns a reponse-model which consists of base-error model. To check if a specific API-Call was successful, use the following approach:

PrivateProfile profile = _spotify.GetPrivateProfile();
if (profile.HasError())
{
    Console.WriteLine("Error Status: " + profile.Error.Status);
    Console.WriteLine("Error Msg: " + profile.Error.Message);
}

##Asynchronous Every API-Call now has an asynchronous method. Just append Async to the Method-Name.
Example:

public async void Test()
{
    var profile = await _spotify.GetPrivateProfileAsync();
    Console.WriteLine(profile.DisplayName);
}

##API-Reference

###Albums

###Artists

###Browse

###Follow

###Library

###Playlists

###Profiles

###Search

###Tracks

###Util