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

Copy to Clipboard Toggle word wrap
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

Copy to Clipboard Toggle word wrap
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

Copy to Clipboard Toggle word wrap
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

Copy to Clipboard Toggle word wrap
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

Copy to Clipboard Toggle word wrap
DELETE /api/templates/00000000-0000-0000-0000-000000000000 HTTP/1.1

HTTP/1.1 204 No Content
Back to top
Red Hat logoGithubredditYoutubeTwitter

Learn

Try, buy, & sell

Communities

About Red Hat Documentation

We help Red Hat users innovate and achieve their goals with our products and services with content they can trust. Explore our recent updates.

Making open source more inclusive

Red Hat is committed to replacing problematic language in our code, documentation, and web properties. For more details, see the Red Hat Blog.

About Red Hat

We deliver hardened solutions that make it easier for enterprises to work across platforms and environments, from the core datacenter to the network edge.

Theme

© 2025 Red Hat, Inc.