1

I am trying to call the REST API exposed from IBM TM1 Cognos. Using the HttpWebRequest object. Getting the 401 when i tried to pass Authorization header with base64(user:password:namespaceId).

Nandish Hosmane
  • 107
  • 2
  • 18

2 Answers2

1
using (var client = new HttpClient())
{
    var plainTextBytes = System.Text.Encoding.UTF8.GetBytes("username:password:camnamespace");
    var encodeData= System.Convert.ToBase64String(plainTextBytes);

    client.DefaultRequestHeaders.Accept.Clear();
    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
    client.DefaultRequestHeaders.Add("Authorization", "CAMNamespace "+ encodeData);

    //GET Method  
    HttpResponseMessage response = await client.GetAsync("http://serveraddress/api/v1/Cubes");

    if (response.IsSuccessStatusCode)
    {
        var det = await response.Content.ReadAsStringAsync();        
    }
    else
    {
        Console.WriteLine("Internal server Error");
    }
}
Rui Jarimba
  • 11,166
  • 11
  • 56
  • 86
Nandish Hosmane
  • 107
  • 2
  • 18
0

I think you need something like in payton: verify=False to trust the certificate of response.

Pika Supports Ukraine
  • 3,612
  • 10
  • 26
  • 42