Skip to content

List this organization's instances

  • Method: GET
  • Path: /v1/orgs/{org}/compute/vms
  • Operation ID: listVms
  • Tag: Compute

Send Authorization: Bearer <credential>. The credential is either an API key (vsk_…) created for an organization, or an OIDC access token obtained by signing in to VirtScale.

Name Type Required Description
org string (uuid) Yes The organization’s id.
Name Type Required Description
region string, nullable No Restrict to one region.
state string, nullable No Restrict to one state.
limit integer No
label array of string, nullable No Repeatable key:value. A row is listed only when its labels carry every pair.
Field Type Required Enum Description
items array of VmOut Yes
items.allowed_actions array of string Yes What may be asked of this instance where it is, from the vocabulary start, stop, reboot, console, resize, rebuild, rescue, unrescue, delete, firewall, public_ip, protection, in that order. Any action not listed is refused with 409 vm_action_not_allowed. An instance in a region whose disks are single copies on one host allows start, stop, reboot and console only, and start and console only while it is protected; any other instance allows every action, less delete while it is protected. This is policy, not state: a listed action can still be refused for the state the instance is in.
items.created_at string (date-time) Yes
items.desired_state string Yes
items.disk_gb integer Yes
items.error_class string, nullable Yes
items.error_detail string, nullable Yes A fixed phrase and a non-identifying context label. Never a vendor exception, endpoint or response body.
items.fqdn string, nullable Yes Null for a customer account: the zone is VirtScale’s own, and publishing a customer hostname in it would be a namespace nobody asked to share.
items.id string (uuid) Yes
items.image ImageRef Yes
items.image.glance_id string Yes
items.image.name string Yes
items.memory_mb integer Yes
items.name string Yes
items.network_profile_id string Yes
items.observed_addresses object, nullable Yes
items.observed_at string (date-time), nullable Yes
items.observed_status string, nullable Yes
items.org_id string (uuid) Yes
items.protected boolean Yes While true, deleting the instance is refused with 409 vm_protected. An owner of the organization switches it with PUT /v1/orgs/{org}/compute/vms/{vm_id}/protection.
items.region_id string Yes
items.ssh_key_names array of string Yes Names of the SSH keys attached to the instance. No key material.
items.state string Yes
items.storage_pool_id string Yes
items.updated_at string (date-time) Yes
items.user_data_present boolean Yes
items.vcpus integer Yes
items.workload_type string Yes
next_cursor string, nullable No

Every error response is application/problem+json (schema Problem).

Status Meaning
400 The request is malformed or failed validation.
401 The credential is missing or invalid.
404 The resource does not exist.
default Any other status is possible; the code field identifies the error.
curl "https://api.virtscale.nl/v1/orgs/$ORG_ID/compute/vms" \
  -H "Authorization: Bearer $VIRTSCALE_API_KEY"