I tried the below OAuth API to get the company's response. But I got the message as a bad request.
using (HttpClient client1 = new HttpClient())
{
string companiesEndpoint =/https:/api.businesscentral.dynamics.com/v2.0/organizations//+environment_name+/api/v2.0/companies//;
string Access_Token = Session[/BCAccessToken/].ToString();
client1.DefaultRequestHeaders.Add(/Authorization/, /Bearer / + Access_Token);
HttpResponseMessage response1 = await client1.GetAsync(companiesEndpoint);
if (response1.IsSuccessStatusCode)
{
string jsonResponsevalue = await response1.Content.ReadAsStringAsync();
var Items = JsonConvert.DeserializeObject<dynamic>(jsonResponsevalue);
JArray signItemtoken1 = (JArray)Items[/value/];
foreach (var response in signItemtoken1)
{
string ComapnyName = response[/name/] != null ? (string)response[/name/] : //;
string CompanyID = response[/id/] != null ? (string)response[/id/] : //;
if (ComapnyName == company_name)
{
Session[/BCCompanyName/] = CompanyName;
Session[/BCCompanyId/] = CompanyID;
}
}
}
}
Response:
{StatusCode: 400, ReasonPhrase: 'Bad Request', Version: 1.1, Content: System.Net.Http.StreamContent, Headers:
{
Access-Control-Allow-Headers: Origin, X-Requested-With, Authorization
Access-Control-Allow-Origin: *
Access-Control-Allow-Credentials: true
ms-correlation-x: 516b7540-449c-2272-8895-d17e7e9fc0a7
mise-correlation-id: 7d028162-108e-4ea6-b35c-eab9850c4561
x-content-type-options: nosniff
Strict-Transport-Security: max-age=31536000; includeSubDomains
Access-Control-Expose-Headers: ms-correlation-x
Date: Tue, 20 Feb 2024 11:27:16 GMT
Server: Microsoft-HTTPAPI/2.0
Content-Length: 79
Content-Language: en-US
Content-Type: application/json
}}
How to call an API to get company details or items from Dynamics 365 Business Central?