Understanding HTTP fundamentals
APIs are built on top of the Hypertext Transfer Protocol (HTTP), which in turn uses the Transport Control Protocol (TCP) as a transport layer providing guaranteed error-free data delivery. HTTP was originally designed for the transfer of hypertext documents (such as HTML files) but has been adapted for many other uses due to its ubiquity across systems and because it is generally accessible through firewalls and routers, avoiding the use of custom ports or protocols.
HTTP comprises a few core elements, which we will discuss in the following sections.
Uniform Resource Locator
The Uniform Resource Locator (URL) is the address of a resource (file, JSON record, image, etc.) on the internet. URLs are unique (can only reference a single resource) and are fully qualified (meaning they can be resolved to the resource location without ambiguity).
The generic form of a URL is shown here:
scheme://host[:port]/path[?query-string][#fragment-id]
The...