POST
Create Instance

Authorizations

Authorization
string
header
required

The access token from a signed-in console session, sent as Authorization: Bearer <token>. It must be issued for the Simnet API audience — an identity token, or a token for another application, is refused with 401.

There are no API keys, client secrets or service accounts yet, so this is a personal, short-lived credential carrying your full account access. Programmatic credentials with role-based access are on the roadmap. See Authentication.

Headers

X-Region-Context
string<uuid>

The region to run this request against, as a region UUID. Omit it to use your default region — your primary region if you have one, otherwise the first active one. See Regions.

Body

application/json

Everything needed to deploy an instance. The three required fields fix what it runs on, what it boots from, and where it lives; the rest have platform defaults.

Deploying from an ISO rather than a template changes which fields matter: set imageType to iso, put the ISO's identifier in isoId, and supply diskOfferingId for the root disk, because an ISO carries no disk of its own.

serviceOfferingId
string
required

The compute offering — vCPU and memory. From GET /api/v1/offerings/compute.

templateId
string
required

The image to boot from. From GET /api/v1/templates. When imageType is iso this is ignored in favour of isoId.

zoneId
string
required

The availability zone to deploy into. From GET /api/v1/zones. Must be a zone in the region the request is routed to.

name
string

The internal host name. Must be unique, and constrained to host-name characters. Omit it and the platform generates one.

displayName
string

The label shown in listings. Free-form, and does not need to be unique.

networkIds
string

Comma-separated network identifiers to attach, in order — the first becomes the default interface. Omit it to use the zone's default network.

startVm
boolean
default:true

Whether to power the instance on after it is created. Defaults to true.

keyPair
string

Name of a single SSH key pair to inject. Prefer sshKeyNames.

userData
string

Cloud-init payload, base64-encoded. Combined with whatever allowPasswordSsh and disableRootCompletely generate.

hypervisor
string

Overrides the hypervisor chosen for the deployment. Rarely needed.

allowPasswordSsh
boolean

Permit password authentication over SSH, by setting ssh_pwauth in the generated cloud-init. Off by default, and best left off when you are injecting a key.

disableRootCompletely
boolean

Have cloud-init disable root SSH login entirely, by setting disable_root.

isoId
string

The ISO to boot from. Required when imageType is iso.

diskOfferingId
string

The root disk offering. Required when imageType is iso, since an ISO supplies no disk.

rootDiskSize
integer<int64>

Root disk size in GB, overriding the template's own. Cannot be smaller than the template requires.

imageType
string
default:template

What the instance boots from: template (default), iso, volume or snapshot.

sshKeyNames
string[]

SSH key pair names to inject. Only the first is used.

dataDiskOfferingList
object[]

Additional data disks to create and attach at deploy time.

ipToNetworkList
object[]

Fixes a specific private address on a given network instead of letting the platform assign one. Each address must be inside that network's range and not already in use.

Response

Accepted.

id
string

Core Instance Information

name
string
displayName
string
state
string
instanceType
string

Resource Information maps to serviceofferingname

cpuNumber
integer<int32>
cpuSpeed
integer<int32>
memoryKbs
integer<int64>
hypervisor
string
ipAddress
string

Network Information

networkKbsRead
integer<int64>
networkKbsWrite
integer<int64>
receivedBytes
integer<int64>
sentBytes
integer<int64>
diskKbsRead
integer<int64>

Storage Information

diskKbsWrite
integer<int64>
diskIoRead
integer<int64>
diskIoWrite
integer<int64>
osDisplayName
string

Instance Details

haEnabled
boolean
deleteProtection
boolean
created
string<date-time>
lastUpdated
string<date-time>
account
string

Additional Information

domain
string
tags
object
details
object
cpuUtilization
string

Add to InstanceDTO class

memoryUtilization
string
templateId
string

Template Information

templateName
string
templateType
string
templateFormat
string
templateDisplayText
string
serviceOfferingId
string

Service Offering Information

serviceOfferingName
string
diskOfferingId
string
diskOfferingName
string
zoneId
string

Zone and Host Information

zoneName
string
hostId
string
hostname
string
hostControlState
string
memory
integer<int32>

Memory Information (both raw and formatted) in MB

cpuTotal
string

formatted string like "0.5 Ghz"

memoryTotal
string

formatted string like "0.50 GiB"

instanceName
string

Instance Name

passwordEnabled
boolean

Additional flags

displayVm
boolean
isDynamicallyScalable
boolean
userId
string

User Information

username
string
domainId
string
guestOsId
string

OS Information

osTypeId
string
rootDeviceId
integer<int32>

Root Device Information

rootDeviceType
string
bootMode
string

Boot Information

bootType
string
poolType
string
arch
string
hasAnnotations
boolean

Additional flags

backupOfferingId
string

Backup Offering

backupOfferingName
string