---
title: "Returns details for a single VM in the project."
method: GET
path: "/projects/{project_id}/compute/vms/instances/{vm_id}"
tags: ["VMs"]
---

# Returns details for a single VM in the project.

`GET /projects/{project_id}/compute/vms/instances/{vm_id}`

## Path parameters

- `project_id` string, required
- `vm_id` string, required

## Response `200`

- InstanceV1 — InstanceV1 contains identifying information about a vm instance for vms.instances endpoints.
  - `billing_type` string — Billing type of the VM: On-demand, Spot, or PoC. values: On-demand, Spot, PoC
  - `commitment_end` string
  - `commitment_period` integer — commitment is no longer supported
  - `created_at` string, required — Creation timestamp of the VM, in RFC3339 format.
  - `disks` AttachedDiskV1[], required — Disks attached to the VM.
    - `attachment_type` string, required — How the disk is attached to the VM: os (boot disk) or data.
    - `block_size` integer, required — Block size of the disk, in bytes.
    - `created_at` string, required — Creation timestamp of the disk, in RFC3339 format.
    - `id` string, required — ID of the disk.
    - `location` string, required — Location of the disk.
    - `mode` string, required — Access mode the disk is attached with: read-write or read-only.
    - `name` string, required — Name of the disk.
    - `serial_number` string, required — Serial number of the disk.
    - `size` string, required — Size of the disk.
    - `type` string, required — Storage type of the disk.
    - `updated_at` string, required — Last update timestamp of the disk, in RFC3339 format.
  - `host_channel_adapters` HostChannelAdapter[], required — Host channel adapters attached to the VM.
    - `guid` string, required — Globally unique identifier (GUID) of the host channel adapter.
    - `ib_network_id` string, required
    - `ib_partition_id` string, required
    - `transport_network_id` string, required — ID of the transport network the host channel adapter is attached to.
    - `transport_partition_id` string, required — ID of the transport partition the host channel adapter is attached to.
    - `type` string, required — Transport type of the host channel adapter.
  - `id` string, required — ID of the VM.
  - `instance_group_id` string — ID of the instance group the VM belongs to, if any.
  - `instance_template_id` string — ID of the instance template the VM was created from, if any.
  - `location` string, required — Location the VM runs in.
  - `maintenance_policy` 'manual' | 'stop-vm' | 'unspecified', required — Host maintenance policy applied to the VM: manual, stop-vm, or unspecified.
  - `name` string, required — Name of the VM.
  - `network_interfaces` NetworkInterface[], required — Network interfaces attached to the VM.
    - `external_dns_name` string, required — External DNS name of the network interface.
    - `id` string, required — ID of the network interface.
    - `interface_type` string, required — Type of the network interface.
    - `ips` IPAddresses[], required — IP addresses assigned to the network interface.
      - `private_ipv4` PrivateIPv4Address, required
        - `address` string, required — Private IPv4 address.
      - `public_ipv4` PublicIPv4Address, required
        - `address` string, required — Public IPv4 address.
        - `id` string, required — ID of the public IPv4 address.
        - `type` string, required — Allocation type of the public IPv4 address (for example, dynamic).
    - `mac_address` string, required — MAC address of the network interface.
    - `name` string, required — Name of the network interface.
    - `network` string, required — ID of the VPC network the interface is attached to.
    - `subnet` string, required — ID of the VPC subnet the interface is attached to.
  - `nvlink_domain_id` string — ID of the NVLink domain the VM belongs to, if any.
  - `pod_id` string — ID of the pod the VM belongs to, if any.
  - `project_id` string, required — ID of the project that owns the VM.
  - `reservation_id` string — ID of the reservation the VM belongs to, if any.
  - `state` string, required — Current lifecycle state of the VM.
  - `type` string, required — Product name of the VM type.
  - `updated_at` string, required — Last update timestamp of the VM, in RFC3339 format.
  - `virtualization_features` VirtualizationFeatures
    - `nested_virtualization` boolean — Whether nested virtualization is enabled, allowing a VM to run inside this VM.

## Other responses

- `400` — Error Bad Request
- `401` — Error Authentication Failed
- `403` — Error Permissions
- `500` — Error Internal Server

---

[API](https://skmtc.dev/crusoecloud/apis/crusoe-cloud-api-gateway.md) · [All operations](https://skmtc.dev/crusoecloud/apis/crusoe-cloud-api-gateway/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/crusoecloud/crusoe-cloud-api-gateway/revisions/a3fd2dedc72b/schema)
