Hub XMLRPC API Namespaces
Hub XMLRPC API operates in a similar way to the Uyuni API. For Uyuni API documentation, see https://documentation.suse.com/suma.
The Hub XMLRPC API exposes the same methods that are available from the server’s XMLRPC APIs, with a few differences in parameter and return types. Additionally, the Hub XMLRPC API supports some Hub-specific end points which are not available in the Uyuni API.
Hub supports three different namespaces:
-
The
hub
namespace is used to target the Hub XMLRPC API Server. It supports all the methods that are available on a Uyuni Server XMLRPC API as well as Hub-specific XMLRPC endpoints. Hub-specific methods are primarily related to authentication. -
The
unicast
namespace is used to target a single peripheral server registered in the hub. It redirects any call transparently to one specific server and returns any value as if the server’s XMLRPC API endpoint was used directly. -
The
multicast
namespace is used to target multiple peripheral servers registered in the hub. It redirects any call transparently to all the specified servers and returns the results in the form of amap
.
Some important considerations for hub namespaces:
-
Individual server IDs can be obtained using
client.hub.listServerIds(hubKey)
. -
The
unicast
namespace assumes all methods receivehubKey
and serverID as their first two parameters, then any other parameter as specified by the regular Server API.client.unicast.[namespace].[methodname](hubKey, serverId, param1, param2)
-
You can obtain
hubKey
using different authentication methods. For more information, see large-deployments:hub-auth.adoc. -
The
multicast
namespace assumes all methods receivehubKey
, a list of ServerIDs, then lists of per-server parameters as specified by the regular server API. The return value is a map, withSuccessful
andFailed
entries.client.multicast.[namespace].[methodname](hubKey, [serverId1, serverId2], [param1_s1, param1_s2], [param2_s1, param2_s2])