How to get authorization code for long term authentication. I am using Bing Ads API v 9.0.
Here is my Code.
string urlstring = "https://login.live.com/oauth20_authorize.srf?client_id=" + ClientId + "&scope=bingads.manage&response_type=code&redirect_uri=" + "https://login.live.com/oauth20_desktop.srf";
var realUri = new Uri(urlstring,UriKind.Absolute);
var addy = realUri.AbsoluteUri.Substring(0, realUri.AbsoluteUri.Length - realUri.Query.Length);
var MyClient = WebRequest.Create(addy) as HttpWebRequest;
MyClient.Method = WebRequestMethods.Http.Post;
MyClient.Headers[HttpRequestHeader.AcceptLanguage]="en-us";
MyClient.ContentType = "application/x-www-form-urlencoded";
using (var writer = new StreamWriter(MyClient.GetRequestStream()))
{
writer.Write(realUri.Query.Substring(1));
}
var response = (HttpWebResponse)MyClient.GetResponse();
for (int i = 0; i < response.Headers.Count; i++)
{
Console.WriteLine(response.Headers.GetKey(i) + " -- " + response.Headers.Get(i).ToString());
}
var responseSerializer = new DataContractJsonSerializer(typeof(AccessTokens));
AccessTokens tokenResponse = null;
using (Stream responseStream = response.GetResponseStream())
{
if (responseStream != null)
tokenResponse = (AccessTokens)responseSerializer.ReadObject(responseStream);
}
I am following this documentation.