.. Licensed to the Apache Software Foundation (ASF) under one
   or more contributor license agreements.  See the NOTICE file
   distributed with this work for additional information#
   regarding copyright ownership.  The ASF licenses this file
   to you under the Apache License, Version 2.0 (the
   "License"); you may not use this file except in compliance
   with the License.  You may obtain a copy of the License at
   http://www.apache.org/licenses/LICENSE-2.0
   Unless required by applicable law or agreed to in writing,
   software distributed under the License is distributed on an
   "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
   KIND, either express or implied.  See the License for the
   specific language governing permissions and limitations
   under the License.


Programmer Guide
================        

This guide shows how to develop CloudStack, use the API for operation
and integration, access the usage data and use CloudStack specific tools
to ease development, testing and integration.


The CloudStack API
------------------

Getting Started
~~~~~~~~~~~~~~~

To get started using the CloudStack API, you should have the following:

-  URL of the CloudStack server you wish to integrate with.

-  Both the API Key and Secret Key for an account. This should have been
   generated by the administrator of the cloud instance and given to
   you.

-  Familiarity with HTTP GET/POST and query strings.

-  Knowledge of either XML or JSON.

-  Knowledge of a programming language that can generate HTTP requests;
   for example, Java or PHP.


Roles
~~~~~

The CloudStack API supports three access roles:

#. Root Admin. Access to all features of the cloud, including both
   virtual and physical resource management.

#. Domain Admin. Access to only the virtual resources of the clouds that
   belong to the administrator’s domain.

#. User. Access to only the features that allow management of the user’s
   virtual instances, storage, and network.


API Reference Documentation
~~~~~~~~~~~~~~~~~~~~~~~~~~~

You can find all the API reference documentation at the below site:

`https://cloudstack.apache.org/api.html 
<https://cloudstack.apache.org/api.html>`__


Making API Requests
~~~~~~~~~~~~~~~~~~~~

All CloudStack API requests are submitted in the form of a HTTP GET/POST
with an associated command and any parameters. A request is composed of
the following whether in HTTP or HTTPS:

-  CloudStack API URL: This is the web services API entry point(for
   example, http://www.example.com:8080/client/api)

-  Command: The web services command you wish to execute, such as start
   a virtual machine or create a disk volume

-  Parameters: Any additional required or optional parameters for the
   command

A sample API GET request looks like the following:

.. parsed-literal::

   http://localhost:8080/client/api?command=deployVirtualMachine&serviceOfferingId=1&diskOfferingId=1&templateId=2&zoneId=4&apiKey=miVr6X7u6bN_sdahOBpjNejPgEsT35eXq-jB8CG20YI3yaxXcgpyuaIRmFI_EJTVwZ0nUkkJbPmY3y2bciKwFQ&signature=Lxx1DM40AjcXU%2FcaiK8RAP0O1hU%3D

Or in a more readable format:

.. parsed-literal::

   1. http://localhost:8080/client/api
   2. ?command=deployVirtualMachine
   3. &serviceOfferingId=1
   4. &diskOfferingId=1
   5. &templateId=2
   6. &zoneId=4
   7. &apiKey=miVr6X7u6bN_sdahOBpjNejPgEsT35eXqjB8CG20YI3yaxXcgpyuaIRmFI_EJTVwZ0nUkkJbPmY3y2bciKwFQ
   8. &signature=Lxx1DM40AjcXU%2FcaiK8RAP0O1hU%3D

The first line is the CloudStack API URL. This is the Cloud instance you
wish to interact with.

The second line refers to the command you wish to execute. In our
example, we are attempting to deploy a fresh new virtual machine. It is
preceded by a (?) to separate itself from the CloudStack API URL.

Lines 3-6 are the parameters for this given command. To see the command
and its request parameters, please refer to the appropriate section in
the CloudStack API documentation. Each parameter field-value pair
(field=value) is preceded by an ampersand character (&).

Line 7 is the user API Key that uniquely identifies the account. See
Signing API Requests on page 7.

Line 8 is the signature hash created to authenticate the user account
executing the API command.


Signing API Requests
~~~~~~~~~~~~~~~~~~~~

Whether you access the CloudStack API with HTTP or HTTPS, it must still
be signed so that CloudStack can verify the caller has been
authenticated and authorized to execute the command. Make sure that you
have both the API Key and Secret Key provided by the CloudStack
administrator for your account before proceeding with the signing
process.

To show how to sign a request, we will re-use the previous example.

.. parsed-literal::

   http://localhost:8080/client/api?command=deployVirtualMachine&serviceOfferingId=1&diskOfferingId=1&templateId=2&zoneId=4&apiKey=miVr6X7u6bN_sdahOBpjNejPgEsT35eXq-jB8CG20YI3yaxXcgpyuaIRmFI_EJTVwZ0nUkkJbPmY3y2bciKwFQ&signature=Lxx1DM40AjcXU%2FcaiK8RAP0O1hU%3D

Breaking this down, we have several distinct parts to this URL.

-  Base URL: This is the base URL to the CloudStack Management Server.

   .. parsed-literal::

      http://localhost:8080

-  API Path: This is the path to the API Servlet that processes the
   incoming requests.

   .. parsed-literal::

      /client/api?

-  Command String: This part of the query string comprises of the
   command, its parameters, and the API Key that identifies the account.

   .. note:: 
      As with all query string parameters of field-value pairs, the "field" 
      component is case insensitive while all "value" values are case 
      sensitive.

   .. sourcecode: bash

      command=deployVirtualMachine&serviceOfferingId=1&diskOfferingId=1&templateId=2&zoneId=4&apiKey=miVr6X7u6bN_sdahOBpjNejPgEsT35eXq-jB8CG20YI3yaxXcgpyuaIRmFI_EJTVwZ0nUkkJbPmY3y2bciKwFQ

-  Signature: This is the signature of the command string that is
   generated using a combination of the user’s Secret Key and the HMAC
   SHA-1 hashing algorithm.

   .. parsed-literal::

      &signature=Lxx1DM40AjcXU%2FcaiK8RAP0O1hU%3D

Every API request has the format Base URL+API Path+Command
String+Signature.

To generate the signature.

#. For each field-value pair (as separated by a '&') in the Command
   String, URL encode each value so that it can be safely sent via HTTP
   GET.

   .. note:: Make sure all spaces are encoded as "%20" rather than "+".

#. Lower case the entire Command String and sort it alphabetically via
   the field for each field-value pair. The result of this step would
   look like the following.

   .. parsed-literal::

      apikey=mivr6x7u6bn_sdahobpjnejpgest35exq-jb8cg20yi3yaxxcgpyuairmfi_ejtvwz0nukkjbpmy3y2bcikwfq&command=deployvirtualmachine&diskofferingid=1&serviceofferingid=1&templateid=2&zoneid=4

#. Take the sorted Command String and run it through the HMAC SHA-1
   hashing algorithm (most programming languages offer a utility method
   to do this) with the user’s Secret Key. Base64 encode the resulting
   byte array in UTF-8 so that it can be safely transmitted via HTTP.
   The final string produced after Base64 encoding should be
   "Lxx1DM40AjcXU%2FcaiK8RAP0O1hU%3D".

   By reconstructing the final URL in the format Base URL+API
   Path+Command String+Signature, the final URL should look like:

   .. parsed-literal::

      http://localhost:8080/client/api?command=deployVirtualMachine&serviceOfferingId=1&diskOfferingId=1&templateId=2&zoneId=4&apiKey=miVr6X7u6bN_sdahOBpjNejPgEsT35eXq-jB8CG20YI3yaxXcgpyuaIRmFI_EJTVwZ0nUkkJbPmY3y2bciKwFQ&signature=Lxx1DM40AjcXU%2FcaiK8RAP0O1hU%3D


How to sign an API call with Python
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

To illustrate the procedure used to sign API calls we present a step by
step interactive session using Python.

First import the required modules:

.. parsed-literal::
   
   $python
   Python 2.7.3 (default, Nov 17 2012, 19:54:34) 
   [GCC 4.2.1 Compatible Apple Clang 4.1 ((tags/Apple/clang-421.11.66))] on darwin
   Type "help", "copyright", "credits" or "license" for more information.
   >>> import urllib2
   >>> import urllib
   >>> import hashlib
   >>> import hmac
   >>> import base64
     

Define the endpoint of the Cloud, the command that you want to execute
and the keys of the user.

.. parsed-literal::

   >>> baseurl='http://localhost:8080/client/api?'
   >>> request={}
   >>> request['command']='listUsers'
   >>> request['response']='json'
   >>> request['apikey']='plgWJfZK4gyS3mOMTVmjUVg-X-jlWlnfaUJ9GAbBbf9EdM-kAYMmAiLqzzq1ElZLYq_u38zCm0bewzGUdP66mg'
   >>> secretkey='VDaACYb0LV9eNjTetIOElcVQkvJck_J_QljX_FcHRj87ZKiy0z0ty0ZsYBkoXkY9b7eq1EhwJaw7FF3akA3KBQ'
      

Build the request string:

.. parsed-literal::

   >>> request_str='&'.join(['='.join([k,urllib.quote_plus(request[k])]) for k in request.keys()])
   >>> request_str
   'apikey=plgWJfZK4gyS3mOMTVmjUVg-X-jlWlnfaUJ9GAbBbf9EdM-kAYMmAiLqzzq1ElZLYq_u38zCm0bewzGUdP66mg&command=listUsers&response=json'
      

Compute the signature with hmac, do a 64 bit encoding and a url
encoding:

.. parsed-literal::
      
   >>> sig_str='&'.join(['='.join([k.lower(),urllib.quote_plus(request[k]).lower().replace('+','%20')])for k in sorted(request.iterkeys())]) 
   >>> sig_str 'apikey=plgwjfzk4gys3momtvmjuvg-x-jlwlnfauj9gabbbf9edm-kaymmailqzzq1elzlyq_u38zcm0bewzgudp66mg&command=listusers&response=json'
   >>> sig=hmac.new(secretkey,sig_str,hashlib.sha1)
   >>> sig
   <hmac.HMAC instance at 0x10d91d680>
   >>> sig=hmac.new(secretkey,sig_str,hashlib.sha1).digest()
   >>> sig
   'M:]\x0e\xaf\xfb\x8f\xf2y\xf1p\x91\x1e\x89\x8a\xa1\x05\xc4A\xdb'
   >>> sig=base64.encodestring(hmac.new(secretkey,sig_str,hashlib.sha1).digest())
   >>> sig
   'TTpdDq/7j/J58XCRHomKoQXEQds=\n'
   >>> sig=base64.encodestring(hmac.new(secretkey,sig_str,hashlib.sha1).digest()).strip()
   >>> sig
   'TTpdDq/7j/J58XCRHomKoQXEQds='
   >>> sig=urllib.quote_plus(base64.encodestring(hmac.new(secretkey,sig_str,hashlib.sha1).digest()).strip())
      

Finally, build the entire string and do an http GET:

.. parsed-literal::
      
   >>> req=baseurl+request_str+'&signature='+sig
   >>> req
   'http://localhost:8080/client/api?apikey=plgWJfZK4gyS3mOMTVmjUVg-X-jlWlnfaUJ9GAbBbf9EdM-kAYMmAiLqzzq1ElZLYq_u38zCm0bewzGUdP66mg&command=listUsers&response=json&signature=TTpdDq%2F7j%2FJ58XCRHomKoQXEQds%3D'
   >>> res=urllib2.urlopen(req)
   >>> res.read()
   '{ "listusersresponse" : { "count":3 ,"user" : [  {"id":"7ed6d5da-93b2-4545-a502-23d20b48ef2a","username":"admin","firstname":"admin","lastname":"cloud","created":"2012-07-05T12:18:27-0700","state":"enabled","account":"admin","accounttype":1,"domainid":"8a111e58-e155-4482-93ce-84efff3c7c77","domain":"ROOT","apikey":"plgWJfZK4gyS3mOMTVmjUVg-X-jlWlnfaUJ9GAbBbf9EdM-kAYMmAiLqzzq1ElZLYq_u38zCm0bewzGUdP66mg","secretkey":"VDaACYb0LV9eNjTetIOElcVQkvJck_J_QljX_FcHRj87ZKiy0z0ty0ZsYBkoXkY9b7eq1EhwJaw7FF3akA3KBQ","accountid":"7548ac03-af1d-4c1c-9064-2f3e2c0eda0d"}, {"id":"1fea6418-5576-4989-a21e-4790787bbee3","username":"runseb","firstname":"foobar","lastname":"goa","email":"joe@smith.com","created":"2013-04-10T16:52:06-0700","state":"enabled","account":"admin","accounttype":1,"domainid":"8a111e58-e155-4482-93ce-84efff3c7c77","domain":"ROOT","apikey":"Xhsb3MewjJQaXXMszRcLvQI9_NPy_UcbDj1QXikkVbDC9MDSPwWdtZ1bUY1H7JBEYTtDDLY3yuchCeW778GkBA","secretkey":"gIsgmi8C5YwxMHjX5o51pSe0kqs6JnKriw0jJBLceY5bgnfzKjL4aM6ctJX-i1ddQIHJLbLJDK9MRzsKk6xZ_w","accountid":"7548ac03-af1d-4c1c-9064-2f3e2c0eda0d"}, {"id":"52f65396-183c-4473-883f-a37e7bb93967","username":"toto","firstname":"john","lastname":"smith","email":"john@smith.com","created":"2013-04-23T04:27:22-0700","state":"enabled","account":"admin","accounttype":1,"domainid":"8a111e58-e155-4482-93ce-84efff3c7c77","domain":"ROOT","apikey":"THaA6fFWS_OmvU8od201omxFC8yKNL_Hc5ZCS77LFCJsRzSx48JyZucbUul6XYbEg-ZyXMl_wuEpECzK-wKnow","secretkey":"O5ywpqJorAsEBKR_5jEvrtGHfWL1Y_j1E4Z_iCr8OKCYcsPIOdVcfzjJQ8YqK0a5EzSpoRrjOFiLsG0hQrYnDA","accountid":"7548ac03-af1d-4c1c-9064-2f3e2c0eda0d"} ] } }'
      

Enabling API Call Expiration
~~~~~~~~~~~~~~~~~~~~~~~~~~~~

You can set an expiry timestamp on API calls to prevent replay attacks
over non-secure channels, such as HTTP. The server tracks the expiry
timestamp you have specified and rejects all the subsequent API requests
that come in after this validity period.

To enable this feature, add the following parameters to the API request:

-  signatureVersion=3: If the signatureVersion parameter is missing or
   is not equal to 3, the expires parameter is ignored in the API
   request.

-  expires=YYYY-MM-DDThh:mm:ssZ: Specifies the date and time at which
   the signature included in the request is expired. The timestamp is
   expressed in the YYYY-MM-DDThh:mm:ssZ format, as specified in the ISO
   8601 standard.

For example:

.. parsed-literal::

   expires=2011-10-10T12:00:00+0530

A sample API request with expiration is given below:

.. parsed-literal::

   http://<IPAddress>:8080/client/api?command=listZones&signatureVersion=3&expires=2011-10-10T12:00:00+0530&apiKey=miVr6X7u6bN_sdahOBpjNejPgEsT35eXq-jB8CG20YI3yaxXcgpyuaIRmFI_EJTVwZ0nUkkJbPmY3y2bciKwFQ&signature=Lxx1DM40AjcXU%2FcaiK8RAP0O1hU%3D


Limiting the Rate of API Requests
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

You can limit the rate at which API requests can be placed for each
account. This is useful to avoid malicious attacks on the Management
Server, prevent performance degradation, and provide fairness to all
accounts.

If the number of API calls exceeds the threshold, an error message is
returned for any additional API calls. The caller will have to retry
these API calls at another time.


Configuring the API Request Rate
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

To control the API request rate, use the following global configuration
settings:

-  `api.throttling.enabled` - Enable/Disable API throttling. By default,
   this setting is false, so API throttling is not enabled.

-  `api.throttling.interval` (in seconds) - Time interval during which the
   number of API requests is to be counted. When the interval has
   passed, the API count is reset to 0.

-  `api.throttling.max` - Maximum number of APIs that can be placed within
   the `api.throttling.interval` period.

-  `api.throttling.cachesize` - Cache size for storing API counters. Use a
   value higher than the total number of accounts managed by the cloud.
   One cache entry is needed for each account, to store the running API
   total for that account.


Limitations on API Throttling
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The following limitations exist in the current implementation of this
feature.

.. note:: 
   Even with these limitations, CloudStack is still able to effectively use
   API throttling to avoid malicious attacks causing denial of service.

-  In a deployment with multiple Management Servers, the cache is not
   synchronized across them. In this case, CloudStack might not be able
   to ensure that only the exact desired number of API requests are
   allowed. In the worst case, the number of API calls that might be
   allowed is (number of Management Servers) \* (api.throttling.max).

-  The API commands resetApiLimit and getApiLimit are limited to the
   Management Server where the API is invoked.


API Responses
~~~~~~~~~~~~~

Response Formats: XML and JSON
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

CloudStack supports two formats as the response to an API call. The
default response is XML. If you would like the response to be in JSON,
add `&response=json` to the Command String.

The two response formats differ in how they handle blank fields. In
JSON, if there is no value for a response field, it will not appear in
the response. If all the fields were empty, there might be no response
at all. In XML, even if there is no value to be returned, an empty field
will be returned as a placeholder XML element.

Sample XML Response:

.. parsed-literal::

   <listipaddressesresponse> 
      <allocatedipaddress>
      <ipaddress>192.168.10.141</ipaddress> 
      <allocated>2009-09-18T13:16:10-0700</allocated> 
      <zoneid>4</zoneid> 
         <zonename>WC</zonename> 
         <issourcenat>true</issourcenat> 
      </allocatedipaddress>
   </listipaddressesresponse>

Sample JSON Response:

.. parsed-literal::

   { "listipaddressesresponse" : 
     { "allocatedipaddress" :
       [ 
         { 
           "ipaddress" : "192.168.10.141", 
           "allocated" : "2009-09-18T13:16:10-0700",
           "zoneid" : "4", 
           "zonename" : "WC", 
           "issourcenat" : "true" 
         } 
       ]
     } 
   } 


Maximum Result Pages Returned
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

For each cloud, there is a default upper limit on the number of results
that any API command will return in a single page. This is to help
prevent overloading the cloud servers and prevent DOS attacks. For
example, if the page size limit is 500 and a command returns 10,000
results, the command will return 20 pages.

The default page size limit can be different for each cloud. It is set
in the global configuration parameter `default.page.size`. If your cloud
has many users with lots of VMs, you might need to increase the value of
this parameter. At the same time, be careful not to set it so high that
your site can be taken down by an enormous return from an API call. For
more information about how to set global configuration parameters, see
"Describe Your Deployment" in the Installation Guide.

To decrease the page size limit for an individual API command, override
the global setting with the page and pagesize parameters, which are
available in any list\* command (listCapabilities, listDiskOfferings,
etc.).

-  Both parameters must be specified together.

-  The value of the pagesize parameter must be smaller than the value of
   default.page.size. That is, you can not increase the number of
   possible items in a result page, only decrease it.

For syntax information on the list\* commands, see the API Reference.


Error Handling
~~~~~~~~~~~~~~

If an error occurs while processing an API request, the appropriate
response in the format specified is returned. Each error response
consists of an error code and an error text describing what possibly can
go wrong. Below is a list of possible error codes:

You can now find the CloudStack-specific error code in the exception
response for each type of exception. The following list of error codes
is added to the new class named CSExceptionErrorCode.

4250 : "com.cloud.utils.exception.CloudRuntimeException"

4255 : "com.cloud.utils.exception.ExceptionUtil"

4260 : "com.cloud.utils.exception.ExecutionException"

4265 : "com.cloud.utils.exception.HypervisorVersionChangedException"

4270 : "com.cloud.utils.exception.RuntimeCloudException"

4275 : "com.cloud.exception.CloudException"

4280 : "com.cloud.exception.AccountLimitException"

4285 : "com.cloud.exception.AgentUnavailableException"

4290 : "com.cloud.exception.CloudAuthenticationException"

4295 : "com.cloud.exception.CloudExecutionException"

4300 : "com.cloud.exception.ConcurrentOperationException"

4305 : "com.cloud.exception.ConflictingNetworkSettingsException"

4310 : "com.cloud.exception.DiscoveredWithErrorException"

4315 : "com.cloud.exception.HAStateException"

4320 : "com.cloud.exception.InsufficientAddressCapacityException"

4325 : "com.cloud.exception.InsufficientCapacityException"

4330 : "com.cloud.exception.InsufficientNetworkCapacityException"

4335 : "com.cloud.exception.InsufficientServerCapacityException"

4340 : "com.cloud.exception.InsufficientStorageCapacityException"

4345 : "com.cloud.exception.InternalErrorException"

4350 : "com.cloud.exception.InvalidParameterValueException"

4355 : "com.cloud.exception.ManagementServerException"

4360 : "com.cloud.exception.NetworkRuleConflictException"

4365 : "com.cloud.exception.PermissionDeniedException"

4370 : "com.cloud.exception.ResourceAllocationException"

4375 : "com.cloud.exception.ResourceInUseException"

4380 : "com.cloud.exception.ResourceUnavailableException"

4385 : "com.cloud.exception.StorageUnavailableException"

4390 : "com.cloud.exception.UnsupportedServiceException"

4395 : "com.cloud.exception.VirtualMachineMigrationException"

4400 : "com.cloud.exception.AccountLimitException"

4405 : "com.cloud.exception.AgentUnavailableException"

4410 : "com.cloud.exception.CloudAuthenticationException"

4415 : "com.cloud.exception.CloudException"

4420 : "com.cloud.exception.CloudExecutionException"

4425 : "com.cloud.exception.ConcurrentOperationException"

4430 : "com.cloud.exception.ConflictingNetworkSettingsException"

4435 : "com.cloud.exception.ConnectionException"

4440 : "com.cloud.exception.DiscoveredWithErrorException"

4445 : "com.cloud.exception.DiscoveryException"

4450 : "com.cloud.exception.HAStateException"

4455 : "com.cloud.exception.InsufficientAddressCapacityException"

4460 : "com.cloud.exception.InsufficientCapacityException"

4465 : "com.cloud.exception.InsufficientNetworkCapacityException"

4470 : "com.cloud.exception.InsufficientServerCapacityException"

4475 : "com.cloud.exception.InsufficientStorageCapacityException"

4480 : "com.cloud.exception.InsufficientVirtualNetworkCapcityException"

4485 : "com.cloud.exception.InternalErrorException"

4490 : "com.cloud.exception.InvalidParameterValueException"

4495 : "com.cloud.exception.ManagementServerException"

4500 : "com.cloud.exception.NetworkRuleConflictException"

4505 : "com.cloud.exception.PermissionDeniedException"

4510 : "com.cloud.exception.ResourceAllocationException"

4515 : "com.cloud.exception.ResourceInUseException"

4520 : "com.cloud.exception.ResourceUnavailableException"

4525 : "com.cloud.exception.StorageUnavailableException"

4530 : "com.cloud.exception.UnsupportedServiceException"

4535 : "com.cloud.exception.VirtualMachineMigrationException"

9999 : "org.apache.cloudstack.api.ServerApiException"

An HTTP error code of 401 is always returned if API request was rejected
due to bad signatures, missing API Keys, or the user simply did not have
the permissions to execute the command.


Asynchronous Commands
~~~~~~~~~~~~~~~~~~~~~

Asynchronous commands were introduced in CloudStack 2.x. Commands are
designated as asynchronous when they can potentially take a long period
of time to complete such as creating a snapshot or disk volume. They
differ from synchronous commands by the following:

-  They are identified in the API Reference by an (A).

-  They will immediately return a job ID to refer to the job that will
   be responsible in processing the command.

-  If executed as a "create" resource command, it will return the
   resource ID as well as the job ID.

   You can periodically check the status of the job by making a simple
   API call to the command, `queryAsyncJobResult` and passing in the job
   ID.


Job Status
~~~~~~~~~~

The key to using an asynchronous command is the job ID that is returned
immediately once the command has been executed. With the job ID, you can
periodically check the job status by making calls to queryAsyncJobResult
command. The command will return three possible job status integer
values:

-  0 - Job is still in progress. Continue to periodically poll for any
   status changes.

-  1 - Job has successfully completed. The job will return any
   successful response values associated with command that was
   originally executed.

-  2 - Job has failed to complete. Please check the "jobresultcode" tag
   for failure reason code and "jobresult" for the failure reason.


Example
~~~~~~~

The following shows an example of using an asynchronous command. Assume
the API command:

.. parsed-literal::

   command=deployVirtualMachine&zoneId=1&serviceOfferingId=1&diskOfferingId=1&templateId=1

CloudStack will immediately return a job ID and any other additional
data.

.. parsed-literal::

   <deployvirtualmachineresponse> 
      <jobid>1</jobid>
      <id>100</id>
   </deployvirtualmachineresponse>

Using the job ID, you can periodically poll for the results by using the
queryAsyncJobResult command.

.. parsed-literal::

   command=queryAsyncJobResult&jobId=1

Three possible results could come from this query.

Job is still pending:

.. parsed-literal::

   <queryasyncjobresult> 
      <jobid>1</jobid>
      <jobstatus>0</jobstatus>
      <jobprocstatus>1</jobprocstatus>
   </queryasyncjobresult>

Job has succeeded:

.. parsed-literal::

   <queryasyncjobresultresponse cloud-stack-version="3.0.1.6">
      <jobid>1</jobid>
      <jobstatus>1</jobstatus>
      <jobprocstatus>0</jobprocstatus>
      <jobresultcode>0</jobresultcode>
      <jobresulttype>object</jobresulttype>
      <jobresult>
         <virtualmachine>
            <id>450</id>
            <name>i-2-450-VM</name>
            <displayname>i-2-450-VM</displayname>
            <account>admin</account>
            <domainid>1</domainid>
            <domain>ROOT</domain>
            <created>2011-03-10T18:20:25-0800</created>
            <state>Running</state>
            <haenable>false</haenable>
            <zoneid>1</zoneid>
            <zonename>San Jose 1</zonename>
            <hostid>2</hostid>
            <hostname>905-13.sjc.lab.vmops.com</hostname>
            <templateid>1</templateid>
            <templatename>CentOS 5.3 64bit LAMP</templatename>
            <templatedisplaytext>CentOS 5.3 64bit LAMP</templatedisplaytext>
            <passwordenabled>false</passwordenabled>
            <serviceofferingid>1</serviceofferingid>
            <serviceofferingname>Small Instance</serviceofferingname>
            <cpunumber>1</cpunumber>
            <cpuspeed>500</cpuspeed>
            <memory>512</memory>
            <guestosid>12</guestosid>
            <rootdeviceid>0</rootdeviceid>
            <rootdevicetype>NetworkFilesystem</rootdevicetype>
            <nic>
               <id>561</id>
               <networkid>205</networkid>
               <netmask>255.255.255.0</netmask>
               <gateway>10.1.1.1</gateway>
               <ipaddress>10.1.1.225</ipaddress>
               <isolationuri>vlan://295</isolationuri>
               <broadcasturi>vlan://295</broadcasturi>
               <traffictype>Guest</traffictype>
               <type>Virtual</type>
               <isdefault>true</isdefault>
            </nic>
            <hypervisor>XenServer</hypervisor>
         </virtualmachine>
      </jobresult>
   </queryasyncjobresultresponse>

Job has failed:

.. parsed-literal::

   <queryasyncjobresult>
      <jobid>1</jobid> 
      <jobstatus>2</jobstatus> 
      <jobprocstatus>0</jobprocstatus>
      <jobresultcode>551</jobresultcode>
      <jobresulttype>text</jobresulttype>
      <jobresult>Unable to deploy virtual machine id = 100 due to not enough capacity</jobresult> 
   </queryasyncjobresult>


Event Types
-----------

.. cssclass:: table-striped table-bordered table-hover

+-------------------+--------------------------------------------------------+
| Types             | Events                                                 |
+===================+========================================================+
| VM                | VM.CREATE                                              |
|                   |                                                        |
|                   | VM.DESTROY                                             |
|                   |                                                        |
|                   | VM.START                                               |
|                   |                                                        |
|                   | VM.STOP                                                |
|                   |                                                        |
|                   | VM.REBOOT                                              |
|                   |                                                        |
|                   | VM.UPDATE                                              |
|                   |                                                        |
|                   | VM.UPGRADE                                             |
|                   |                                                        |
|                   | VM.DYNAMIC.SCALE                                       |
|                   |                                                        |
|                   | VM.RESETPASSWORD                                       |
|                   |                                                        |
|                   | VM.RESETSSHKEY                                         |
|                   |                                                        |
|                   | VM.MIGRATE                                             |
|                   |                                                        |
|                   | VM.MOVE                                                |
|                   |                                                        |
|                   | VM.RESTORE                                             |
+-------------------+--------------------------------------------------------+
| Domain Router     | ROUTER.CREATE                                          |
|                   |                                                        |
|                   | ROUTER.DESTROY                                         |
|                   |                                                        |
|                   | ROUTER.START                                           |
|                   |                                                        |
|                   | ROUTER.STOP                                            |
|                   |                                                        |
|                   | ROUTER.REBOOT                                          |
|                   |                                                        |
|                   | ROUTER.HA                                              |
|                   |                                                        |
|                   | ROUTER.UPGRADE                                         |
+-------------------+--------------------------------------------------------+
| Console proxy     | PROXY.CREATE                                           |
|                   |                                                        |
|                   | PROXY.DESTROY                                          |
|                   |                                                        |
|                   | PROXY.START                                            |
|                   |                                                        |
|                   | PROXY.STOP                                             |
|                   |                                                        |
|                   | PROXY.REBOOT                                           |
|                   |                                                        |
|                   | PROXY.HA                                               |
+-------------------+--------------------------------------------------------+
| VNC Console       | VNC.CONNECT                                            |
| Events            |                                                        |
|                   | VNC.DISCONNECT                                         |
+-------------------+--------------------------------------------------------+
| Network Events    | NET.IPASSIGN                                           |
|                   |                                                        |
|                   | NET.IPRELEASE                                          |
|                   |                                                        |
|                   | PORTABLE.IPASSIGN                                      |
|                   |                                                        |
|                   | PORTABLE.IPRELEASE                                     |
|                   |                                                        |
|                   | NET.RULEADD                                            |
|                   |                                                        |
|                   | NET.RULEDELETE                                         |
|                   |                                                        |
|                   | NET.RULEMODIFY                                         |
|                   |                                                        |
|                   | NETWORK.CREATE                                         |
|                   |                                                        |
|                   | NETWORK.DELETE                                         |
|                   |                                                        |
|                   | NETWORK.UPDATE                                         |
|                   |                                                        |
|                   | FIREWALL.OPEN                                          |
|                   |                                                        |
|                   | FIREWALL.CLOSE                                         |
+-------------------+--------------------------------------------------------+
| NIC Events        | NIC.CREATE                                             |
|                   |                                                        |
|                   | NIC.DELETE                                             |
|                   |                                                        |
|                   | NIC.UPDATE                                             |
|                   |                                                        |
|                   | NIC.DETAIL.ADD                                         |
|                   |                                                        |
|                   | NIC.DETAIL.UPDATE                                      |
|                   |                                                        |
|                   | NIC.DETAIL.REMOVE                                      |
+-------------------+--------------------------------------------------------+
| Load Balancers    | LB.ASSIGN.TO.RULE                                      |
|                   |                                                        |
|                   | LB.REMOVE.FROM.RULE                                    |
|                   |                                                        |
|                   | LB.CREATE                                              |
|                   |                                                        |
|                   | LB.DELETE                                              |
|                   |                                                        |
|                   | LB.STICKINESSPOLICY.CREATE                             |
|                   |                                                        |
|                   | LB.STICKINESSPOLICY.DELETE                             |
|                   |                                                        |
|                   | LB.HEALTHCHECKPOLICY.CREATE                            |
|                   |                                                        |
|                   | LB.HEALTHCHECKPOLICY.DELETE                            |
|                   |                                                        |
|                   | LB.UPDATE                                              |
+-------------------+--------------------------------------------------------+
| Global Load       | GLOBAL.LB.ASSIGN                                       |
| Balancer rules    |                                                        |
|                   | GLOBAL.LB.REMOVE                                       |
|                   |                                                        |
|                   | GLOBAL.LB.CREATE                                       |
|                   |                                                        |
|                   | GLOBAL.LB.DELETE                                       |
|                   |                                                        |
|                   | GLOBAL.LB.UPDATE                                       |
+-------------------+--------------------------------------------------------+
| Account events    | ACCOUNT.ENABLE                                         |
|                   |                                                        |
|                   | ACCOUNT.DISABLE                                        |
|                   |                                                        |
|                   | ACCOUNT.CREATE                                         |
|                   |                                                        |
|                   | ACCOUNT.DELETE                                         |
|                   |                                                        |
|                   | ACCOUNT.UPDATE                                         |
|                   |                                                        |
|                   | ACCOUNT.MARK.DEFAULT.ZONE                              |
+-------------------+--------------------------------------------------------+
| UserVO Events     | USER.LOGIN                                             |
|                   |                                                        |
|                   | USER.LOGOUT                                            |
|                   |                                                        |
|                   | USER.CREATE                                            |
|                   |                                                        |
|                   | USER.DELETE                                            |
|                   |                                                        |
|                   | USER.DISABLE                                           |
|                   |                                                        |
|                   | USER.UPDATE                                            |
|                   |                                                        |
|                   | USER.ENABLE                                            |
|                   |                                                        |
|                   | USER.LOCK                                              |
+-------------------+--------------------------------------------------------+
| Registering SSH   | REGISTER.SSH.KEYPAIR                                   |
| keypair events    |                                                        |
+-------------------+--------------------------------------------------------+
| Register for user | REGISTER.USER.KEY                                      |
| API and secret    |                                                        |
| keys              |                                                        |
+-------------------+--------------------------------------------------------+
| Template Events   | TEMPLATE.CREATE                                        |
|                   |                                                        |
|                   | TEMPLATE.DELETE                                        |
|                   |                                                        |
|                   | TEMPLATE.UPDATE                                        |
|                   |                                                        |
|                   | TEMPLATE.DOWNLOAD.START                                |
|                   |                                                        |
|                   | TEMPLATE.DOWNLOAD.SUCCESS                              |
|                   |                                                        |
|                   | TEMPLATE.DOWNLOAD.FAILED                               |
|                   |                                                        |
|                   | TEMPLATE.COPY                                          |
|                   |                                                        |
|                   | TEMPLATE.EXTRACT                                       |
|                   |                                                        |
|                   | TEMPLATE.UPLOAD                                        |
|                   |                                                        |
|                   | TEMPLATE.CLEANUP                                       |
+-------------------+--------------------------------------------------------+
| Volume Events     | VOLUME.CREATE                                          |
|                   |                                                        |
|                   | VOLUME.DELETE                                          |
|                   |                                                        |
|                   | VOLUME.ATTACH                                          |
|                   |                                                        |
|                   | VOLUME.DETACH                                          |
|                   |                                                        |
|                   | VOLUME.EXTRACT                                         |
|                   |                                                        |
|                   | VOLUME.UPLOAD                                          |
|                   |                                                        |
|                   | VOLUME.MIGRATE                                         |
|                   |                                                        |
|                   | VOLUME.RESIZE                                          |
|                   |                                                        |
|                   | VOLUME.DETAIL.UPDATE                                   |
|                   |                                                        |
|                   | VOLUME.DETAIL.ADD                                      |
|                   |                                                        |
|                   | VOLUME.DETAIL.REMOVE                                   |
+-------------------+--------------------------------------------------------+
| Domains           | DOMAIN.CREATE                                          |
|                   |                                                        |
|                   | DOMAIN.DELETE                                          |
|                   |                                                        |
|                   | DOMAIN.UPDATE                                          |
+-------------------+--------------------------------------------------------+
| Snapshots         | SNAPSHOT.CREATE                                        |
|                   |                                                        |
|                   | SNAPSHOT.DELETE                                        |
|                   |                                                        |
|                   | SNAPSHOTPOLICY.CREATE                                  |
|                   |                                                        |
|                   | SNAPSHOTPOLICY.UPDATE                                  |
|                   |                                                        |
|                   | SNAPSHOTPOLICY.DELETE                                  |
+-------------------+--------------------------------------------------------+
| ISO               | ISO.CREATE                                             |
|                   |                                                        |
|                   | ISO.DELETE                                             |
|                   |                                                        |
|                   | ISO.COPY                                               |
|                   |                                                        |
|                   | ISO.ATTACH                                             |
|                   |                                                        |
|                   | ISO.DETACH                                             |
|                   |                                                        |
|                   | ISO.EXTRACT                                            |
|                   |                                                        |
|                   | ISO.UPLOAD                                             |
+-------------------+--------------------------------------------------------+
| SSVM              | SSVM.CREATE                                            |
|                   |                                                        |
|                   | SSVM.DESTROY                                           |
|                   |                                                        |
|                   | SSVM.START                                             |
|                   |                                                        |
|                   | SSVM.STOP                                              |
|                   |                                                        |
|                   | SSVM.REBOOT                                            |
|                   |                                                        |
|                   | SSVM.HA                                                |
+-------------------+--------------------------------------------------------+
| Service Offerings | SERVICE.OFFERING.CREATE                                |
|                   |                                                        |
|                   | SERVICE.OFFERING.EDIT                                  |
|                   |                                                        |
|                   | SERVICE.OFFERING.DELETE                                |
+-------------------+--------------------------------------------------------+
| Disk Offerings    | DISK.OFFERING.CREATE                                   |
|                   |                                                        |
|                   | DISK.OFFERING.EDIT                                     |
|                   |                                                        |
|                   | DISK.OFFERING.DELETE                                   |
+-------------------+--------------------------------------------------------+
| Network offerings | NETWORK.OFFERING.CREATE                                |
|                   |                                                        |
|                   | NETWORK.OFFERING.ASSIGN                                |
|                   |                                                        |
|                   | NETWORK.OFFERING.EDIT                                  |
|                   |                                                        |
|                   | NETWORK.OFFERING.REMOVE                                |
|                   |                                                        |
|                   | NETWORK.OFFERING.DELETE                                |
+-------------------+--------------------------------------------------------+
| Pods              | POD.CREATE                                             |
|                   |                                                        |
|                   | POD.EDIT                                               |
|                   |                                                        |
|                   | POD.DELETE                                             |
+-------------------+--------------------------------------------------------+
| Zones             | ZONE.CREATE                                            |
|                   |                                                        |
|                   | ZONE.EDIT                                              |
|                   |                                                        |
|                   | ZONE.DELETE                                            |
+-------------------+--------------------------------------------------------+
| VLANs/IP ranges   | VLAN.IP.RANGE.CREATE                                   |
|                   |                                                        |
|                   | VLAN.IP.RANGE.DELETE                                   |
|                   |                                                        |
|                   | VLAN.IP.RANGE.DEDICATE                                 |
|                   |                                                        |
|                   | VLAN.IP.RANGE.RELEASE                                  |
|                   |                                                        |
|                   | STORAGE.IP.RANGE.CREATE                                |
|                   |                                                        |
|                   | STORAGE.IP.RANGE.DELETE                                |
|                   |                                                        |
|                   | STORAGE.IP.RANGE.UPDATE                                |
+-------------------+--------------------------------------------------------+
| Configuration     | CONFIGURATION.VALUE.EDIT                               |
| Table             |                                                        |
+-------------------+--------------------------------------------------------+
| Security Groups   | SG.AUTH.INGRESS                                        |
|                   |                                                        |
|                   | SG.REVOKE.INGRESS                                      |
|                   |                                                        |
|                   | SG.AUTH.EGRESS                                         |
|                   |                                                        |
|                   | SG.REVOKE.EGRESS                                       |
|                   |                                                        |
|                   | SG.CREATE                                              |
|                   |                                                        |
|                   | SG.DELETE                                              |
|                   |                                                        |
|                   | SG.ASSIGN                                              |
|                   |                                                        |
|                   | SG.REMOVE                                              |
+-------------------+--------------------------------------------------------+
| Host              | HOST.RECONNECT                                         |
+-------------------+--------------------------------------------------------+
| Maintenance       | MAINT.CANCEL                                           |
|                   |                                                        |
|                   | MAINT.CANCEL.PS                                        |
|                   |                                                        |
|                   | MAINT.PREPARE                                          |
|                   |                                                        |
|                   | MAINT.PREPARE.PS                                       |
+-------------------+--------------------------------------------------------+
| VPN               | VPN.REMOTE.ACCESS.CREATE                               |
|                   |                                                        |
|                   | VPN.REMOTE.ACCESS.DESTROY                              |
|                   |                                                        |
|                   | VPN.USER.ADD                                           |
|                   |                                                        |
|                   | VPN.USER.REMOVE                                        |
|                   |                                                        |
|                   | VPN.S2S.VPN.GATEWAY.CREATE                             |
|                   |                                                        |
|                   | VPN.S2S.VPN.GATEWAY.DELETE                             |
|                   |                                                        |
|                   | VPN.S2S.CUSTOMER.GATEWAY.CREATE                        |
|                   |                                                        |
|                   | VPN.S2S.CUSTOMER.GATEWAY.DELETE                        |
|                   |                                                        |
|                   | VPN.S2S.CUSTOMER.GATEWAY.UPDATE                        |
|                   |                                                        |
|                   | VPN.S2S.CONNECTION.CREATE                              |
|                   |                                                        |
|                   | VPN.S2S.CONNECTION.DELETE                              |
|                   |                                                        |
|                   | VPN.S2S.CONNECTION.RESET                               |
+-------------------+--------------------------------------------------------+
| Network           | NETWORK.RESTART                                        |
+-------------------+--------------------------------------------------------+
| Custom            | UPLOAD.CUSTOM.CERTIFICATE                              |
| certificates      |                                                        |
+-------------------+--------------------------------------------------------+
| OneToOnenat       | STATICNAT.ENABLE                                       |
|                   |                                                        |
|                   | STATICNAT.DISABLE                                      |
|                   |                                                        |
|                   | ZONE.VLAN.ASSIGN                                       |
|                   |                                                        |
|                   | ZONE.VLAN.RELEASE                                      |
+-------------------+--------------------------------------------------------+
| Projects          | PROJECT.CREATE                                         |
|                   |                                                        |
|                   | PROJECT.UPDATE                                         |
|                   |                                                        |
|                   | PROJECT.DELETE                                         |
|                   |                                                        |
|                   | PROJECT.ACTIVATE                                       |
|                   |                                                        |
|                   | PROJECT.SUSPEND                                        |
|                   |                                                        |
|                   | PROJECT.ACCOUNT.ADD                                    |
|                   |                                                        |
|                   | PROJECT.INVITATION.UPDATE                              |
|                   |                                                        |
|                   | PROJECT.INVITATION.REMOVE                              |
|                   |                                                        |
|                   | PROJECT.ACCOUNT.REMOVE                                 |
+-------------------+--------------------------------------------------------+
| Network as a      | NETWORK.ELEMENT.CONFIGURE                              |
| Service           |                                                        |
+-------------------+--------------------------------------------------------+
| Physical Network  | PHYSICAL.NETWORK.CREATE                                |
| Events            |                                                        |
|                   | PHYSICAL.NETWORK.DELETE                                |
|                   |                                                        |
|                   | PHYSICAL.NETWORK.UPDATE                                |
+-------------------+--------------------------------------------------------+
| Physical Network  | SERVICE.PROVIDER.CREATE                                |
| Service Provider  |                                                        |
| Events            | SERVICE.PROVIDER.DELETE                                |
|                   |                                                        |
|                   | SERVICE.PROVIDER.UPDATE                                |
+-------------------+--------------------------------------------------------+
| Physical Network  | TRAFFIC.TYPE.CREATE                                    |
| Traffic Type      |                                                        |
| Events            | TRAFFIC.TYPE.DELETE                                    |
|                   |                                                        |
|                   | TRAFFIC.TYPE.UPDATE                                    |
+-------------------+--------------------------------------------------------+
| External network  | PHYSICAL.LOADBALANCER.ADD                              |
| device events     |                                                        |
|                   | PHYSICAL.LOADBALANCER.DELETE                           |
|                   |                                                        |
|                   | PHYSICAL.LOADBALANCER.CONFIGURE                        |
+-------------------+--------------------------------------------------------+
| External switch   | SWITCH.MGMT.ADD                                        |
| management device |                                                        |
| events            | SWITCH.MGMT.DELETE                                     |
|                   |                                                        |
| For example:      | SWITCH.MGMT.CONFIGURE                                  |
| Cisco Nexus 1000v |                                                        |
| Virtual           | SWITCH.MGMT.ENABLE                                     |
| Supervisor        |                                                        |
| Module.           | SWITCH.MGMT.DISABLE                                    |
|                   |                                                        |
|                   | PHYSICAL.FIREWALL.ADD                                  |
|                   |                                                        |
|                   | PHYSICAL.FIREWALL.DELETE                               |
|                   |                                                        |
|                   | PHYSICAL.FIREWALL.CONFIGURE                            |
+-------------------+--------------------------------------------------------+
| VPC               | VPC.CREATE                                             |
|                   |                                                        |
|                   | VPC.UPDATE                                             |
|                   |                                                        |
|                   | VPC.DELETE                                             |
|                   |                                                        |
|                   | VPC.RESTART                                            |
+-------------------+--------------------------------------------------------+
| Network ACL       | NETWORK.ACL.CREATE                                     |
|                   |                                                        |
|                   | NETWORK.ACL.DELETE                                     |
|                   |                                                        |
|                   | NETWORK.ACL.REPLACE                                    |
|                   |                                                        |
|                   | NETWORK.ACL.ITEM.CREATE                                |
|                   |                                                        |
|                   | NETWORK.ACL.ITEM.UPDATE                                |
|                   |                                                        |
|                   | NETWORK.ACL.ITEM.DELETE                                |
+-------------------+--------------------------------------------------------+
| VPC offerings     | VPC.OFFERING.CREATE                                    |
|                   |                                                        |
|                   | VPC.OFFERING.UPDATE                                    |
|                   |                                                        |
|                   | VPC.OFFERING.DELETE                                    |
+-------------------+--------------------------------------------------------+
| Private gateway   | PRIVATE.GATEWAY.CREATE                                 |
|                   |                                                        |
|                   | PRIVATE.GATEWAY.DELETE                                 |
+-------------------+--------------------------------------------------------+
| Static routes     | STATIC.ROUTE.CREATE                                    |
|                   |                                                        |
|                   | STATIC.ROUTE.DELETE                                    |
+-------------------+--------------------------------------------------------+
| Tag-related       | CREATE\_TAGS                                           |
| events            |                                                        |
|                   | DELETE\_TAGS                                           |
+-------------------+--------------------------------------------------------+
| Meta data-related | CREATE\_RESOURCE\_DETAILS                              |
| events            |                                                        |
|                   | DELETE\_RESOURCE\_DETAILS                              |
+-------------------+--------------------------------------------------------+
| VM snapshot       | VMSNAPSHOT.CREATE                                      |
| events            |                                                        |
|                   | VMSNAPSHOT.DELETE                                      |
|                   |                                                        |
|                   | VMSNAPSHOT.REVERTTO                                    |
+-------------------+--------------------------------------------------------+
| External network  | PHYSICAL.NVPCONTROLLER.ADD                             |
| device events     |                                                        |
|                   | PHYSICAL.NVPCONTROLLER.DELETE                          |
|                   |                                                        |
|                   | PHYSICAL.NVPCONTROLLER.CONFIGURE                       |
+-------------------+--------------------------------------------------------+
| AutoScale         | COUNTER.CREATE                                         |
|                   |                                                        |
|                   | COUNTER.DELETE                                         |
|                   |                                                        |
|                   | CONDITION.CREATE                                       |
|                   |                                                        |
|                   | CONDITION.DELETE                                       |
|                   |                                                        |
|                   | AUTOSCALEPOLICY.CREATE                                 |
|                   |                                                        |
|                   | AUTOSCALEPOLICY.UPDATE                                 |
|                   |                                                        |
|                   | AUTOSCALEPOLICY.DELETE                                 |
|                   |                                                        |
|                   | AUTOSCALEVMPROFILE.CREATE                              |
|                   |                                                        |
|                   | AUTOSCALEVMPROFILE.DELETE                              |
|                   |                                                        |
|                   | AUTOSCALEVMPROFILE.UPDATE                              |
|                   |                                                        |
|                   | AUTOSCALEVMGROUP.CREATE                                |
|                   |                                                        |
|                   | AUTOSCALEVMGROUP.DELETE                                |
|                   |                                                        |
|                   | AUTOSCALEVMGROUP.UPDATE                                |
|                   |                                                        |
|                   | AUTOSCALEVMGROUP.ENABLE                                |
|                   |                                                        |
|                   | AUTOSCALEVMGROUP.DISABLE                               |
|                   |                                                        |
|                   | PHYSICAL.DHCP.ADD                                      |
|                   |                                                        |
|                   | PHYSICAL.DHCP.DELETE                                   |
|                   |                                                        |
|                   | PHYSICAL.PXE.ADD                                       |
|                   |                                                        |
|                   | PHYSICAL.PXE.DELETE                                    |
|                   |                                                        |
|                   | AG.CREATE                                              |
|                   |                                                        |
|                   | AG.DELETE                                              |
|                   |                                                        |
|                   | AG.ASSIGN                                              |
|                   |                                                        |
|                   | AG.REMOVE                                              |
|                   |                                                        |
|                   | VM.AG.UPDATE                                           |
|                   |                                                        |
|                   | INTERNALLBVM.START                                     |
|                   |                                                        |
|                   | INTERNALLBVM.STOP                                      |
|                   |                                                        |
|                   | HOST.RESERVATION.RELEASE                               |
+-------------------+--------------------------------------------------------+
| Dedicated guest   | GUESTVLANRANGE.DEDICATE                                |
| vlan range        |                                                        |
|                   | GUESTVLANRANGE.RELEASE                                 |
|                   |                                                        |
|                   | PORTABLE.IP.RANGE.CREATE                               |
|                   |                                                        |
|                   | PORTABLE.IP.RANGE.DELETE                               |
|                   |                                                        |
|                   | PORTABLE.IP.TRANSFER                                   |
+-------------------+--------------------------------------------------------+
| Dedicated         | DEDICATE.RESOURCE                                      |
| Resources         |                                                        |
|                   | DEDICATE.RESOURCE.RELEASE                              |
|                   |                                                        |
|                   | VM.RESERVATION.CLEANUP                                 |
|                   |                                                        |
|                   | UCS.ASSOCIATEPROFILE                                   |
|                   |                                                        |
|                   | UCS.DISASSOCIATEPROFILE                                |
+-------------------+--------------------------------------------------------+

.. _time-zones:

Time Zones
----------

The following time zone identifiers are accepted by PRODUCT. There are
several places that have a time zone as a required or optional
parameter. These include scheduling recurring snapshots, creating a
user, and specifying the usage time zone in the Configuration table.

.. cssclass:: table-striped table-bordered table-hover

+-----------------------------------+-----------------------+------------------------+
| Etc/GMT+12                        | Etc/GMT+11            | Pacific/Samoa          |
+-----------------------------------+-----------------------+------------------------+
| Pacific/Honolulu                  | US/Alaska             | America/Los\_Angeles   |
+-----------------------------------+-----------------------+------------------------+
| Mexico/BajaNorte                  | US/Arizona            | US/Mountain            |
+-----------------------------------+-----------------------+------------------------+
| America/Chihuahua                 | America/Chicago       | America/Costa\_Rica    |
+-----------------------------------+-----------------------+------------------------+
| America/Mexico\_City              | Canada/Saskatchewan   | America/Bogota         |
+-----------------------------------+-----------------------+------------------------+
| America/New\_York                 | America/Caracas       | America/Asuncion       |
+-----------------------------------+-----------------------+------------------------+
| America/Cuiaba                    | America/Halifax       | America/La\_Paz        |
+-----------------------------------+-----------------------+------------------------+
| America/Santiago                  | America/St\_Johns     | America/Araguaina      |
+-----------------------------------+-----------------------+------------------------+
| America/Argentina/Buenos\_Aires   | America/Cayenne       | America/Godthab        |
+-----------------------------------+-----------------------+------------------------+
| America/Montevideo                | Etc/GMT+2             | Atlantic/Azores        |
+-----------------------------------+-----------------------+------------------------+
| Atlantic/Cape\_Verde              | Africa/Casablanca     | Etc/UTC                |
+-----------------------------------+-----------------------+------------------------+
| Atlantic/Reykjavik                | Europe/London         | CET                    |
+-----------------------------------+-----------------------+------------------------+
| Europe/Bucharest                  | Africa/Johannesburg   | Asia/Beirut            |
+-----------------------------------+-----------------------+------------------------+
| Africa/Cairo                      | Asia/Jerusalem        | Europe/Minsk           |
+-----------------------------------+-----------------------+------------------------+
| Europe/Moscow                     | Africa/Nairobi        | Asia/Karachi           |
+-----------------------------------+-----------------------+------------------------+
| Asia/Kolkata                      | Asia/Bangkok          | Asia/Shanghai          |
+-----------------------------------+-----------------------+------------------------+
| Asia/Kuala\_Lumpur                | Australia/Perth       | Asia/Taipei            |
+-----------------------------------+-----------------------+------------------------+
| Asia/Tokyo                        | Asia/Seoul            | Australia/Adelaide     |
+-----------------------------------+-----------------------+------------------------+
| Australia/Darwin                  | Australia/Brisbane    | Australia/Canberra     |
+-----------------------------------+-----------------------+------------------------+
| Pacific/Guam                      | Pacific/Auckland      |                        |
+-----------------------------------+-----------------------+------------------------+
