---
title: "Create a Compute instance"
method: POST
path: "/instance"
tags: ["instance"]
---

# Create a Compute instance

`POST /instance`

## Request

- Base URL: `https://api-ch-gva-2.exoscale.com/v2`
- URL: `https://api-ch-gva-2.exoscale.com/v2/instance`
- Auth: none declared
- TypeScript: <https://skmtc.dev/exoscale/apis/exoscale-api/docs/instance/post.ts> (a function with typed inputs; its response is checked against the schema)

## Request body

- object
  - `application-consistent-snapshot-enabled` boolean: Enable application-consistent snapshot for the instance
  - `anti-affinity-groups` AntiAffinityGroupRef[]: Instance Anti-affinity Groups
    - `id` string, uuid: Anti-affinity group ID
  - `public-ip-assignment` 'inet4' | 'dual' | 'none'
  - `labels` Labels
  - `auto-start` boolean: Start Instance on creation (default: true)
  - `security-groups` SecurityGroupRef[]: Instance Security Groups
    - `id` string, uuid: Security group ID
  - `name` string: Instance name
  - `instance-type` InstanceTypeRef, required: Instance type reference
    - `id` string, uuid: Instance type ID
  - `template` TemplateRef, required: Template reference
    - `id` string, uuid: Template ID
  - `secureboot-enabled` boolean: Enable secure boot
  - `ssh-key` SshKeyRef: SSH key reference
    - `name` string: SSH key name
  - `user-data` string: Instance Cloud-init user-data (base64 encoded)
  - `tpm-enabled` boolean: Enable Trusted Platform Module (TPM)
  - `deploy-target` DeployTargetRef: Deploy target reference
    - `id` string, uuid: Deploy target ID
  - `ipv6-enabled` boolean: Enable IPv6. DEPRECATED: use `public-ip-assignments`.
  - `disk-size` integer, required: Instance disk size in GiB
  - `ssh-keys` SshKeyRef[]: Instance SSH Keys
    - `name` string: SSH key name

## Response `200`

200

- Operation: Operation
  - `id` string, uuid: Operation ID
  - `reason` 'incorrect' | 'unknown' | 'unavailable' | 'forbidden' | 'busy' | 'fault' | 'partial' | 'not-found' | 'interrupted' | 'unsupported' | 'conflict': Operation failure reason
  - `reference` object: Related resource reference
    - `id` string, uuid: Reference ID
    - `link` string: Link to the referenced resource
    - `command` string: Command name
  - `message` string: Operation message
  - `state` 'failure' | 'pending' | 'success' | 'timeout': Operation status

## Changes

- **2026-03-16** `e05707a7b346`: 19 warning, 7 info
  - removed the request property `anti-affinity-groups/items/description`
  - removed the request property `anti-affinity-groups/items/name`
  - removed the request property `deploy-target/description`
  - removed the request property `deploy-target/name`
  - …22 more
- **2025-11-14** `352cae63dff6`: 2 info
  - added the new `titan48c` enum value to the request property `anti-affinity-groups/items/instances/items/instance-type/size`
  - added the new `titan48c` enum value to the request property `instance-type/size`
- **2025-08-10** `814bf1ccd925`: 4 info
  - added the new `hr-zag-1` enum value to the request property `anti-affinity-groups/items/instances/items/instance-type/zones/items/`
  - added the new `hr-zag-1` enum value to the request property `anti-affinity-groups/items/instances/items/template/zones/items/`
  - added the new `hr-zag-1` enum value to the request property `instance-type/zones/items/`
  - added the new `hr-zag-1` enum value to the request property `template/zones/items/`
- **2025-05-22** `37a05010e8b4`: 6 info
  - added the new optional request property `anti-affinity-groups/items/instances/items/secureboot-enabled`
  - added the new optional request property `anti-affinity-groups/items/instances/items/tpm-enabled`
  - added the new optional request property `secureboot-enabled`
  - added the new optional request property `tpm-enabled`
  - …2 more
- …earlier changes not shown

[Operation history](https://skmtc.dev/exoscale/apis/exoscale-api/changes/instance/post.md)

---

[API](https://skmtc.dev/exoscale/apis/exoscale-api.md) - [All operations](https://skmtc.dev/exoscale/apis/exoscale-api/llms.txt) - [OpenAPI document](https://skmtc.dev/exoscale/apis/exoscale-api/revisions/63da6f74c845?raw)
