XML-RPC

A remote procedure call is when one program asks another program to execute a function. XML-RPC is a
standard for remote procedure calls where the call is encoded with XML and sent over HTTP. The XMLRPC
protocol was created by Dave Winer of UserLand Software in collaboration with Microsoft (see
www.xmlrpc.com/spec). It’s specifically targeted at distributed web-based systems talking to each other,
as when one Drupal site asks another Drupal site for some information.
There are two players when XML-RPC happens. One is the site from which the request originates,
known as the client. The site that receives the request is the server.

If your site will be acting only as a server, there’s nothing to worry about because incoming XML-RPC
requests use the standard web port (usually port 80). The file xmlrpc.php in your Drupal installation
contains the code that’s run for an incoming XML-RPC request. It’s known as the XML-RPC endpoint.


XML-RPC Clients
The client is the computer that will be sending the request. It sends a standard HTTP POST request to
the server. The body of this request is composed of XML and contains a single tag named <methodCall>.
Two tags, <methodName> and <params>, are nested inside the <methodCall> tag.