What parts of HTTP should be avoided for a modern Web API?

Because Tim Berners Lee was trying to solve document management, the HTTP protocol has a lot of features which are distinctly not useful for certain modern problems.

If you are building an API for an application then concepts from HTTP like HTTP methods and HTTP error codes which were designed for documents will just make your APIs more complicated. This is because you are bringing in more features and increasing the cognitive load in design choices.

It makes more sense to make APIs which will work with most of the common HTTP methods like POST/GET/PUT/DELETE etc. - you can ignore the type of HTTP request and HTTP error code and just call the APIs without ceremony.

Basically:

Request → JSON In + PATH → JSON response

Ignore all the HTTP fluff in the process.

See how we did the APIs for Iguana X - it’s just a matter of passing in the server_guid parameter. For a practical example of figuring out showing how easy it is to figure out our APIs read this guide.