The purpose of POA Public API is to provide external billing systems with a way to control services provisioning flow, collect resources usage statistics, suspend/resume/cancel services availability for the end-users, modify the objects' properties within Parallels Operations Automation (POA) boundaries.
The API represents a set of methods implemented over XML-RPC. All methods conform to XML-RPC specification so that the external system can use any third-party software implementing this protocol.
All methods constituting the API are transactional on per-call basis. In other words, if an XML-RPC call succeeds, POA can guarantee that all operations implied by the called method have been performed. And vice versa, if a call fails, POA guarantees that no changes implied by this method have been made to the system. By default, a sequence of calls is not transactional as a whole and the external system shall handle failed calls in the sequence itself. However, POA provides a set of helper methods, which allows to call a sequence of methods in context of transaction.
The whole Public API of POA can be subdivided into several groups according to the primary functionality they support.
Starting from version 2.6.5 (freshly installed) POA will accept Public API connections only from allowed hosts/networks. Management Node will be allowed to call POA via Public API by default.
See also: