Skip to main content

.NET

The recommended way to integrate with IGNOS APIs is to use the official API client which is available on NuGet.

Installation​

Install it from NuGet package manager in Visual studio or from the command line:

dotnet add package Ignos.Api.Client

Usage​

There are several ways to configure the C# client, but the preferred way is to use the following set of extension methods:

services
.AddIgnosHttpClient(configuration)
.AddAzureAuthenticationHandler()
.AddDefaultPolicyHandler();

services.AddIgnosApiClient<ICountriesClient, CountriesClient>();

// Add more clients using services.AddIgnosApiClient as needed

This will automatically look for a configuration section named IgnosApi (can be overriden with the configSectionName argument).

The section will be bound to IgnosApiClientOptions which has the following properties:

public class IgnosApiClientOptions
{
public string TenantId { get; set; }
public string ClientId { get; set; }
public string ClientSecret { get; set; }
public string Scope { get; set; }
public string BaseUrl { get; set; }
}

For other ways to configure the client(s), have a look at the source code or use intellisense to explore the API.

  • AddIgnosHttpClient will add a named HttpClient that will be used for all communication with the Ignos API.
  • AddAzureAuthenticationHandler will add a delegating handler to the named HTTP client using an instance of IConfidentialClientApplication configured according to the provided config.
  • AddDefaultPolicyHandler will add a Polly policy handler that will retry request on transient errors as well as 429 Too Many Requests.