XML-RPC API 3.4

This reference documentation describes the xml-rpc methods exposed by OpenNebula. Each description consists of the method name and the input and output values.

All xml-rpc responses share a common structure.

Type Data Type Description
OUT Boolean True or false whenever is successful or not.
OUT String If an error occurs this is the error message.
OUT Int Error code.

The output will always consist of three values. The first and third ones are fixed, but the second one will contain the String error message only in case of failure. If the method is successful, the returned value may be of another Data Type.

The Error Code will contain one of the following values:

Value Code
0x0000 SUCCESS Success response.
0x0100 AUTHENTICATION User could not be authenticated.
0x0200 AUTHORIZATION User is not authorized to perform the requested action.
0x0400 NO_EXISTS The requested resource does not exist.
0x0800 ACTION FIXME
0x1000 XML_RPC_API FIXME
0x2000 INTERNAL FIXME

:!: All methods expect a session string associated to the connected user as the first parameter. It has to be formed with the contents of the ONE_AUTH file, which will be <username>:<password> with the default 'core' auth driver.

:!: Each XML-RPC request has to be authenticated and authorized. See the Auth Subsystem documentation for more information.

The information strings returned by the one.*.info methods are XML-formatted. You can download the XML Schemas (XSD) following this link. We encourage you to use the -x option of the command line interface to collect sample outputs from your own infrastructure.

The methods that accept XML templates require the root element to be TEMPLATE. For instance, this template:

NAME = abc
MEMORY = 1024
ATT1 = value1

Can be also given to OpenNebula with the following XML:

<TEMPLATE>
  <NAME>abc</NAME>
  <MEMORY>1024</MEMORY>
  <ATT1>value1</ATT1>
</TEMPLATE>

inlinetoc

Authorization Requests Reference

For each XML-RPC request, the session token is authenticated, and after that the Request Manager generates an authorization request that can include more than one operation. The following tables document these requests.

onevm

onevm command XML-RPC Method Auth. Request
deploy one.vm.deploy VM:ADMIN
HOST:MANAGE
delete
restart
shutdown
suspend
hold
resubmit
stop
resume
release
cancel
one.vm.action VM:MANAGE
migrate
livemigrate
one.vm.migrate VM:ADMIN
HOST:MANAGE
saveas one.vm.savedisk VM:MANAGE
IMAGE:CREATE
create one.vm.allocate VM:CREATE
IMAGE:USE
NET:USE
show one.vm.info VM:USE
chown
chgrp
one.vm.chown VM:MANAGE
[USER:MANAGE]
[GROUP:USE]
chmod one.vm.chmod VM:<MANAGE | ADMIN>
list
top
one.vmpool.info VM:USE

:!: The deploy action requires the user issuing the command to have VM:ADMIN rights. This user will usually be the scheduler with the oneadmin credentials.

The scheduler deploys VMs to the Hosts over which the VM owner has MANAGE rights.

onetemplate

onetemplate command XML-RPC Method Auth. Request
update one.template.update TEMPLATE:MANAGE
instantiate one.template.instantiate TEMPLATE:USE
[IMAGE:USE]
[NET:USE]
create one.template.allocate TEMPLATE:CREATE
delete one.template.delete TEMPLATE:MANAGE
show one.template.info TEMPLATE:USE
chown
chgrp
one.template.chown TEMPLATE:MANAGE
[USER:MANAGE]
[GROUP:USE]
chmod one.template.chmod TEMPLATE:<MANAGE | ADMIN>
list
top
one.templatepool.info TEMPLATE:USE

onehost

onehost command XML-RPC Method Auth. Request
enable
disable
one.host.enable HOST:ADMIN
update one.host.update HOST:ADMIN
create one.host.allocate HOST:CREATE
delete one.host.delete HOST:ADMIN
show one.host.info HOST:USE
list
top
one.hostpool.info HOST:USE

:!: onehost sync is not performed by the core, it is done by the ruby command onehost.

onecluster

onecluster command XML-RPC Method Auth. Request
create one.cluster.allocate CLUSTER:CREATE
delete one.cluster.delete CLUSTER:ADMIN
addhost one.cluster.addhost CLUSTER:ADMIN
HOST:ADMIN
delhost one.cluster.delhost CLUSTER:ADMIN
HOST:ADMIN
adddatastore one.cluster.adddatastore CLUSTER:ADMIN
DATASTORE:ADMIN
deldatastore one.cluster.deldatastore CLUSTER:ADMIN
DATASTORE:ADMIN
addvnet one.cluster.addvnet CLUSTER:ADMIN
NET:ADMIN
delvnet one.cluster.delvnet CLUSTER:ADMIN
NET:ADMIN
show one.cluster.info CLUSTER:USE
list one.clusterpool.info CLUSTER:USE

onegroup

onegroup command XML-RPC Method Auth. Request
create one.group.allocate GROUP:CREATE
delete one.group.delete GROUP:ADMIN
show one.group.info GROUP:USE
list one.grouppool.info GROUP:USE

onevnet

onevnet command XML-RPC Method Auth. Request
addleases one.vn.addleases NET:MANAGE
rmleases one.vn.rmleases NET:MANAGE
hold one.vn.hold NET:MANAGE
release one.vn.release NET:MANAGE
update one.vn.update NET:MANAGE
create one.vn.allocate NET:CREATE
delete one.vn.delete NET:MANAGE
show one.vn.info NET:USE
chown
chgrp
one.vn.chown NET:MANAGE
[USER:MANAGE]
[GROUP:USE]
chmod one.vn.chmod NET:<MANAGE | ADMIN>
list one.vnpool.info NET:USE

oneuser

oneuser command XML-RPC Method Auth. Request
create one.user.allocate USER:CREATE
delete one.user.delete USER:ADMIN
show one.user.info USER:USE
passwd one.user.passwd USER:MANAGE
update one.user.update USER:MANAGE
chauth one.user.chauth USER:ADMIN
chgrp one.user.chgrp USER:MANAGE
GROUP:USE
list one.userpool.info USER:USE

onedatastore

oneimage command XML-RPC Method Auth. Request
create one.datastore.allocate DATASTORE:CREATE
delete one.datastore.delete DATASTORE:ADMIN
show one.datastore.info DATASTORE:USE
update one.datastore.update DATASTORE:MANAGE
chown
chgrp
one.datastore.chown DATASTORE:MANAGE
[USER:MANAGE]
[GROUP:USE]
chmod one.datastore.chmod DATASTORE:<MANAGE | ADMIN>
list one.datastorepool.info DATASTORE:USE

oneimage

oneimage command XML-RPC Method Auth. Request
persistent
nonpersistent
one.image.persistent IMAGE:MANAGE
enable
disable
one.image.enable IMAGE:MANAGE
chtype one.image.chtype IMAGE:MANAGE
update one.image.update IMAGE:MANAGE
create one.image.allocate IMAGE:CREATE
delete one.image.delete IMAGE:MANAGE
show one.image.info IMAGE:USE
chown
chgrp
one.image.chown IMAGE:MANAGE
[USER:MANAGE]
[GROUP:USE]
chmod one.image.chmod IMAGE:<MANAGE | ADMIN>
list
top
one.imagepool.info IMAGE:USE

oneacl

oneacl command XML-RPC Method Auth. Request
create one.acl.addrule ACL:MANAGE
delete one.acl.delrule ACL:MANAGE
list one.acl.info ACL:MANAGE

Actions for Templates Management

one.template.allocate

  • Description: Allocates a new template in OpenNebula.
  • Parameters
Type Data Type Description
IN String The session string.
IN String A string containing the template contents. Syntax can be the usual “attribute=value” or XML.
OUT Boolean true or false whenever is successful or not
OUT Int/String The allocated resource ID / The error string.
OUT Int Error code.

one.template.delete

  • Description: Deletes the given template from the pool.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.template.instantiate

  • Description: Instantiates a new virtual machine from a template.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN String Name for the new VM instance. If it is an empty string, OpenNebula will assign one automatically.
OUT Boolean true or false whenever is successful or not
OUT Int/String The new virtual machine ID / The error string.
OUT Int Error code.

one.template.update

  • Description: Replaces the template contents.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN String The new template contents. Syntax can be the usual “attribute=value” or XML.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.template.chmod

  • Description: Changes the permission bits of a template.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN Int USER USE bit. If set to -1, it will not change.
IN Int USER MANAGE bit. If set to -1, it will not change.
IN Int USER ADMIN bit. If set to -1, it will not change.
IN Int GROUP USE bit. If set to -1, it will not change.
IN Int GROUP MANAGE bit. If set to -1, it will not change.
IN Int GROUP ADMIN bit. If set to -1, it will not change.
IN Int OTHER USE bit. If set to -1, it will not change.
IN Int OTHER MANAGE bit. If set to -1, it will not change.
IN Int OTHER ADMIN bit. If set to -1, it will not change.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.template.chown

  • Description: Changes the ownership of a template.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN Int The User ID of the new owner. If set to -1, the owner is not changed.
IN Int The Group ID of the new group. If set to -1, the group is not changed.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.template.info

  • Description: Retrieves information for the template.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

one.templatepool.info

  • Description: Retrieves information for all or part of the Resources in the pool.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int Filter flag
- < = -3: Connected user's resources
- -2: All resources
- -1: Connected user's and his group's resources
- > = 0: UID User's Resources
IN Int Range start ID. Can be -1.
IN Int Range end ID. Can be -1.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

The range can be used to retrieve a subset of the pool, from the 'start' to the 'end' ID. To retrieve the complete pool, use (-1, -1); to retrieve all the pool from a specific ID to the last one, use (<id>, -1), and to retrieve the first elements up to an ID, use (0, <id>).

Actions for Virtual Machine Management

The VM Life Cycle is explained in this diagram. It contains all the LifeCycleManager states, and the transitions triggered by the onevm commands. It is intended to be consulted by developers.

The simplified diagram used in the Virtual Machine Instances documentation uses a smaller number of state names. These names are the ones used by onevm list, e.g. prolog, prolog_migrate and prolog_resume are all presented as “prol”. It is intended as a reference for end-users.

one.vm.allocate

  • Description: Allocates a new virtual machine in OpenNebula.
  • Parameters
Type Data Type Description
IN String The session string.
IN String A string containing the template for the vm. Syntax can be the usual “attribute=value” or XML.
OUT Boolean true or false whenever is successful or not
OUT Int/String The allocated resource ID / The error string.
OUT Int Error code.

one.vm.deploy

  • Description: initiates the instance of the given vmid on the target host.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN Int The Host ID of the target host where the VM will be deployed.
OUT Boolean true or false whenever is successful or not
OUT Int/String The VM ID / The error string.
OUT Int Error code.

one.vm.action

  • Description: submits an action to be performed on a virtual machine.
  • Parameters
Type Data Type Description
IN String The session string.
IN String the action name to be performed, see below.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The VM ID / The error string.
OUT Int Error code.

The action String must be one of the following:

Action Description
shutdown
hold
release
stop
cancel
suspend
resume
restart
reboot
finalize
resubmit

one.vm.migrate

  • Description: migrates one virtual machine (vid) to the target host (hid).
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN Int the target host id (hid) where we want to migrate the vm.
IN Boolean if true we are indicating that we want livemigration, otherwise false.
OUT Boolean true or false whenever is successful or not
OUT Int/String The VM ID / The error string.
OUT Int Error code.

one.vm.savedisk

  • Description: Sets the disk to be saved in the given image.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN Int Disk ID of the disk we want to save.
IN String Name for the new Image where the disk will be saved.
IN String Type for the new Image. If it is an empty string, then the default one will be used. See the existing types in the Image template reference.
OUT Boolean true or false whenever is successful or not
OUT Int/String The new allocated Image ID / The error string.
OUT Int Error code.

one.vm.chmod

  • Description: Changes the permission bits of a virtual machine.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN Int USER USE bit. If set to -1, it will not change.
IN Int USER MANAGE bit. If set to -1, it will not change.
IN Int USER ADMIN bit. If set to -1, it will not change.
IN Int GROUP USE bit. If set to -1, it will not change.
IN Int GROUP MANAGE bit. If set to -1, it will not change.
IN Int GROUP ADMIN bit. If set to -1, it will not change.
IN Int OTHER USE bit. If set to -1, it will not change.
IN Int OTHER MANAGE bit. If set to -1, it will not change.
IN Int OTHER ADMIN bit. If set to -1, it will not change.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.vm.chown

  • Description: Changes the ownership of a virtual machine.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN Int The User ID of the new owner. If set to -1, the owner is not changed.
IN Int The Group ID of the new group. If set to -1, the group is not changed.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.vm.info

  • Description: Retrieves information for the virtual machine.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

one.vmpool.info

  • Description: Retrieves information for all or part of the VMs in the pool.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int Filter flag
- < = -3: Connected user's resources
- -2: All resources
- -1: Connected user's and his group's resources
- > = 0: UID User's Resources
IN Int Range start ID. Can be -1.
IN Int Range end ID. Can be -1.
IN Int VM state to filter by.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

The range can be used to retrieve a subset of the pool, from the 'start' to the 'end' ID. To retrieve the complete pool, use (-1, -1); to retrieve all the pool from a specific ID to the last one, use (<id>, -1), and to retrieve the first elements up to an ID, use (0, <id>).

The state filter can be one of the following:

Value State
-2 Any state, including DONE
-1 Any state, except DONE
0 INIT
1 PENDING
2 HOLD
3 ACTIVE
4 STOPPED
5 SUSPENDED
6 DONE
7 FAILED

Actions for Hosts Management

one.host.allocate

  • Description: Allocates a new host in OpenNebula
  • Parameters
Type Data Type Description
IN String The session string.
IN String Hostname of the machine we want to add
IN String The name of the information manager (im_mad_name), this values are taken from the oned.conf with the tag name IM_MAD (name)
IN String The name of the virtual machine manager mad name (vmm_mad_name), this values are taken from the oned.conf with the tag name VM_MAD (name)
IN String The name of the virtual network manager mad name (vnm_mad_name), see the Networking Subsystem documentation
IN Int The cluster ID. If it is -1, this host won't be added to any cluster.
OUT Boolean true or false whenever is successful or not
OUT Int/String The allocated Host ID / The error string.
OUT Int Error code.

one.host.delete

  • Description: Deletes the given host from the pool
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.host.enable

  • Description: Enables or disables the given host
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The Host ID.
IN Boolean Set it to true/false to enable or disable the target Host.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.host.update

  • Description: Replaces the host's template contents.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN String The new template contents. Syntax can be the usual “attribute=value” or XML.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.host.info

  • Description: Retrieves information for the host.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

one.hostpool.info

  • Description: Retrieves information for all the hosts in the pool.
  • Parameters
Type Data Type Description
IN String The session string.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

Actions for Cluster Management

one.cluster.allocate

  • Description: Allocates a new cluster in OpenNebula.
  • Parameters
Type Data Type Description
IN String The session string.
IN String Name for the new cluster.
OUT Boolean true or false whenever is successful or not
OUT Int/String The allocated cluster ID / The error string.
OUT Int Error code.

one.cluster.delete

  • Description: Deletes the given cluster from the pool.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.cluster.addhost

  • Description: Adds a host to the given cluster.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The cluster ID.
IN Int The host ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.cluster.delhost

  • Description: Removes a host from the given cluster.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The cluster ID.
IN Int The host ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.cluster.adddatastore

  • Description: Adds a datastore to the given cluster.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The cluster ID.
IN Int The datastore ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.cluster.deldatastore

  • Description: Removes a datastore from the given cluster.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The cluster ID.
IN Int The datastore ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.cluster.addvnet

  • Description: Adds a vnet to the given cluster.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The cluster ID.
IN Int The vnet ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.cluster.delvnet

  • Description: Removes a vnet from the given cluster.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The cluster ID.
IN Int The vnet ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.cluster.info

  • Description: Retrieves information for the cluster.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

one.clusterpool.info

  • Description: Retrieves information for all the clusters in the pool.
  • Parameters
Type Data Type Description
IN String The session string.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

Actions for Virtual Network Management

one.vn.allocate

  • Description: Allocates a new virtual network in OpenNebula.
  • Parameters
Type Data Type Description
IN String The session string.
IN String A string containing the template of the virtual network. Syntax can be the usual “attribute=value” or XML.
IN Int The cluster ID. If it is -1, this virtual network won't be added to any cluster.
OUT Boolean true or false whenever is successful or not
OUT Int/String The allocated resource ID / The error string.
OUT Int Error code.

one.vn.delete

  • Description: Deletes the given virtual network from the pool.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.vn.addleases

  • Description: Adds a new lease to the virtual network. Only available for FIXED networks.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN String template of the lease to add. Syntax can be the usual “attribute=value” or XML, see below.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

Examples of valid templates:

LEASES=[IP=192.168.0.5]
LEASES=[IP=192.168.0.5, MAC=50:20:20:20:20:20]
<TEMPLATE>
  <LEASES>
    <IP>192.168.0.5</IP>
  </LEASES>
</TEMPLATE>
<TEMPLATE>
  <LEASES>
    <IP>192.168.0.5</IP>
    <MAC>MAC=50:20:20:20:20:20</MAC>
  </LEASES>
</TEMPLATE>

one.vn.rmleases

  • Description: Removes a lease from the virtual network. Only available for FIXED networks.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN String template of the lease to remove. Syntax can be the usual “attribute=value” or XML, see one.vn.addleases.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.vn.hold

  • Description: Holds a virtual network Lease as used.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN String template of the lease to hold, e.g. “LEASES=[IP=192.168.0.5]”.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.vn.release

  • Description: Releases a virtual network Lease on hold.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN String template of the lease to release, e.g. “LEASES=[IP=192.168.0.5]”.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.vn.update

  • Description: Replaces the virtual network template contents.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN String The new template contents. Syntax can be the usual “attribute=value” or XML.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.vn.chmod

  • Description: Changes the permission bits of a virtual network.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN Int USER USE bit. If set to -1, it will not change.
IN Int USER MANAGE bit. If set to -1, it will not change.
IN Int USER ADMIN bit. If set to -1, it will not change.
IN Int GROUP USE bit. If set to -1, it will not change.
IN Int GROUP MANAGE bit. If set to -1, it will not change.
IN Int GROUP ADMIN bit. If set to -1, it will not change.
IN Int OTHER USE bit. If set to -1, it will not change.
IN Int OTHER MANAGE bit. If set to -1, it will not change.
IN Int OTHER ADMIN bit. If set to -1, it will not change.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.vn.chown

  • Description: Changes the ownership of a virtual network.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN Int The User ID of the new owner. If set to -1, the owner is not changed.
IN Int The Group ID of the new group. If set to -1, the group is not changed.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.vn.info

  • Description: Retrieves information for the virtual network.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

one.vnpool.info

  • Description: Retrieves information for all or part of the virtual networks in the pool.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int Filter flag
- < = -3: Connected user's resources
- -2: All resources
- -1: Connected user's and his group's resources
- > = 0: UID User's Resources
IN Int Range start ID. Can be -1.
IN Int Range end ID. Can be -1.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

The range can be used to retrieve a subset of the pool, from the 'start' to the 'end' ID. To retrieve the complete pool, use (-1, -1); to retrieve all the pool from a specific ID to the last one, use (<id>, -1), and to retrieve the first elements up to an ID, use (0, <id>).

Actions for Datastore Management

one.datastore.allocate

  • Description: Allocates a new datastore in OpenNebula.
  • Parameters
Type Data Type Description
IN String The session string.
IN String A string containing the template of the datastore. Syntax can be the usual “attribute=value” or XML.
OUT Boolean true or false whenever is successful or not
OUT Int/String The allocated resource ID / The error string.
OUT Int Error code.

one.datastore.delete

  • Description: Deletes the given datastore from the pool.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.datastore.update

  • Description: Replaces the datastore template contents.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN String The new template contents. Syntax can be the usual “attribute=value” or XML.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.datastore.chmod

  • Description: Changes the permission bits of a datastore.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN Int USER USE bit. If set to -1, it will not change.
IN Int USER MANAGE bit. If set to -1, it will not change.
IN Int USER ADMIN bit. If set to -1, it will not change.
IN Int GROUP USE bit. If set to -1, it will not change.
IN Int GROUP MANAGE bit. If set to -1, it will not change.
IN Int GROUP ADMIN bit. If set to -1, it will not change.
IN Int OTHER USE bit. If set to -1, it will not change.
IN Int OTHER MANAGE bit. If set to -1, it will not change.
IN Int OTHER ADMIN bit. If set to -1, it will not change.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.datastore.chown

  • Description: Changes the ownership of a datastore.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN Int The User ID of the new owner. If set to -1, the owner is not changed.
IN Int The Group ID of the new group. If set to -1, the group is not changed.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.datastore.info

  • Description: Retrieves information for the datastore.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

one.datastorepool.info

  • Description: Retrieves information for all or part of the datastores in the pool.
  • Parameters
Type Data Type Description
IN String The session string.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

Actions for Image Management

one.image.allocate

  • Description: Allocates a new image in OpenNebula.
  • Parameters
Type Data Type Description
IN String The session string.
IN String A string containing the template of the image. Syntax can be the usual “attribute=value” or XML.
IN Int The datastore ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The allocated resource ID / The error string.
OUT Int Error code.

one.image.delete

  • Description: Deletes the given image from the pool.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.image.enable

  • Description: Enables or disables an image.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The Image ID.
IN Boolean True for enabling, false for disabling.
OUT Boolean true or false whenever is successful or not.
OUT Int/String The Image ID / The error string.
OUT Int Error code.

one.image.persistent

  • Description: Sets the Image as persistent or not persistent.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The Image ID.
IN Boolean True for persistent, false for non-persisent.
OUT Boolean true or false whenever is successful or not.
OUT Int/String The Image ID / The error string.
OUT Int Error code.

one.image.chtype

  • Description: Changes the type of an Image.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The Image ID.
IN String New type for the Image. See the existing types in the Image template reference.
OUT Boolean true or false whenever is successful or not.
OUT Int/String The Image ID / The error string.
OUT Int Error code.

one.image.update

  • Description: Replaces the image template contents.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN String The new template contents. Syntax can be the usual “attribute=value” or XML.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.image.chmod

  • Description: Changes the permission bits of an image.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN Int USER USE bit. If set to -1, it will not change.
IN Int USER MANAGE bit. If set to -1, it will not change.
IN Int USER ADMIN bit. If set to -1, it will not change.
IN Int GROUP USE bit. If set to -1, it will not change.
IN Int GROUP MANAGE bit. If set to -1, it will not change.
IN Int GROUP ADMIN bit. If set to -1, it will not change.
IN Int OTHER USE bit. If set to -1, it will not change.
IN Int OTHER MANAGE bit. If set to -1, it will not change.
IN Int OTHER ADMIN bit. If set to -1, it will not change.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.image.chown

  • Description: Changes the ownership of an image.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN Int The User ID of the new owner. If set to -1, the owner is not changed.
IN Int The Group ID of the new group. If set to -1, the group is not changed.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.image.info

  • Description: Retrieves information for the image.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

one.imagepool.info

  • Description: Retrieves information for all or part of the images in the pool.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int Filter flag
- < = -3: Connected user's resources
- -2: All resources
- -1: Connected user's and his group's resources
- > = 0: UID User's Resources
IN Int Range start ID. Can be -1.
IN Int Range end ID. Can be -1.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

The range can be used to retrieve a subset of the pool, from the 'start' to the 'end' ID. To retrieve the complete pool, use (-1, -1); to retrieve all the pool from a specific ID to the last one, use (<id>, -1), and to retrieve the first elements up to an ID, use (0, <id>).

Actions for User Management

one.user.allocate

  • Description: Allocates a new user in OpenNebula
  • Parameters
Type Data Type Description
IN String The session string.
IN String username for the new user
IN String password for the new user
IN String authentication driver for the new user. If it is an empty string, then the default ('core') is used
OUT Boolean true or false whenever is successful or not
OUT Int/String The allocated User ID / The error string.
OUT Int Error code.

one.user.delete

  • Description: Deletes the given user from the pool.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.user.passwd

  • Description: Changes the password for the given user.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN String The new password
OUT Boolean true or false whenever is successful or not
OUT Int/String The User ID / The error string.
OUT Int Error code.

one.user.update

  • Description: Replaces the user template contents.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN String The new template contents. Syntax can be the usual “attribute=value” or XML.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.user.chauth

  • Description: Changes the authentication driver and the password for the given user.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
IN String The new authentication driver.
IN String The new password. If it is an empty string, the password is not changed.
OUT Boolean true or false whenever is successful or not
OUT Int/String The User ID / The error string.
OUT Int Error code.

one.user.chgrp

  • Description: Changes the group of the given user.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The User ID.
IN Int The Group ID of the new group.
OUT Boolean true or false whenever is successful or not
OUT Int/String The User ID / The error string.
OUT Int Error code.

one.user.info

  • Description: Retrieves information for the user.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID. If it is -1, then the connected user's own info info is returned
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

one.userpool.info

  • Description: Retrieves information for all the users in the pool.
  • Parameters
Type Data Type Description
IN String The session string.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

Actions for Group Management

one.group.allocate

  • Description: Allocates a new group in OpenNebula.
  • Parameters
Type Data Type Description
IN String The session string.
IN String Name for the new group.
OUT Boolean true or false whenever is successful or not
OUT Int/String The allocated Group ID / The error string.
OUT Int Error code.

one.group.delete

  • Description: Deletes the given group from the pool.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The resource ID / The error string.
OUT Int Error code.

one.group.info

  • Description: Retrieves information for the group.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int The object ID. If it is -1, then the connected user's group info info is returned
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

one.grouppool.info

  • Description: Retrieves information for all the groups in the pool.
  • Parameters
Type Data Type Description
IN String The session string.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.

Actions for ACL Rules Management

one.acl.addrule

  • Description: Adds a new ACL rule.
  • Parameters
Type Data Type Description
IN String The session string.
IN String User component of the new rule. A string containing a hex number.
IN String Resource component of the new rule. A string containing a hex number.
IN String Rights component of the new rule. A string containing a hex number.
OUT Boolean true or false whenever is successful or not
OUT Int/String The allocated ACL rule ID / The error string.
OUT Int Error code.

To build the hex. numbers required to create a new rule we recommend you to read the ruby or java code.

one.acl.delrule

  • Description: Deletes an ACL rule.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int ACL rule ID.
OUT Boolean true or false whenever is successful or not
OUT Int/String The ACL rule ID / The error string.
OUT Int Error code.

one.acl.info

  • Description: Returns the complete ACL rule set.
  • Parameters
Type Data Type Description
IN String The session string.
IN Int ACL rule ID.
OUT Boolean true or false whenever is successful or not
OUT String The information string / The error string.
OUT Int Error code.