using System.Net; using System.Net.Http.Headers; using YandexMusic.API.Models.Account; using YandexMusic.API.Requests.Common; namespace YandexMusic.API.Requests.Account; internal class YGetMusicTokenBuilder : YAuthRequestBuilder { public YGetMusicTokenBuilder(YandexMusicApi api) : base(api) { } protected override string Method => WebRequestMethods.Http.Post; protected override string PathTemplate => "/1/token"; protected override HttpContent? GetContent(object _) => new FormUrlEncodedContent(new Dictionary { { "client_id", YConstants.ClientId }, { "client_secret", YConstants.ClientSecret }, { "grant_type", "x-token" }, { "access_token", Api.Storage.AccessToken.AccessToken } }); protected override void SetCustomHeaders(HttpRequestHeaders headers) { headers.Remove("Authorization"); } }