A
server-side web API consists of one or more publicly exposed
endpoints to a defined
request–response message system, typically expressed in
JSON or
XML. The web API is exposed most commonly by means of an
HTTP-based
web server.
Mashups are
web applications which combine the use of multiple server-side web APIs.
Webhooks are server-side web APIs that take input as a
Uniform Resource Identifier (URI) that is designed to be used like a remote
named pipe or a type of
callback such that the server acts as a client to dereference the provided URI and trigger an event on another server which handles this event thus providing a type of peer-to-peer
IPC.
Endpoints Endpoints are important aspects of interacting with server-side web APIs, as they specify where resources can be accessed by third-party software. Usually the access is via a URI to which HTTP requests are posted, and from which the response is thus expected. Web APIs may be public or private, the latter of which requires an
access token. Endpoints need to be static, otherwise the correct functioning of software that interacts with them cannot be guaranteed. If the location of a resource changes (and with it the endpoint) then previously written software will break, as the required resource can no longer be found at the same place. As API providers still want to update their web APIs, many have introduced a versioning system in the URI that points to an endpoint.
Resources versus services Web 2.0 Web APIs often use machine-based interactions such as
REST and
SOAP. RESTful web APIs use
HTTP methods to access resources via URL-encoded parameters, and use
JSON or
XML to transmit data. By contrast,
SOAP protocols are standardized by the
W3C and mandate the use of
XML as the payload format, typically over
HTTP. Furthermore,
SOAP-based Web APIs use
XML validation to ensure structural message integrity, by leveraging the
XML schemas provisioned with
WSDL documents. A
WSDL document accurately defines the XML messages and transport bindings of a
Web service.
Documentation Server-side web APIs are interfaces for the outside world to interact with the business logic. For many companies this internal business logic and the intellectual property associated with it are what distinguishes them from other companies, and potentially what gives them a competitive edge. They do not want this information to be exposed. However, in order to provide a web API of high quality, there
needs to be a sufficient level of documentation. One API provider that not only provides documentation, but also links to it in its error messages is
Twilio. However, there are now directories of popular documented server-side web APIs.
Growth and impact The number of available web APIs has grown consistently over the past years, as businesses realize the growth opportunities associated with running an open platform, that any developer can interact with.
ProgrammableWeb tracks over 24000 Web APIs that were available in 2022, up from 105 in 2005. Web APIs have become ubiquitous. There are few major software applications/services that do not offer some form of web API. One of the most common forms of interacting with these web APIs is via embedding external resources, such as tweets, Facebook comments, YouTube videos, etc. In fact there are very successful companies, such as
Disqus, whose main service is to provide embeddable tools, such as a feature-rich comment system. Any website of the TOP 100
Alexa Internet ranked websites uses APIs and/or provides its own APIs, which is a very distinct indicator for the prodigious scale and impact of web APIs as a whole. As the number of available web APIs has grown, open source tools have been developed to provide more sophisticated search and discovery. APIs.json provides a machine-readable description of an API and its operations, and the related project APIs.io offers a searchable public listing of APIs based on the APIs.json metadata format.
Business Commercial Many companies and organizations rely heavily on their Web API infrastructure to serve their core business clients. In 2014
Netflix received around 5 billion API requests, most of them within their private API.
Governmental Many governments collect a lot of data, and some governments are now opening up access to this data. The interfaces through which this data is typically made accessible are web APIs. Web APIs allow for data, such as "budget, public works, crime, legal, and other agency data" to be accessed by any developer in a convenient manner. ==Example==