application/json

Body Required

  • Anti-affinity Group

    Hide anti-affinity-groups attributes Show anti-affinity-groups attributes object
    • name string

      Anti-affinity Group name

      Minimum length is 1, maximum length is 255.

    • Anti-affinity Group description

      Maximum length is 255.

  • Instance public IP assignment

    Values are inet4, dual, or none.

  • labels object

    Private Network labels

    Hide labels attribute Show labels attribute
  • auto-start boolean

    Start Instance on creation (default: true)

  • security-groups array[object]

    Security Group

    Hide security-groups attributes Show security-groups attributes object
    • name string

      Security Group name

      Minimum length is 1, maximum length is 255.

    • Security Group description

      Maximum length is 255.

    • external-sources array[string]

      Security Group external sources

    • rules array[object]

      Security Group rule

      Hide rules attributes Show rules attributes object
      • Security Group rule description

        Maximum length is 255.

      • start-port integer(int64)

        Start port of the range

        Minimum value is 1, maximum value is 65535.

      • protocol string

        Network protocol

        Values are tcp, esp, icmp, udp, gre, ah, ipip, or icmpv6.

      • icmp object

        ICMP details

        Hide icmp attributes Show icmp attributes
        • code integer(int64)

          Minimum value is -1, maximum value is 254.

        • type integer(int64)

          Minimum value is -1, maximum value is 254.

      • end-port integer(int64)

        End port of the range

        Minimum value is 1, maximum value is 65535.

      • Security Group allowed

        Hide security-group attributes Show security-group attributes
        • name string

          Security Group name

          Minimum length is 1, maximum length is 255.

        • Whether this points to a public security group. This is only valid when in the context of
          a rule addition which uses a public security group as a source or destination.

          Values are private or public.

      • network string

        CIDR-formatted network allowed

      • Network flow direction to match

        Values are ingress or egress.

  • name string

    Instance name

    Minimum length is 1, maximum length is 255.

  • instance-type object Required

    Instance Type

  • template object Required

    Instance Template

    Hide template attributes Show template attributes
    • Template description

      Maximum length is 255.

    • Enable SSH key-based login

    • name string

      Template name

      Minimum length is 1, maximum length is 255.

    • Template default user

      Minimum length is 1, maximum length is 255.

    • size integer(int64)

      Template size

      Minimum value is 0.

    • Enable password-based login

    • checksum string

      Template MD5 checksum

    • Boot mode (default: legacy)

      Values are legacy or uefi.

    • zones array[string]

      Zones availability

      Values are ch-dk-2, de-muc-1, ch-gva-2, at-vie-1, de-fra-1, bg-sof-1, or at-vie-2.

    • url string

      Template source URL

  • ssh-key object

    Instance SSH Key

    Hide ssh-key attribute Show ssh-key attribute
    • name string

      SSH key name

      Minimum length is 1, maximum length is 255.

  • Instance Cloud-init user-data

    Minimum length is 1, maximum length is 32768.

  • Instance Deploy Target

    Hide deploy-target attributes Show deploy-target attributes
    • id string(uuid) Required

      Deploy Target ID

    • name string

      Deploy Target name

      Minimum length is 1, maximum length is 255.

    • type string

      Deploy Target type

      Values are edge or dedicated.

    • Deploy Target description

      Maximum length is 255.

  • Enable IPv6. DEPRECATED: use public-ip-assignments.

  • disk-size integer(int64) Required

    Instance disk size in GB

    Minimum value is 10, maximum value is 50000.

  • ssh-keys array[object]

    Instance SSH Key

    Hide ssh-keys attribute Show ssh-keys attribute object
    • name string

      SSH key name

      Minimum length is 1, maximum length is 255.

Responses

  • 200 application/json

    200

    Hide response attributes Show response attributes object
    • id string(uuid)

      Operation ID

    • reason string

      Operation failure reason

      Values are incorrect, unknown, unavailable, forbidden, busy, fault, partial, not-found, interrupted, unsupported, or conflict.

    • Related resource reference

      Hide reference attributes Show reference attributes
      • id string(uuid)

        Reference ID

      • command string

        Command name

    • message string

      Operation message

    • state string

      Operation status

      Values are failure, pending, success, or timeout.

POST /instance
curl \
 -X POST https://api-ch-gva-2.exoscale.com/v2/instance \
 -H "Content-Type: application/json" \
 -d '{"anti-affinity-groups":[{"name":"string","description":"string"}],"public-ip-assignment":"inet4","labels":{},"auto-start":true,"security-groups":[{"name":"string","description":"string","external-sources":["string"],"rules":[{"description":"string","start-port":42,"protocol":"tcp","icmp":{"code":42,"type":42},"end-port":42,"security-group":{"name":"string","visibility":"private"},"network":"string","flow-direction":"ingress"}]}],"name":"string","instance-type":{},"template":{"description":"string","ssh-key-enabled":true,"name":"string","default-user":"string","size":42,"password-enabled":true,"checksum":"string","boot-mode":"legacy","zones":["ch-dk-2"],"url":"string"},"ssh-key":{"name":"string"},"user-data":"string","deploy-target":{"id":"string","name":"string","type":"edge","description":"string"},"ipv6-enabled":true,"disk-size":42,"ssh-keys":[{"name":"string"}]}'
Request example
{
  "anti-affinity-groups": [
    {
      "name": "string",
      "description": "string"
    }
  ],
  "public-ip-assignment": "inet4",
  "labels": {},
  "auto-start": true,
  "security-groups": [
    {
      "name": "string",
      "description": "string",
      "external-sources": [
        "string"
      ],
      "rules": [
        {
          "description": "string",
          "start-port": 42,
          "protocol": "tcp",
          "icmp": {
            "code": 42,
            "type": 42
          },
          "end-port": 42,
          "security-group": {
            "name": "string",
            "visibility": "private"
          },
          "network": "string",
          "flow-direction": "ingress"
        }
      ]
    }
  ],
  "name": "string",
  "instance-type": {},
  "template": {
    "description": "string",
    "ssh-key-enabled": true,
    "name": "string",
    "default-user": "string",
    "size": 42,
    "password-enabled": true,
    "checksum": "string",
    "boot-mode": "legacy",
    "zones": [
      "ch-dk-2"
    ],
    "url": "string"
  },
  "ssh-key": {
    "name": "string"
  },
  "user-data": "string",
  "deploy-target": {
    "id": "string",
    "name": "string",
    "type": "edge",
    "description": "string"
  },
  "ipv6-enabled": true,
  "disk-size": 42,
  "ssh-keys": [
    {
      "name": "string"
    }
  ]
}
Response examples (200)
{
  "id": "string",
  "reason": "incorrect",
  "reference": {
    "id": "string",
    "link": "string",
    "command": "string"
  },
  "message": "string",
  "state": "failure"
}