I tried using this url for consuming API, but getting error 'The Given Header was not Found'.
Don't know what's wrong, when i try in Postman it works.
Below Code for reference,
RSetup.Get();
Initialize;
JsonTextWriter.WriteStartObject;
JsonTextWriter.WritePropertyName('action');
JsonTextWriter.WriteValue('INITAUTH');
JsonTextWriter.WritePropertyName('UserName');
JsonTextWriter.WriteValue(RSetup."API User Name");
JsonTextWriter.WritePropertyName('GstinNo');
JsonTextWriter.WriteValue(RSetup."API GSTIN");
JsonTextWriter.WriteEndObject;
JSON := StringBuilder.ToString;
HttpWebRequestMgt.Initialize(RSetup."API Auth URL");
HttpWebRequestMgt.DisableUI();
HttpWebRequestMgt.SetMethod('POST');
HttpWebRequestMgt.SetContentType('application/json')
HttpWebRequestMgt.SetReturnType('application/json')
HttpWebRequestMgt.AddHeader('client_id',RSetup."API Client ID");
HttpWebRequestMgt.AddHeader('client_secret',RSetup."API Client Secret");
HttpWebRequestMgt.AddHeader('IP',RSetup."API IP");
HttpWebRequestMgt.AddHeader('AuthDateTime',FORMAT(CURRENTDATETIME));
HttpWebRequestMgt.AddBodyAsText(JSON);
TempBlob.INIT;
TempBlob.Blob.CREATEINSTREAM(Instr);
IF NOT HttpWebRequestMgt.GetResponse(Instr,HTTPStatusCode,ResponseHeader)THEN
HttpWebRequestMgt.ProcessFaultResponse(Response);
IF HTTPStatusCode.ToString <> HTTPStatusCode.OK.ToString THEN
ERROR(TempBlob.ReadAsText('',TEXTENCODING::UTF8));
Response := TempBlob.ReadAsText('',TEXTENCODING::UTF8);
MESSAGE(Response);
Response what i receive,
{"MessageId":-1,"Message":"The given header was not found.","ErrorCode":null,"Data":null,"ResponseJson":null,"Status":null}
I am using Codeunit 1297 'Http Web Request Mgt.".