---
title: "Get a single VM by id"
method: GET
path: "/v1/vms/{id}"
tags: ["VMs"]
---

# Get a single VM by id

`GET /v1/vms/{id}`

## Path parameters

- `id` string, uuid, required

## Response `200`

VM details

- VMInstance
  - `id` string, uuid, required
  - `name` string, required
  - `orgId` string, required
  - `machineName` string, required
  - `sourceName` string
  - `firewall` FirewallPolicy — Public IPv6 ingress firewall policy for a VM or snapshot.
    - `mode` 'open' | 'restricted', required
    - `ingress` FirewallRule[] — Allow rules evaluated only when `mode` is `restricted`. If empty, all public IPv6 ports are closed except essential ICMPv6 control traffic.
      - `protocol` 'tcp' | 'udp', required
      - `portStart` integer, required
      - `portEnd` integer
      - `sourceCidrs` string[] — IPv6 CIDRs allowed by this rule. If omitted, the backend treats the rule as open to `::/0`.
      - `description` string
  - `cpu` integer, required
  - `memoryMiB` integer, required
  - `diskGiB` integer, required
  - `publicIpv6` string
  - `status` 'provisioning' | 'running' | 'stopped' | 'deleting' | 'error', required
  - `createdAt` string, date-time, required
  - `deletedAt` string, date-time, nullable

## Other responses

- `400` — Error response
- `401` — Error response
- `404` — Error response

---

[API](https://skmtc.dev/fastvm-org/apis/fastvm-api.md) · [All operations](https://skmtc.dev/fastvm-org/apis/fastvm-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/fastvm-org/fastvm-api/revisions/cbe0fe15ce15/schema)
