Generic Implementation for Api call in c#
A few points that come to mind:


A lot of your code closely follows the underlying API of the HTTP client instance. It would be better to have a function that generates your client with its default settings (the ones you're setting in the constructor), then just use the appropriate methods on the HttpClient.
There arent many (any?) good use cases for calling Result on a task. You should make your method async and await the task instead.
Your use of Task.Run is redundant. You're wrapping one task inside another.
What happens if there is an error? Incorrect URI, no network etc...