Merge remote-tracking branch 'origin/4.15'
diff --git a/source/_global.rst b/source/_global.rst
index 9dd1453..1b49bc7 100644
--- a/source/_global.rst
+++ b/source/_global.rst
@@ -19,7 +19,7 @@
 
 .. _CloudStack Installation Guide: http://docs.cloudstack.apache.org/projects/cloudstack-installation
 .. _CloudStack Administrator's Guide: http://docs.cloudstack.apache.org/projects/cloudstack-administration
-.. _CloudStack Apidocs: http://cloudstack.apache.org/docs/api/
+.. _CloudStack Apidocs: https://cloudstack.apache.org/api.html
 
 .. |documentation_home| replace:: http://docs.cloudstack.apache.org/
 
diff --git a/source/_static/images/vapps-deployment-opts.png b/source/_static/images/vapps-deployment-opts.png
new file mode 100644
index 0000000..8d67664
--- /dev/null
+++ b/source/_static/images/vapps-deployment-opts.png
Binary files differ
diff --git a/source/_static/images/vapps-eulas.png b/source/_static/images/vapps-eulas.png
new file mode 100644
index 0000000..f00a8e8
--- /dev/null
+++ b/source/_static/images/vapps-eulas.png
Binary files differ
diff --git a/source/_static/images/vapps-networks.png b/source/_static/images/vapps-networks.png
new file mode 100644
index 0000000..688c28d
--- /dev/null
+++ b/source/_static/images/vapps-networks.png
Binary files differ
diff --git a/source/_static/images/vapps-properties.png b/source/_static/images/vapps-properties.png
new file mode 100644
index 0000000..0784b68
--- /dev/null
+++ b/source/_static/images/vapps-properties.png
Binary files differ
diff --git a/source/adminguide/accounts.rst b/source/adminguide/accounts.rst
index 2a3f2c7..a83bcd1 100644
--- a/source/adminguide/accounts.rst
+++ b/source/adminguide/accounts.rst
@@ -101,19 +101,34 @@
 Using Dynamic Roles
 -------------------
 
-In addition to the four default roles, the dynamic role-based API checker feature
+In addition to the default roles, the dynamic role-based API checker feature
 allows CloudStack root admins to create new roles with customized permissions.
 The allow/deny rules can be configured dynamically during runtime without
 restarting the management server(s).
 
 For backward compatiblity, all roles resolve to one of the four role types:
 admin, resource admin, domain admin and user. A new role can be created using
-the roles tab in the UI and specifying a name, a role type and optionally a
-description.
+the roles tab in the UI and specifying a name, either a role type or ID of existing
+role, and optionally a description. When a new role is created using ID of existing
+role, all the rules of the existing role are copied to the new role and these rules
+can be modified as desired.
 
-Role specific rules can be configured through the rules tab on role specific
-details page. A rule is either an API name or a wildcard string that are one of
-allow or deny permission and optionally a description.
+Role specific rules can be either configured through the rules tab on role specific
+details page or imported from a CSV file while creating a new role with role type.
+A rule is either an API name or a wildcard string that are one of allow or deny
+permission and optionally a description. These rules can be exported to a
+CSV file, name defaulted to “<RoleName>_<RoleType>.csv”.
+
+CSV file format:
+
+.. parsed-literal::
+
+   rule,permission,description
+   <Rule1>,<Permission1>,<Description1>
+   <Rule2>,<Permission2>,<Description2> 
+   <Rule3>,<Permission3>,<Description3>
+   …
+   so on
 
 When a user makes an API request, the backend checks the requested API against
 configured rules (in the order the rules were configured) for the caller
diff --git a/source/adminguide/api.rst b/source/adminguide/api.rst
index 19ad8da..75df8a1 100644
--- a/source/adminguide/api.rst
+++ b/source/adminguide/api.rst
@@ -26,7 +26,7 @@
 The API has a REST-like query basis and returns results in XML or JSON.
 
 See `the Developer’s Guide <https://cwiki.apache.org/confluence/display/CLOUDSTACK/Development+101>`_
-and `the API Reference <http://cloudstack.apache.org/docs/api/>`_.
+and `the API Reference <https://cloudstack.apache.org/api.html>`_.
 
 
 Provisioning and Authentication API
diff --git a/source/adminguide/locale/pot/api.pot b/source/adminguide/locale/pot/api.pot
index 70a1475..f14ae26 100644
--- a/source/adminguide/locale/pot/api.pot
+++ b/source/adminguide/locale/pot/api.pot
@@ -38,7 +38,7 @@
 
 #: ../../api.rst:31
 # 1f57015e966c480795b141ba3f87b86a
-msgid "See `the Developer’s Guide <https://cwiki.apache.org/confluence/display/CLOUDSTACK/Development+101>`_ and `the API Reference <http://cloudstack.apache.org/docs/api/>`_."
+msgid "See `the Developer’s Guide <https://cwiki.apache.org/confluence/display/CLOUDSTACK/Development+101>`_ and `the API Reference <https://cloudstack.apache.org/api.html>`_."
 msgstr ""
 
 #: ../../api.rst:36
diff --git a/source/adminguide/locale/pot/troubleshooting.pot b/source/adminguide/locale/pot/troubleshooting.pot
index c9164fa..979a74e 100644
--- a/source/adminguide/locale/pot/troubleshooting.pot
+++ b/source/adminguide/locale/pot/troubleshooting.pot
@@ -173,7 +173,7 @@
 
 #: ../../troubleshooting.rst:132
 # 25bdb5c7a6a7454ea25d62c3f0a02c57
-msgid "For more information about the API syntax, see the API Reference at `http://cloudstack.apache.org/docs/api/ <http://cloudstack.apache.org/docs/api/>`_."
+msgid "For more information about the API syntax, see the API Reference at `https://cloudstack.apache.org/api.html <https://cloudstack.apache.org/api.html>`_."
 msgstr ""
 
 #: ../../troubleshooting.rst:137
diff --git a/source/adminguide/locale/zh_CN/LC_MESSAGES/api.mo b/source/adminguide/locale/zh_CN/LC_MESSAGES/api.mo
index c4abbf3..4028a5a 100644
--- a/source/adminguide/locale/zh_CN/LC_MESSAGES/api.mo
+++ b/source/adminguide/locale/zh_CN/LC_MESSAGES/api.mo
Binary files differ
diff --git a/source/adminguide/locale/zh_CN/LC_MESSAGES/api.po b/source/adminguide/locale/zh_CN/LC_MESSAGES/api.po
index 8140b94..2f5ca2b 100644
--- a/source/adminguide/locale/zh_CN/LC_MESSAGES/api.po
+++ b/source/adminguide/locale/zh_CN/LC_MESSAGES/api.po
@@ -50,8 +50,8 @@
 msgid ""
 "See `the Developer’s Guide "
 "<https://cwiki.apache.org/confluence/display/CLOUDSTACK/Development+101>`_ "
-"and `the API Reference <http://cloudstack.apache.org/docs/api/>`_."
-msgstr "参阅  `开发指南 <https://cwiki.apache.org/confluence/display/CLOUDSTACK/Development+101>`_ 和 `参考API <http://cloudstack.apache.org/docs/api/>`_."
+"and `the API Reference <https://cloudstack.apache.org/api.html>`_."
+msgstr "参阅  `开发指南 <https://cwiki.apache.org/confluence/display/CLOUDSTACK/Development+101>`_ 和 `参考API <https://cloudstack.apache.org/api.html>`_."
 
 # de3d35bb699f45f495251ceb69a2c238
 #: ../../api.rst:36
diff --git a/source/adminguide/locale/zh_CN/LC_MESSAGES/troubleshooting.mo b/source/adminguide/locale/zh_CN/LC_MESSAGES/troubleshooting.mo
index e0f7201..ae671c5 100644
--- a/source/adminguide/locale/zh_CN/LC_MESSAGES/troubleshooting.mo
+++ b/source/adminguide/locale/zh_CN/LC_MESSAGES/troubleshooting.mo
Binary files differ
diff --git a/source/adminguide/locale/zh_CN/LC_MESSAGES/troubleshooting.po b/source/adminguide/locale/zh_CN/LC_MESSAGES/troubleshooting.po
index cd464f7..b042c29 100644
--- a/source/adminguide/locale/zh_CN/LC_MESSAGES/troubleshooting.po
+++ b/source/adminguide/locale/zh_CN/LC_MESSAGES/troubleshooting.po
@@ -205,9 +205,9 @@
 #: ../../troubleshooting.rst:132
 msgid ""
 "For more information about the API syntax, see the API Reference at "
-"`http://cloudstack.apache.org/docs/api/ "
-"<http://cloudstack.apache.org/docs/api/>`_."
-msgstr "关于更多的API语法信息,参见API参考`http://cloudstack.apache.org/docs/api/ <http://cloudstack.apache.org/docs/api/>`_。"
+"`https://cloudstack.apache.org/api.html "
+"<https://cloudstack.apache.org/api.html>`_."
+msgstr "关于更多的API语法信息,参见API参考`https://cloudstack.apache.org/api.html <https://cloudstack.apache.org/api.html>`_。"
 
 # d1a32a2023024c72907911b8c7757cae
 #: ../../troubleshooting.rst:137
diff --git a/source/adminguide/templates.rst b/source/adminguide/templates.rst
index 1936bfe..615f520 100644
--- a/source/adminguide/templates.rst
+++ b/source/adminguide/templates.rst
@@ -159,7 +159,7 @@
    -  **Name and Display Text**. These will be shown in the UI, so
       choose something descriptive.
 
-   -  **OS Type**. This helps CloudStack and the hypervisor perform
+   -  **OS Type**. (Except for VMware). This helps CloudStack and the hypervisor perform
       certain operations and make assumptions that improve the
       performance of the guest. Select one of the following.
 
@@ -177,6 +177,12 @@
             5.4 to support a CentOS 6.2 image will in general not work. 
             In those cases you should choose Other.
 
+         .. note::
+            Since version 4.15, VMware templates do not allow users or administrators
+            selecting an OS Type when registering a template. The OS Type is
+            obtained from the template after it is registered.
+
+
    -  **Public**. Choose Yes to make this template accessible to all
       users of this CloudStack installation. The template will appear in
       the Community Templates list. See `“Private and
@@ -192,6 +198,12 @@
 template creation process has been completed. The template is then
 available when creating a new VM.
 
+.. note::
+   Since version 4.15, CloudStack obtains information from the VMware templates
+   automatically at registration time. If a template contains different deployment
+   options (or configurations) as in the case of virtual appliances, then CloudStack
+   display the information required by the template, allowing users or administrators
+   to configure their instances.  
 
 Creating a Template from a Snapshot
 -----------------------------------
@@ -237,7 +249,7 @@
       available, or All Zones to make it available throughout
       CloudStack.
 
-   -  **OS Type**: This helps CloudStack and the hypervisor perform
+   -  **OS Type**: (Except for VMware). This helps CloudStack and the hypervisor perform
       certain operations and make assumptions that improve the
       performance of the guest. Select one of the following:
 
@@ -251,6 +263,11 @@
             support a CentOS 6.2 image will in general not work. In 
             those cases you should choose Other.
 
+         .. note::
+            Since version 4.15, VMware templates do not allow users or administrators
+            selecting an OS Type when registering a template. The OS Type is
+            obtained from the template after it is registered.
+
    -  **Hypervisor**: The supported hypervisors are listed. Select the
       desired one.
 
@@ -278,7 +295,10 @@
 Note that uploading multi-disk templates is also supported.
 
 .. note:: 
-            Templates corresponding to appliances with 'static properties' in the OVF (such as virtual appliances) are also supported. CloudStack stores any template properties in the OVF in the database after successful template installation. Once the template is ready, these properties are viewed by selecting the template and clicking on the 'OVF Properties' tab.
+   VMware only: If the selected template contains OVF properties, different deployment options or configurations,
+   multiple NICs or end-user license agreements, then the wizard will display these properties.
+
+   See `“Support for Virtual Appliances” <virtual_machines.html#support-for-virtual-appliances>`_.
 
 
 
@@ -294,6 +314,11 @@
 For this feature to work, your SSVMs must be supporting HTTPS (for more info please visit `“Using a SSL Certificate for the Console Proxy” 
 <systemvm.html#using-a-ssl-certificate-for-the-console-proxy>`_).
 
+.. note::
+   Since version 4.15, VMware templates do not allow users or administrators
+   selecting an OS Type when uploading a template. The OS Type is
+   obtained from the template after it is uploaded.
+
 Example GUI dialog of uploading Template/ISO from local (browser) is given below:
 
 |template-upload-from-local.PNG|
diff --git a/source/adminguide/troubleshooting.rst b/source/adminguide/troubleshooting.rst
index 667c727..e519257 100644
--- a/source/adminguide/troubleshooting.rst
+++ b/source/adminguide/troubleshooting.rst
@@ -130,7 +130,7 @@
 setup, see Creating a New Network Offering.
 
 For more information about the API syntax, see the API Reference at
-`http://cloudstack.apache.org/docs/api/ <http://cloudstack.apache.org/docs/api/>`_.
+`https://cloudstack.apache.org/api.html <https://cloudstack.apache.org/api.html>`_.
 
 
 Maintenance mode not working on vCenter
diff --git a/source/adminguide/virtual_machines.rst b/source/adminguide/virtual_machines.rst
index fd1bd1a..5880d16 100644
--- a/source/adminguide/virtual_machines.rst
+++ b/source/adminguide/virtual_machines.rst
@@ -141,9 +141,10 @@
    service offering.
 
    .. note:: 
-      VMware only: If the selected template OVF contains static properties, the wizard will display these properties. Static 
-      properties do not have the concept of required and optional fields . Therefore CloudStack is not able
-      to enforce the population of 'important fields'.
+      VMware only: If the selected template contains OVF properties, different deployment options or configurations,
+      multiple NICs or end-user license agreements, then the wizard will display these properties.
+
+      See `“Support for Virtual Appliances” <virtual_machines.html#support-for-virtual-appliances>`_.
 
 #. Click Submit and your VM will be created and started.
 
@@ -752,6 +753,9 @@
 The Settings tab is always present/visible, but settings can be changed only when the VM is in a Stopped state. 
 Some VM details/settings can be hidden via "user.vm.blacklisted.details" global setting (you can find below the list of those hidden by default).
 
+.. note::
+   Since version 4.15, VMware VM settings for the ROOT disk controller, NIC adapter type and data disk controller are populated automatically with the values inherited from the template.
+
 When adding a new setting or modifying the existing ones, setting names are shown/offered in a drop-down list, as well as their possible values (with the exception of boolean or numerical values).
 
 Read-only details/settings that are hidden by default:
@@ -913,6 +917,11 @@
    VM snapshots are deleted automatically when a VM is destroyed. You don't 
    have to manually delete the snapshots in this case.
 
+Support for Virtual Appliances
+==============================
+
+.. include:: virtual_machines/virtual_appliances.rst
+
 Unmanaging Virtual Machines
 ===========================
 
diff --git a/source/adminguide/virtual_machines/user-data.rst b/source/adminguide/virtual_machines/user-data.rst
index 24285e9..4f5208e 100644
--- a/source/adminguide/virtual_machines/user-data.rst
+++ b/source/adminguide/virtual_machines/user-data.rst
@@ -20,9 +20,9 @@
 CloudStack provides APIs to attach up to 32KB of user-data to a deployed VM.
 
 There are two CloudStack APIs that can be used to store user-data:
-`deployVirtualMachine <http://cloudstack.apache.org/docs/api/apidocs-4.14/user/deployVirtualMachine.html>`_
+`deployVirtualMachine <https://cloudstack.apache.org/docs/api/apidocs-4.14/user/deployVirtualMachine.html>`_
 and
-`updateVirtualMachine <http://cloudstack.apache.org/docs/api/apidocs-4.14/user/updateVirtualMachine.html>`_
+`updateVirtualMachine <https://cloudstack.apache.org/docs/api/apidocs-4.14/user/updateVirtualMachine.html>`_
 They both support the parameter ``userdata=``. The value for this parameter
 must be a `base64 <https://www.base64encode.org/>`_-encoded multi-part MIME
 message. See further below for an example of what this should look like.
@@ -89,7 +89,7 @@
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
 User-data is not included with the normal VM state for historic reasons.
-To read out the base64-encoded user-data via the API, use the `getVirtualMachineUserData <http://cloudstack.apache.org/docs/api/apidocs-4.14/user/getVirtualMachineUserData.html>`_
+To read out the base64-encoded user-data via the API, use the `getVirtualMachineUserData <https://cloudstack.apache.org/docs/api/apidocs-4.14/user/getVirtualMachineUserData.html>`_
 API call:
 
 .. code:: bash
diff --git a/source/adminguide/virtual_machines/virtual_appliances.rst b/source/adminguide/virtual_machines/virtual_appliances.rst
new file mode 100644
index 0000000..e14d759
--- /dev/null
+++ b/source/adminguide/virtual_machines/virtual_appliances.rst
@@ -0,0 +1,65 @@
+About Virtual Appliances
+------------------------
+
+CloudStack allows users to deploy virtual appliances on VMware such as its been made directly though vCenter.
+Vendors of virtual appliances for VMware often produce ‘templates’ of their appliances in an OVA format.
+An OVA file contain disc images, as well as the configuration data of the virtual appliance and also at times a EULA which must be acknowledged.
+
+Virtual Appliances are supported only on VMware.
+
+.. note::
+    Since version 4.15, all the new templates registered are treated as virtual appliance templates.
+
+    To keep the existing functionality, all the templates registered before version 4.15 are not affected by this changes.
+
+Deployment options (configurations)
+-----------------------------------
+
+VMware templates can provide different deployment options in their OVF descriptor file. CloudStack obtains
+the different deployment options when the template is registered and it displays them to the users
+in the virtual machine deployment wizard, under the 'Compute Offering' section.
+
+After the user selects a deployment option, CloudStack lists the compute offerings which match or exceed the
+deployment options hardware requirements for CPU and memory.
+
+.. note::
+    All the custom unconstrained compute offerings are displayed, but only those constrained custom offerings
+    in which the maximum or minimum requirements for CPU and memory are supported by the selected deployment option.
+
+.. |vapps-deployment-opts.png| image:: /_static/images/vapps-deployment-opts.png
+.. |vapps-eulas.png| image:: /_static/images/vapps-eulas.png
+.. |vapps-networks.png| image:: /_static/images/vapps-networks.png
+.. |vapps-properties.png| image:: /_static/images/vapps-properties.png
+
+The 'Compute Offering' section will be similar to this:
+      |vapps-deployment-opts.png|
+
+
+Network interfaces
+------------------
+
+In case the template requires the virtual appliance to connect different network interfaces, these are displayed in the 'Networks' section, similar to this:
+
+|vapps-networks.png|
+
+
+Properties
+----------
+
+If the template contains properties that require the user input, those are being displayed on the 'Properties' section, similar to this:
+
+|vapps-properties.png|
+
+
+End-user license agreements
+---------------------------
+
+If the template contains one or more end-user license agreements, the user must accept them prior to deploy their virtual appliance.
+If the license agreements are not accepted, then it is not possible to deploy a virtual appliance.
+
+|vapps-eulas.png|
+
+Advanced deployment settings
+----------------------------
+
+It is not possible to choose the boot type (BIOS, UEFI) and boot mode for virtual appliances. The boot mode and type used by the virtual appliances is defined in the template. 
\ No newline at end of file
diff --git a/source/conceptsandterminology/locale/pot/dev.pot b/source/conceptsandterminology/locale/pot/dev.pot
index e97c9d1..da7742a 100644
--- a/source/conceptsandterminology/locale/pot/dev.pot
+++ b/source/conceptsandterminology/locale/pot/dev.pot
@@ -103,7 +103,7 @@
 
 #: ../../dev.rst:64
 # bcdf9d282f994c9e9cfc62a64151533a
-msgid "`http://cloudstack.apache.org/docs/api/ <http://cloudstack.apache.org/docs/api/>`__"
+msgid "`https://cloudstack.apache.org/api.html <https://cloudstack.apache.org/api.html>`__"
 msgstr ""
 
 #: ../../dev.rst:68
diff --git a/source/conceptsandterminology/locale/pot/developer_guide.pot b/source/conceptsandterminology/locale/pot/developer_guide.pot
index 2e6995b..0c8252b 100644
--- a/source/conceptsandterminology/locale/pot/developer_guide.pot
+++ b/source/conceptsandterminology/locale/pot/developer_guide.pot
@@ -443,12 +443,12 @@
 
 #: ../../developer_guide.rst:460
 # 7c104d4cd0fe475e863b91f53449a5c5
-msgid "The CloudStack API is a query based API using http that return results in XML or JSON. It is used to implement the default web UI. This API is not a standard like `OGF OCCI <http://www.ogf.org/gf/group_info/view.php?group=occi-wg>`__ or `DMTF CIMI <http://dmtf.org/standards/cloud>`__ but is easy to learn. Mapping exists between the AWS API and the CloudStack API as will be seen in the next section. Recently a Google Compute Engine interface was also developed that maps the GCE REST API to the CloudStack API described here. The API `docs <http://cloudstack.apache.org/docs/api/>`__ are a good start to learn the extent of the API. Multiple clients exist on `github <https://github.com/search?q=cloudstack+client&ref=cmdform>`__ to use this API, you should be able to find one in your favorite language. The reference documentation for the API and changes that might occur from version to version is availble `on-line <http://cloudstack.apache.org/docs/en-US/Apache_CloudStack/4.1.1/html/Developers_Guide/index.html>`__. This short section is aimed at providing a quick summary to give you a base understanding of how to use this API. As a quick start, a good way to explore the API is to navigate the dashboard with a firebug console (or similar developer console) to study the queries."
+msgid "The CloudStack API is a query based API using http that return results in XML or JSON. It is used to implement the default web UI. This API is not a standard like `OGF OCCI <http://www.ogf.org/gf/group_info/view.php?group=occi-wg>`__ or `DMTF CIMI <http://dmtf.org/standards/cloud>`__ but is easy to learn. Mapping exists between the AWS API and the CloudStack API as will be seen in the next section. Recently a Google Compute Engine interface was also developed that maps the GCE REST API to the CloudStack API described here. The API `docs <https://cloudstack.apache.org/api.html>`__ are a good start to learn the extent of the API. Multiple clients exist on `github <https://github.com/search?q=cloudstack+client&ref=cmdform>`__ to use this API, you should be able to find one in your favorite language. The reference documentation for the API and changes that might occur from version to version is availble `on-line <http://cloudstack.apache.org/docs/en-US/Apache_CloudStack/4.1.1/html/Developers_Guide/index.html>`__. This short section is aimed at providing a quick summary to give you a base understanding of how to use this API. As a quick start, a good way to explore the API is to navigate the dashboard with a firebug console (or similar developer console) to study the queries."
 msgstr ""
 
 #: ../../developer_guide.rst:481
 # 0bcb8dd851254f9b9b0240917b405d84
-msgid "In a succint statement, the CloudStack query API can be used via http GET requests made against your cloud endpoint (e.g http://localhost:8080/client/api). The API name is passed using the ``command`` key and the various parameters for this API call are passed as key value pairs. The request is signed using the access key and secret key of the user making the call. Some calls are synchronous while some are asynchronous, this is documented in the API `docs <http://cloudstack.apache.org/docs/api/>`__. Asynchronous calls return a ``jobid``, the status and result of a job can be queried with the ``queryAsyncJobResult`` call. Let's get started and give an example of calling the ``listUsers`` API in Python."
+msgid "In a succint statement, the CloudStack query API can be used via http GET requests made against your cloud endpoint (e.g http://localhost:8080/client/api). The API name is passed using the ``command`` key and the various parameters for this API call are passed as key value pairs. The request is signed using the access key and secret key of the user making the call. Some calls are synchronous while some are asynchronous, this is documented in the API `docs <https://cloudstack.apache.org/api.html>`__. Asynchronous calls return a ``jobid``, the status and result of a job can be queried with the ``queryAsyncJobResult`` call. Let's get started and give an example of calling the ``listUsers`` API in Python."
 msgstr ""
 
 #: ../../developer_guide.rst:493
diff --git a/source/conceptsandterminology/network_setup.rst b/source/conceptsandterminology/network_setup.rst
index 118ce35..e78a450 100644
--- a/source/conceptsandterminology/network_setup.rst
+++ b/source/conceptsandterminology/network_setup.rst
@@ -1003,7 +1003,7 @@
    Traffic Sentinel as protocol + host + port (optional); for example,
    http://10.147.28.100:8080. For the addTrafficMonitor command syntax,
    see the API Reference at `API Documentation 
-   <http://cloudstack.apache.org/docs/api/index.html>`_.
+   <https://cloudstack.apache.org/api.html>`_.
 
    For information about how to call the CloudStack API, see the
    Developer’s Guide at the CloudStack API Developer's Guide :ref:`the-api`
diff --git a/source/developersguide/dev.rst b/source/developersguide/dev.rst
index 9aa69ad..8733e08 100644
--- a/source/developersguide/dev.rst
+++ b/source/developersguide/dev.rst
@@ -64,8 +64,8 @@
 
 You can find all the API reference documentation at the below site:
 
-`http://cloudstack.apache.org/docs/api/ 
-<http://cloudstack.apache.org/docs/api/>`__
+`https://cloudstack.apache.org/api.html 
+<https://cloudstack.apache.org/api.html>`__
 
 
 Making API Requests
diff --git a/source/developersguide/developer_guide.rst b/source/developersguide/developer_guide.rst
index 01aa636..4add3fb 100644
--- a/source/developersguide/developer_guide.rst
+++ b/source/developersguide/developer_guide.rst
@@ -346,7 +346,7 @@
 seen in the next section. Recently a Google Compute Engine interface was
 also developed that maps the GCE REST API to the CloudStack API
 described here. The API
-`docs <http://cloudstack.apache.org/docs/api/>`__ are a good start to
+`docs <https://cloudstack.apache.org/api.html>`__ are a good start to
 learn the extent of the API. Multiple clients exist on
 `github <https://github.com/search?q=cloudstack+client&ref=cmdform>`__
 to use this API, you should be able to find one in your favorite
@@ -365,7 +365,7 @@
 as key value pairs. The request is signed using the access key and
 secret key of the user making the call. Some calls are synchronous while
 some are asynchronous, this is documented in the API
-`docs <http://cloudstack.apache.org/docs/api/>`__. Asynchronous calls
+`docs <https://cloudstack.apache.org/api.html>`__. Asynchronous calls
 return a ``jobid``, the status and result of a job can be queried with
 the ``queryAsyncJobResult`` call. Let's get started and give an example
 of calling the ``listUsers`` API in Python.
diff --git a/source/installguide/locale/pot/network_setup.pot b/source/installguide/locale/pot/network_setup.pot
index de25f63..cd759b0 100644
--- a/source/installguide/locale/pot/network_setup.pot
+++ b/source/installguide/locale/pot/network_setup.pot
@@ -1591,7 +1591,7 @@
 
 #: ../../network_setup.rst:1001
 # 99d0d664da654239ad897c4d6eb6b08e
-msgid "On CloudStack, add the Traffic Sentinel host by calling the CloudStack API command addTrafficMonitor. Pass in the URL of the Traffic Sentinel as protocol + host + port (optional); for example, http://10.147.28.100:8080. For the addTrafficMonitor command syntax, see the API Reference at `API Documentation <http://cloudstack.apache.org/docs/api/index.html>`_."
+msgid "On CloudStack, add the Traffic Sentinel host by calling the CloudStack API command addTrafficMonitor. Pass in the URL of the Traffic Sentinel as protocol + host + port (optional); for example, http://10.147.28.100:8080. For the addTrafficMonitor command syntax, see the API Reference at `API Documentation <https://cloudstack.apache.org/api.htmlindex.html>`_."
 msgstr ""
 
 #: ../../network_setup.rst:1008
diff --git a/source/installguide/locale/zh_CN/LC_MESSAGES/network_setup.mo b/source/installguide/locale/zh_CN/LC_MESSAGES/network_setup.mo
index 62eeffe..803c4b7 100644
--- a/source/installguide/locale/zh_CN/LC_MESSAGES/network_setup.mo
+++ b/source/installguide/locale/zh_CN/LC_MESSAGES/network_setup.mo
Binary files differ
diff --git a/source/installguide/locale/zh_CN/LC_MESSAGES/network_setup.po b/source/installguide/locale/zh_CN/LC_MESSAGES/network_setup.po
index e2de713..8957f5d 100644
--- a/source/installguide/locale/zh_CN/LC_MESSAGES/network_setup.po
+++ b/source/installguide/locale/zh_CN/LC_MESSAGES/network_setup.po
@@ -1915,8 +1915,8 @@
 "command addTrafficMonitor. Pass in the URL of the Traffic Sentinel as "
 "protocol + host + port (optional); for example, http://10.147.28.100:8080. "
 "For the addTrafficMonitor command syntax, see the API Reference at `API "
-"Documentation <http://cloudstack.apache.org/docs/api/index.html>`_."
-msgstr "在CloudStack中,使用API中的addTrafficMonitor命令添加流量哨兵主机。传入的流量哨兵URL类似于protocol + host + port (可选);例如, http://10.147.28.100:8080。 关于addTrafficMonitor命令用法,请参阅API文档 `API Documentation <http://cloudstack.apache.org/docs/api/index.html>`_."
+"Documentation <https://cloudstack.apache.org/api.html>`_."
+msgstr "在CloudStack中,使用API中的addTrafficMonitor命令添加流量哨兵主机。传入的流量哨兵URL类似于protocol + host + port (可选);例如, http://10.147.28.100:8080。 关于addTrafficMonitor命令用法,请参阅API文档 `API Documentation <https://cloudstack.apache.org/api.html>`_."
 
 # 382c1696b18d4f25a2e2b5b7cb142225
 #: ../../network_setup.rst:1008