What Is a Web Service?
This guide assumes that you are familiar with the notion of using your computer (the client) to request that some other computer (the server's) perform some task and respond over the Internet. The work a server does is called a service. The service might be returning a weather forecast, or, in the case of Product Advertising API, returning information about items for sale on Amazon. Some of these request and response interactions over the Internet are considered web services provided by a web server.
A web service is any piece of software that uses REST and/or a standardized XML messaging system, described by a WSDL (Web Service Definition Language) (pronounced "wiz-dal"), to exchange data between applications or systems. A web service must have some simple mechanism for interested parties to locate the service and its public interface using standard network protocols, such as, but not limited to, SOAP over HTTP. Software applications written in various programming languages and running on various platforms can use web services transparently to exchange data over computer networks, like the Internet, because the WSDL serves as the definition of the language used by the computers.
In Product Advertising API:
Requests and responses occur across the Internet.
Client and server use REST, SOAP, or XML as the means of communication.
Client and server agree on the grammar and syntax used in the requests and responses by specifying a WSDL.
Requests and responses are not tied to a single operating system or programming language.
A simple example of a Product Advertising API request uses the
You submit a request with the
ItemSearchoperation. The operation asks Amazon's web servers to find descriptions of an item in its databases.
The web servers carry out their service by finding the item descriptions.
The web servers send the item data back to the requester.
All Product Advertising API requests are based on REST or SOAP and all of the responses are based on XML.
For more information about REST, see Anatomy of a REST Request.