The currentPage().getParameters() can read GET pagams, and also reads POST body only if the header Content-Type = application/x-www-form-urlencoded
However, when the Content-Type changes to application/json, I cannot read incoming JSON, nothing in the keySet(). Here is the code I use to read
Map<string, string> requestText = (Map<string, string>)ApexPages.currentPage().getParameters();
The external application uses application/json in header and there is no way to influence that. Also, no way to do Oauth with that app.
I'm grateful for your ideas