Kris Craig wrote (on 14/10/2014):
The Content-Type argument really isn't an issue since the API developer should be setting the right headers for the request method, anyway.
I think the point is that there's currently no mechanism for data from anything other than application/x-www-form-urlencoded and multipart/form-data to end up in $_POST anyway.
There was a discussion of that a while back, and I think there's talk on PHP-FIG about how standardising HTTP interfaces. It comes down to needing some flexibility over /how/ different content types are parsed, which makes a function-call based API make more sense than one that silently slurps the data on every page load.