17.3. Methods
17.3.1. Creating a New Template
Creation of a new template requires the
name
and vm
elements. Identify the vm
with the id
attribute or name
element.
Example 17.2. Creating a template from a virtual machine
POST /api/templates HTTP/1.1 Accept: application/xml Content-type: application/xml <template> <name>template1</name> <vm id="00000000-0000-0000-0000-000000000000"/> </template>
17.3.2. Creating a New Template Sub Version
Creation of a new template sub version requires the
name
and vm
elements for the new template, and the base_template
and version_name
elements for the new template version. The base_template
and version_name
elements must be specified within a version
section enclosed in the template
section. Identify the vm
with the id
attribute or name
element.
Example 17.3. Creating a template sub version from a virtual machine
POST /api/templates HTTP/1.1 Accept: application/xml Content-type: application/xml <template> <name>template1_001</name> <vm id="00000000-0000-0000-0000-000000000000"/> <version> <base_template id="00000000-0000-0000-0000-000000000000"/> <version_name>"template1_001"</version_name> </version> </template>
17.3.3. Updating a Template
The
name
, description
, type
, memory
, cpu topology
, os
, high_availability
, display
, stateless
, usb
and timezone
elements can be updated after a template has been created.
Example 17.4. Updating a virtual machine template to contain 1 GB of memory
PUT /api/templates/00000000-0000-0000-0000-000000000000 HTTP/1.1 Accept: application/xml Content-type: application/xml <template> <memory>1073741824</memory> </template>
17.3.4. Updating a Template Sub Version
Only the
version_name
element can be updated after a template sub version has been created.
Example 17.5. Updating a virtual machine template sub version name
PUT /api/templates/00000000-0000-0000-0000-000000000000 HTTP/1.1 Accept: application/xml Content-type: application/xml <template> <version> <version_name>template1_002</version_name> </version> </template>
17.3.5. Removing a Template
Removal of a virtual machine template requires a
DELETE
request.
Example 17.6. Removing a virtual machine template
DELETE /api/templates/00000000-0000-0000-0000-000000000000 HTTP/1.1 HTTP/1.1 204 No Content