---
title: "Create VMs from a template"
method: POST
path: "/vm/templates/{templateId}/vms"
tags: ["VM"]
---

# Create VMs from a template

`POST /vm/templates/{templateId}/vms`

Validate and queue creation of one or more virtual machines from a VM template

## Path parameters

- `templateId` integer, required

## Request body

- GithubComAlchemillahqSylveInternalInterfacesServicesLibvirtCreateFromTemplateRequest
  - `cloudInitPrefix` string
  - `count` integer
  - `mode` string
  - `name` string
  - `namePrefix` string
  - `rewriteCloudInitIdentity` boolean
  - `rid` integer
  - `startRid` integer
  - `storagePools` GithubComAlchemillahqSylveInternalInterfacesServicesLibvirtVMTemplateStoragePoolAssignment[]
    - `pool` string
    - `sourceStorageId` integer

## Response `202`

Accepted

- GithubComAlchemillahqSylveInternalAPIResponseInternalHandlersVmVMTemplateInstantiationTaskResponse
  - `data` InternalHandlersVmVMTemplateInstantiationTaskResponse
    - `action` string
    - `outcome` string
    - `taskId` integer
    - `templateId` integer
  - `error` string
  - `message` string
  - `status` string

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `409` — Conflict
- `500` — Internal Server Error
- `503` — Service Unavailable

## Changes

- **2026-08-12** `9a5026bf9057` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/alchemillahq/apis/sylve-api/changes/vm/templates/:templateId/vms/post.md)

---

[API](https://skmtc.dev/alchemillahq/apis/sylve-api.md) · [All operations](https://skmtc.dev/alchemillahq/apis/sylve-api/llms.txt) · [OpenAPI document](https://skmtc.dev/alchemillahq/apis/sylve-api/revisions/6d4b8bb77d9a?raw)
