I have a new method in web api
[HttpPost]
public ApiResponse PushMessage( [FromUri] string x, [FromUri] string y, [FromBody] Request Request)
The Web API uses naming regulations. The method for a post should be started with Post.
You should rename your PushMessage to method name PostMessage.
Also the web api defaulty listens (depending on your route) to 'api/values/Message' and not to Pusher/Pushmessage.
[HttpPost] attribute is not required