Spotify.NET/docs/next/getting_started/index.html
2020-11-10 17:53:16 +00:00

36 lines
28 KiB
HTML

<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width">
<meta name="generator" content="Docusaurus v2.0.0-alpha.56">
<title data-react-helmet="true">Getting Started | SpotifyAPI-NET</title><meta data-react-helmet="true" name="docsearch:version" content="next"><meta data-react-helmet="true" name="twitter:card" content="summary_large_image"><meta data-react-helmet="true" property="og:title" content="Getting Started | SpotifyAPI-NET"><meta data-react-helmet="true" name="description" content="Adding SpotifyAPI-NET to your project"><meta data-react-helmet="true" property="og:description" content="Adding SpotifyAPI-NET to your project"><meta data-react-helmet="true" property="og:url" content="https://johnnycrazy.github.io/SpotifyAPI-NET/docs/next/getting_started"><link data-react-helmet="true" rel="shortcut icon" href="/SpotifyAPI-NET/img/favicon.ico"><link data-react-helmet="true" rel="canonical" href="https://johnnycrazy.github.io/SpotifyAPI-NET/docs/next/getting_started"><link rel="stylesheet" href="/SpotifyAPI-NET/styles.8a053330.css">
<link rel="preload" href="/SpotifyAPI-NET/styles.c98ed224.js" as="script">
<link rel="preload" href="/SpotifyAPI-NET/runtime~main.d6854818.js" as="script">
<link rel="preload" href="/SpotifyAPI-NET/main.73459b16.js" as="script">
<link rel="preload" href="/SpotifyAPI-NET/1.3b60c25a.js" as="script">
<link rel="preload" href="/SpotifyAPI-NET/2.2bb7aa4d.js" as="script">
<link rel="preload" href="/SpotifyAPI-NET/3.f4b60483.js" as="script">
<link rel="preload" href="/SpotifyAPI-NET/1be78505.163494cb.js" as="script">
<link rel="preload" href="/SpotifyAPI-NET/ad407b76.fbd12313.js" as="script">
<link rel="preload" href="/SpotifyAPI-NET/92bb876c.a768f0a3.js" as="script">
</head>
<body>
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=window.matchMedia("(prefers-color-scheme: dark)"),n=function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();null!==n?t(n):e.matches&&t("dark")}()</script><div id="__docusaurus">
<nav class="navbar navbar--light navbar--fixed-top"><div class="navbar__inner"><div class="navbar__items"><div aria-label="Navigation bar toggle" class="navbar__toggle" role="button" tabindex="0"><svg xmlns="http://www.w3.org/2000/svg" width="30" height="30" viewBox="0 0 30 30" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></div><a class="navbar__brand" href="/SpotifyAPI-NET/"><img class="navbar__logo" src="/SpotifyAPI-NET/img/logo.svg" alt="SpotifyAPI-NET"><strong class="navbar__title">SpotifyAPI-NET</strong></a><div class="navbar__item dropdown dropdown--hoverable dropdown--left"><a activeclassname="navbar__link--active" class="navbar__item navbar__link">Docs</a><ul class="dropdown__menu"><li><a class="dropdown__link" href="/SpotifyAPI-NET/docs/next/introduction">Latest/Next</a></li><li><a class="dropdown__link" href="/SpotifyAPI-NET/docs/home">5.1.1</a></li></ul></div><a class="navbar__item navbar__link" href="/SpotifyAPI-NET/news">News</a></div><div class="navbar__items navbar__items--right"><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET" target="_blank" rel="noopener noreferrer" class="navbar__item navbar__link">GitHub</a><div class="react-toggle react-toggle--disabled displayOnlyInLargeViewport_1gtM"><div class="react-toggle-track"><div class="react-toggle-track-check"><span class="toggle_keGJ moon_1gwN"></span></div><div class="react-toggle-track-x"><span class="toggle_keGJ sun_3CPA"></span></div></div><div class="react-toggle-thumb"></div><input type="checkbox" disabled="" aria-label="Dark mode toggle" class="react-toggle-screenreader-only"></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div><div class="navbar-sidebar"><div class="navbar-sidebar__brand"><a class="navbar__brand" href="/SpotifyAPI-NET/"><img class="navbar__logo" src="/SpotifyAPI-NET/img/logo.svg" alt="SpotifyAPI-NET"><strong class="navbar__title">SpotifyAPI-NET</strong></a></div><div class="navbar-sidebar__items"><div class="menu"><ul class="menu__list"><li class="menu__list-item"><a activeclassname="navbar__link--active" class="menu__link menu__link--sublist">Docs</a><ul class="menu__list"><li class="menu__list-item"><a class="menu__link" href="/SpotifyAPI-NET/docs/next/introduction">Latest/Next</a></li><li class="menu__list-item"><a class="menu__link" href="/SpotifyAPI-NET/docs/home">5.1.1</a></li></ul></li><li class="menu__list-item"><a class="menu__link" href="/SpotifyAPI-NET/news">News</a></li><li class="menu__list-item"><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET" target="_blank" rel="noopener noreferrer" class="menu__link">GitHub</a></li></ul></div></div></div></nav><div class="main-wrapper"><div class="docPage_1kjD"><div class="docSidebarContainer_1cYp"><div class="sidebar_1kLs"><div class="menu menu--responsive menu_w2sC"><button aria-label="Open Menu" aria-haspopup="true" class="button button--secondary button--sm menu__button" type="button"><svg aria-label="Menu" class="sidebarMenuIcon_2vk4" xmlns="http://www.w3.org/2000/svg" height="24" width="24" viewBox="0 0 32 32" role="img" focusable="false"><title>Menu</title><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><ul class="menu__list"><li class="menu__list-item"><a class="menu__link menu__link--sublist menu__link--active" href="#!">SpotifyAPI-NET</a><ul class="menu__list"><li class="menu__list-item"><a class="menu__link" tabindex="0" href="/SpotifyAPI-NET/docs/next/introduction">Introduction</a></li><li class="menu__list-item"><a aria-current="page" class="menu__link menu__link--active active" tabindex="0" href="/SpotifyAPI-NET/docs/next/getting_started">Getting Started</a></li><li class="menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#!" tabindex="0">Guides</a><ul class="menu__list"><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/error_handling">Error Handling</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/configuration">Configuration</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/logging">Logging</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/proxy">Proxy</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/pagination">Pagination</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/retry_handling">Retry Handling</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/iplayableitem">IPlayableItem</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/unit_testing">Unit Testing</a></li></ul></li><li class="menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#!" tabindex="0">Authentication Guides</a><ul class="menu__list"><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/auth_introduction">Introduction</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/client_credentials">Client Credentials</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/implicit_grant">Implicit Grant</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/authorization_code">Authorization Code</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/pkce">PKCE</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/token_swap">Token Swap</a></li></ul></li><li class="menu__list-item"><a class="menu__link" tabindex="0" href="/SpotifyAPI-NET/docs/next/showcase">Showcase</a></li><li class="menu__list-item menu__list-item--collapsed"><a class="menu__link menu__link--sublist" href="#!" tabindex="0">Examples</a><ul class="menu__list"><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/example_asp">ASP.NET</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/example_blazor_wasm">Blazor WASM</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/example_blazor">Blazor ServerSide</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/example_cli_custom_html">CLI - Custom HTML</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/example_cli_persistent_config">CLI - Persistent Config</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/example_token_swap">Token Swap</a></li><li class="menu__list-item"><a class="menu__link" tabindex="-1" href="/SpotifyAPI-NET/docs/next/example_uwp">UWP</a></li></ul></li></ul></li></ul></div></div></div><main class="docMainContainer_FFX1"><div class="container padding-vert--lg docItemWrapper_1cc7"><div class="row"><div class="col docItemCol_2GOA"><div class="docItemContainer_2cwg"><article><div><span class="badge badge--secondary">Version: next</span></div><header><h1 class="docTitle_1vWb">Getting Started</h1></header><div class="markdown"><h2><a aria-hidden="true" tabindex="-1" class="anchor enhancedAnchor_ZqCz" id="adding-spotifyapi-net-to-your-project"></a>Adding SpotifyAPI-NET to your project<a aria-hidden="true" tabindex="-1" class="hash-link" href="#adding-spotifyapi-net-to-your-project" title="Direct link to heading">#</a></h2><p>The library can be added to your project via the following methods:</p><h3><a aria-hidden="true" tabindex="-1" class="anchor enhancedAnchor_ZqCz" id="package-managers"></a>Package Managers<a aria-hidden="true" tabindex="-1" class="hash-link" href="#package-managers" title="Direct link to heading">#</a></h3><div style="padding:30px"><div><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_3zTA tabs__item--active">.NET CLI</li><li role="tab" tabindex="0" aria-selected="false" class="tabs__item tabItem_3zTA">Package Manager</li><li role="tab" tabindex="0" aria-selected="false" class="tabs__item tabItem_3zTA">Package Reference</li></ul><div role="tabpanel" class="margin-vert--md"><div><div class="codeBlockContent_32p_"><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button><div tabindex="0" class="prism-code language-shell codeBlock_19pQ"><div class="codeBlockLines_2n9r" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">dotnet </span><span class="token function" style="color:rgb(130, 170, 255)">add</span><span class="token plain"> package SpotifyAPI.Web --version </span><span class="token number" style="color:rgb(247, 140, 108)">6.0</span><span class="token plain">.0-beta.11</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token comment" style="color:rgb(105, 112, 152);font-style:italic"># Optional Auth module, which includes an embedded HTTP Server for OAuth2</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">dotnet </span><span class="token function" style="color:rgb(130, 170, 255)">add</span><span class="token plain"> package SpotifyAPI.Web.Auth --version </span><span class="token number" style="color:rgb(247, 140, 108)">6.0</span><span class="token plain">.0-beta.11</span></div></div></div></div></div></div></div></div><h3><a aria-hidden="true" tabindex="-1" class="anchor enhancedAnchor_ZqCz" id="add-dll-manually"></a>Add DLL Manually<a aria-hidden="true" tabindex="-1" class="hash-link" href="#add-dll-manually" title="Direct link to heading">#</a></h3><p>You can also grab the latest compiled DLL from our <a href="https://github.com/johnnycrazy/spotifyapi-net/releases" target="_blank" rel="noopener noreferrer">GitHub Releases Page</a>. It can be added to your project via Visual Studio or directly in your <code>.csproj</code>:</p><div class="mdxCodeBlock_iHAB"><div class="codeBlockContent_32p_"><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button><div tabindex="0" class="prism-code language-xml codeBlock_19pQ"><div class="codeBlockLines_2n9r" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&lt;</span><span class="token tag" style="color:rgb(255, 85, 114)">ItemGroup</span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"> </span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&lt;</span><span class="token tag" style="color:rgb(255, 85, 114)">Reference</span><span class="token tag" style="color:rgb(255, 85, 114)"> </span><span class="token tag attr-name" style="color:rgb(255, 203, 107)">Include</span><span class="token tag attr-value punctuation" style="color:rgb(199, 146, 234)">=</span><span class="token tag attr-value punctuation" style="color:rgb(199, 146, 234)">&quot;</span><span class="token tag attr-value" style="color:rgb(255, 85, 114)">SpotifyAPI.Web</span><span class="token tag attr-value punctuation" style="color:rgb(199, 146, 234)">&quot;</span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"> </span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&lt;</span><span class="token tag" style="color:rgb(255, 85, 114)">HintPath</span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&gt;</span><span class="token plain">..\Dlls\SpotifyAPI.Web.dll</span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&lt;/</span><span class="token tag" style="color:rgb(255, 85, 114)">HintPath</span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"> </span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&lt;/</span><span class="token tag" style="color:rgb(255, 85, 114)">Reference</span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&gt;</span><span class="token plain"></span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"></span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&lt;/</span><span class="token tag" style="color:rgb(255, 85, 114)">ItemGroup</span><span class="token tag punctuation" style="color:rgb(199, 146, 234)">&gt;</span></div></div></div></div></div><h3><a aria-hidden="true" tabindex="-1" class="anchor enhancedAnchor_ZqCz" id="compile-yourself"></a>Compile Yourself<a aria-hidden="true" tabindex="-1" class="hash-link" href="#compile-yourself" title="Direct link to heading">#</a></h3><div class="mdxCodeBlock_iHAB"><div class="codeBlockContent_32p_"><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button><div tabindex="0" class="prism-code language-sh codeBlock_19pQ"><div class="codeBlockLines_2n9r" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">git clone https://github.com/JohnnyCrazy/SpotifyAPI-NET.git</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">cd SpotifyAPI-NET</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">dotnet restore</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">dotnet build</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">ls -la SpotifyAPI.Web/bin/Debug/netstandard2.1/SpotifyAPI.Web.dll</span></div></div></div></div></div><h2><a aria-hidden="true" tabindex="-1" class="anchor enhancedAnchor_ZqCz" id="first-api-calls"></a>First API Calls<a aria-hidden="true" tabindex="-1" class="hash-link" href="#first-api-calls" title="Direct link to heading">#</a></h2><p>You&#x27;re now ready to issue your first calls to the Spotify API, a small console example:</p><div class="mdxCodeBlock_iHAB"><div class="codeBlockContent_32p_"><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button><div tabindex="0" class="prism-code language-csharp codeBlock_19pQ"><div class="codeBlockLines_2n9r" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">using System;</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">using System.Threading.Tasks;</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">using SpotifyAPI.Web;</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">class Program</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">{</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"> static async Task Main()</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"> {</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"> var spotify = new SpotifyClient(&quot;YourAccessToken&quot;);</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"> var track = await spotify.Tracks.Get(&quot;1s6ux0lNiTziSrd7iUAADH&quot;);</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"> Console.WriteLine(track.Name);</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"> }</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">}</span></div></div></div></div></div><div class="admonition admonition-tip alert alert--success"><div class="admonition-heading"><h5><span class="admonition-icon"><svg xmlns="http://www.w3.org/2000/svg" width="12" height="16" viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</h5></div><div class="admonition-content"><p>Notice that the spotify api does not allow unauthorized API access. Wondering where you should get an access token from? For a quick test, head over to the <a href="https://developer.spotify.com/console/get-album/" target="_blank" rel="noopener noreferrer">Spotify Developer Console</a> and generate an access token with the required scopes! For a permanent solution, head over to the <a href="/SpotifyAPI-NET/docs/next/auth_introduction">authentication guides</a>.</p></div></div><p>There is no online documentation for every available API call, but XML inline docs are available:</p><ul><li><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET/blob/master/SpotifyAPI.Web/Clients/Interfaces/IUserProfileClient.cs">UserProfile</a></li><li><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET/blob/master/SpotifyAPI.Web/Clients/Interfaces/IBrowseClient.cs">Browse</a></li><li><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET/blob/master/SpotifyAPI.Web/Clients/Interfaces/IShowsClient.cs">Shows</a></li><li><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET/blob/master/SpotifyAPI.Web/Clients/Interfaces/IPlaylistsClient.cs">Playlists</a></li><li><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET/blob/master/SpotifyAPI.Web/Clients/Interfaces/ISearchClient.cs">Search</a></li><li><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET/blob/master/SpotifyAPI.Web/Clients/Interfaces/IFollowClient.cs">Follow</a></li><li><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET/blob/master/SpotifyAPI.Web/Clients/Interfaces/ITracksClient.cs">Tracks</a></li><li><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET/blob/master/SpotifyAPI.Web/Clients/Interfaces/IPlayerClient.cs">Player</a></li><li><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET/blob/master/SpotifyAPI.Web/Clients/Interfaces/IAlbumsClient.cs">Albums</a></li><li><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET/blob/master/SpotifyAPI.Web/Clients/Interfaces/IArtistsClient.cs">Artists</a></li><li><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET/blob/master/SpotifyAPI.Web/Clients/Interfaces/IPersonalizationClient.cs">Personalization</a></li><li><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET/blob/master/SpotifyAPI.Web/Clients/Interfaces/IEpisodesClient.cs">Episodes</a></li><li><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET/blob/master/SpotifyAPI.Web/Clients/Interfaces/ILibraryClient.cs">Library</a></li></ul><p>All calls have the <a href="https://developer.spotify.com/documentation/web-api/reference-beta/" target="_blank" rel="noopener noreferrer">Spotify Web API documentation reference</a> attached as a remark.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor enhancedAnchor_ZqCz" id="querybody-parameters"></a>Query/Body Parameters<a aria-hidden="true" tabindex="-1" class="hash-link" href="#querybody-parameters" title="Direct link to heading">#</a></h2><p>If an API endpoint has query or body parameters, a request model can be supplied to the method</p><div class="mdxCodeBlock_iHAB"><div class="codeBlockContent_32p_"><button type="button" aria-label="Copy code to clipboard" class="copyButton_1BYj">Copy</button><div tabindex="0" class="prism-code language-csharp codeBlock_19pQ"><div class="codeBlockLines_2n9r" style="color:#bfc7d5;background-color:#292d3e"><div class="token-line" style="color:#bfc7d5"><span class="token plain">// No optional or required query/body parameters</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">// The track ID is part of the request path --&gt; it&#x27;s not treated as query/body parameter</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">var track = await spotify.Tracks.Get(&quot;1s6ux0lNiTziSrd7iUAADH&quot;);</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">// Optional query/body parameter</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">var track = await spotify.Tracks.Get(&quot;1s6ux0lNiTziSrd7iUAADH&quot;, new TrackRequest{</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"> Market = &quot;DE&quot;</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">});</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain" style="display:inline-block">
</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">// Sometimes, query/body parameters are also required!</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">var tracks = await spotify.Tracks.GetSeveral(new TracksRequest(new List&lt;string&gt; {</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"> &quot;1s6ux0lNiTziSrd7iUAADH&quot;,</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain"> &quot;6YlOxoHWLjH6uVQvxUIUug&quot;</span></div><div class="token-line" style="color:#bfc7d5"><span class="token plain">}));</span></div></div></div></div></div><p>If a query/body parameter is required, it has to be supplied in the constructor of the request model. In the background, empty/null checks are also performed to make sure required parameters are not empty/null. If it is optional, it can be supplied as a property to the request model.</p><h2><a aria-hidden="true" tabindex="-1" class="anchor enhancedAnchor_ZqCz" id="guides"></a>Guides<a aria-hidden="true" tabindex="-1" class="hash-link" href="#guides" title="Direct link to heading">#</a></h2><p>All other relevant topics are covered in the &quot;Guides&quot; and <a href="/SpotifyAPI-NET/docs/next/auth_introduction">Authentication Guides</a> section in the sidebar!</p></div></article><div class="margin-vert--xl"><div class="row"><div class="col"><a href="https://github.com/JohnnyCrazy/SpotifyAPI-NET/edit/master/SpotifyAPI.Docs/docs/getting_started.md" target="_blank" rel="noreferrer noopener"><svg fill="currentColor" height="1.2em" width="1.2em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 40 40" style="margin-right:0.3em;vertical-align:sub"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>Edit this page</a></div><div class="col text--right"><em><small>Last updated on <time datetime="2020-11-10T17:49:52.000Z" class="docLastUpdatedAt_1sqk">11/10/2020</time> by <strong>Jonas Dellinger</strong></small></em></div></div></div><div class="margin-vert--lg"><nav class="pagination-nav"><div class="pagination-nav__item"><a class="pagination-nav__link" href="/SpotifyAPI-NET/docs/next/introduction"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">« Introduction</div></a></div><div class="pagination-nav__item pagination-nav__item--next"><a class="pagination-nav__link" href="/SpotifyAPI-NET/docs/next/error_handling"><div class="pagination-nav__sublabel">Next</div><div class="pagination-nav__label">Error Handling »</div></a></div></nav></div></div></div><div class="col col--3"><div class="tableOfContents_TbNY"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#adding-spotifyapi-net-to-your-project" class="table-of-contents__link">Adding SpotifyAPI-NET to your project</a><ul><li><a href="#package-managers" class="table-of-contents__link">Package Managers</a></li><li><a href="#add-dll-manually" class="table-of-contents__link">Add DLL Manually</a></li><li><a href="#compile-yourself" class="table-of-contents__link">Compile Yourself</a></li></ul></li><li><a href="#first-api-calls" class="table-of-contents__link">First API Calls</a></li><li><a href="#querybody-parameters" class="table-of-contents__link">Query/Body Parameters</a></li><li><a href="#guides" class="table-of-contents__link">Guides</a></li></ul></div></div></div></div></main></div></div><footer class="footer footer--dark"><div class="container"><div class="text--center"><div>Copyright © 2020 Jonas Dellinger. Built with Docusaurus.</div></div></div></footer></div>
<script src="/SpotifyAPI-NET/styles.c98ed224.js"></script>
<script src="/SpotifyAPI-NET/runtime~main.d6854818.js"></script>
<script src="/SpotifyAPI-NET/main.73459b16.js"></script>
<script src="/SpotifyAPI-NET/1.3b60c25a.js"></script>
<script src="/SpotifyAPI-NET/2.2bb7aa4d.js"></script>
<script src="/SpotifyAPI-NET/3.f4b60483.js"></script>
<script src="/SpotifyAPI-NET/1be78505.163494cb.js"></script>
<script src="/SpotifyAPI-NET/ad407b76.fbd12313.js"></script>
<script src="/SpotifyAPI-NET/92bb876c.a768f0a3.js"></script>
</body>
</html>