Search code examples
c#restsharp

IRestResponse could not be found


I have restsharp 107.1.2 loaded via nuget target framework is .net 6.0. The following code claims that IRestResponse reference is missing, though I feel like I'm following pretty close to the RestSharp documentation. What am I missing?

using RestSharp;
using RestSharp.Authenticators;
using System.Text;



static void Main()
{

    
    String url = "https://www.invoicecloud.com/api/v1/biller/status/";

    //Set up the RestClient
    var client = new RestClient(url);

    //Store the generated API from the biller portal
    String GeneratedAPIKey = "SomeKey=";

    //Convert genrated API key to Base64
    String encodedAPIKey = encoding(GeneratedAPIKey);

    //HTTPBasicAuthentication will take a username and a password
    //Here we use your API key as the username and leave the password with ""
    client.Authenticator =  new HttpBasicAuthenticator(encodedAPIKey, "");

  


    //Get the request
    var request = new RestRequest("resource", Method.Get);

    //Get the response

   // var response = client.ExecuteGetAsync(request);

    IRestResponse reponse = client.Execute(request);

Solution

  • As per the documentation (https://restsharp.dev/v107/#restsharp-v107) ...

    The IRestResponse interface is deprecated. You get an instance of RestResponse or RestResponse<T> in return.

    https://restsharp.dev/v107/#deprecated-interfaces

    Again, according to the documentation ...

    var client = new RestClient("https://api.myorg.com");
    
    var request = new RestRequest()
        .AddQueryParameter("foo", "bar")
        .AddJsonBody(someObject);
    
    var response = await client.PostAsync<MyResponse>(request, cancellationToken);
    

    ... as an example.