Postar JSON HttpContent na API da Web do ASP.NET

Eu tenho uma API da Web do ASP.NET hospedada e posso acessar solicitações http get muito bem, agora preciso passar alguns parâmetros para uma solicitação PostAsync da seguinte forma:

var param = Newtonsoft.Json.JsonConvert.SerializeObject(new { id=_id, code = _code });
HttpContent contentPost = new StringContent(param, Encoding.UTF8, "application/json");

var response = client.PostAsync(string.Format("api/inventory/getinventorybylocationidandcode"), contentPost).Result;

Esta chamada está retornando um resultado 404 Não Encontrado.

A ação da API do lado do servidor tem a seguinte aparência:

[HttpPost]
public List<ItemInLocationModel> GetInventoryByLocationIDAndCode(int id, string code) {
...
}

E só para confirmar minha rota na API da Web é assim:

config.Routes.MapHttpRoute(
            name: "DefaultApiWithAction",
            routeTemplate: "api/{controller}/{action}/{id}",
            defaults: new { id = RouteParameter.Optional }
);

Suponho que estou passando o JSON HttpContent incorretamente. Por que isso retornaria o status 404?

questionAnswers(1)

yourAnswerToTheQuestion